Skip to content

Latest commit

 

History

History
228 lines (179 loc) · 9.05 KB

README.md

File metadata and controls

228 lines (179 loc) · 9.05 KB

SafeVision logo

SafeVision Model Registry

Files, provenance, checksums, capabilities, and license boundaries.

The repository's software license does not automatically replace or expand the license of a model weight.

Format Licenses Runtime

Project home · Licensing guide · Applications · Tests


Important

Do not tell a customer that every SafeVision model is Apache-2.0. The model files have different origins and licenses. Two YOLO exports explicitly contain Ultralytics AGPL-3.0 metadata, one old model has no established license, and the new age/gender model is published as Apache-2.0 by its Hugging Face repository.

🧾 Model license matrix

File Function Provenance evidence License status Commercial/proprietary use
best.onnx NSFW/body-region detection Embedded Ultralytics metadata, version 8.0.173; repository first release AGPL-3.0 declared in the ONNX file; original dataset/weight source is not otherwise documented here Follow AGPL-3.0 obligations or obtain appropriate rights, including an Ultralytics Enterprise license where required
best_opset15.onnx Generated compatibility conversion of best.onnx Same graph labels and Ultralytics metadata; changed opset Same upstream status as best.onnx; conversion does not create a new license Same as best.onnx; ignored by Git
safety_objects.onnx Smoking, alcohol, and drug-object detection Trained in the SafeVision traine workspace from pretrained yolov8s.pt; exported by Ultralytics 8.3.168 AGPL-3.0 declared in the ONNX file; dataset rights remain separate AGPL-compliant deployment or suitable Ultralytics commercial terms, plus verified dataset rights
safety_objects.labels.json Class names and preprocessing metadata Generated by the SafeVision training workflow Covered by the SafeVision-owned software/documentation terms, subject to any incorporated third-party notices Follow the project license and preserve notices
onnx-communityage-gender-prediction-ONNX.onnx Estimated age and model-reported binary gender Downloaded from onnx-community/age-gender-prediction-ONNX; SHA-256 matches the published file Apache-2.0 on the Hugging Face model card Permitted by Apache-2.0 with required notices/attribution; validate dataset, privacy, and use-case obligations separately
best_gender.onnx (legacy, removed) Older age/gender output No embedded metadata; acquired online; origin/license not established Unknown — no permission should be assumed Do not redistribute or approve production use until the rightsholder and license are verified

Primary upstream references:

Machine-readable audit data is available in MODEL_MANIFEST.json.

Caution

SafeVision is not Ultralytics and cannot grant an Ultralytics Enterprise license. SafeVision also cannot grant rights it does not own in an unknown model, training dataset, image, or third-party dependency.

📦 Required and optional files

Check selection Required files Behavior when absent
nude / nsfw best.onnx NSFW-enabled run fails or attempts the supported download path
age Age/gender ONNX file Clear missing-model error
gender Age/gender ONNX file Clear missing-model error
objects safety_objects.onnx + safety_objects.labels.json Object-enabled run fails clearly
nude,age,gender best.onnx + age/gender ONNX Default three-check workflow
all Every active model and labels file NSFW, demographics, and safety objects
none No model Rendering-only operations such as forced full cover

⬇️ Install the age/gender model

The large age/gender file is intentionally ignored by Git. Download the exact published ONNX file from the repository root:

Invoke-WebRequest `
  -Uri "https://huggingface.co/onnx-community/age-gender-prediction-ONNX/resolve/main/onnx/model.onnx" `
  -OutFile ".\Models\onnx-communityage-gender-prediction-ONNX.onnx"

Verify it:

Get-FileHash `
  ".\Models\onnx-communityage-gender-prediction-ONNX.onnx" `
  -Algorithm SHA256

Expected SHA-256 for the currently documented file:

0c35c868ea8ffba6d5fe727c1a6b82d9da600e690342d58ca268270560e28304

If upstream publishes a new revision, verify its model card, license, behavior, and checksum before replacing this documented value.

🔐 Local checksum registry

These checksums describe the files audited in this checkout. A different hash means the binary is a different build and its metadata/license must be reviewed again.

File Bytes SHA-256
best.onnx 12,125,773 9832f15515bdb06bcb5a77beb60bc8ea54439bd7ecbaac46dac3b760b3dd13cc
best_opset15.onnx 12,141,559 b438331250b00607a261dee898e5c779549f1c0953d0c1c66ad8041b9612d4df
safety_objects.onnx 12,276,859 b0774d7ef1fed50d7e7228942eb16f3ad357cf899e0efc07439a69bcc303f773
safety_objects.labels.json 2,209 a175d9e2f813807f6ea95669d41988dc2222f7a2d0322e2db60ab80f5d6a1918
Age/gender ONNX 344,969,849 0c35c868ea8ffba6d5fe727c1a6b82d9da600e690342d58ca268270560e28304

🔍 Embedded metadata found during the audit

best.onnx
producer_name: pytorch
producer_version: 2.0.1
graph_name: torch_jit
opset: 17
author: Ultralytics
version: 8.0.173
license: AGPL-3.0 https://ultralytics.com/license
task: detect
input: images
output: output0
safety_objects.onnx
producer_name: pytorch
producer_version: 2.7.1
graph_name: main_graph
opset: 15
author: Ultralytics
version: 8.3.168
license: AGPL-3.0 License (https://ultralytics.com/license)
task: detect
input: images
output: output0

The training workspace confirms YOLO(args.base_model) with pretrained yolov8s.pt, followed by Ultralytics ONNX export. SafeVision authored the training workflow and performed the fine-tuning, but that does not erase the upstream model/framework or dataset terms.

Age/gender ONNX
producer_name: pytorch
producer_version: 2.9.0+cu126
graph_name: main_graph
opset: 18
input: pixel_values
output: logits
embedded metadata: none
repository model card: Apache-2.0

Because the ONNX binary does not embed a license field, keep the model-card URL and Apache-2.0 notice with deployments.

Legacy best_gender.onnx
producer_name: pytorch
producer_version: 2.7.1
graph_name: main_graph
opset: 11
input: input
outputs: gender, age
embedded metadata: none

No author, source, dataset, or license was found in the file. The model is no longer used by SafeVision and should stay out of releases.

🧠 Runtime notes

  • The age/gender model uses ONNX opset 18 and requires ONNX Runtime 1.18 or newer in this project.
  • SafeVision creates sessions lazily and reuses them.
  • Multiple faces in one frame are batched.
  • NSFW face detections are reused for demographics where possible.
  • CPUExecutionProvider is the portable default; accelerators need their own runtime and drivers.
  • Model outputs are estimates and must not be treated as legal-age proof, identity, or a legal conclusion.
python safeVisionCLI.py status
python safeVisionCLI.py providers
python main.py --help

🚢 Release checklist for model files

Before publishing or attaching any model to a GitHub Release:

  1. record its exact origin URL, author, version, and acquisition date;
  2. preserve the original license and notice files;
  3. inspect ONNX metadata and compute SHA-256;
  4. record the base weights/framework and all dataset licenses;
  5. confirm redistribution and commercial-production rights;
  6. do not label an unknown model as SafeVision-owned;
  7. update this registry and docs/LICENSING.md;
  8. validate accuracy, bias, privacy, and safety limitations independently.

⬆️ Back to top