| | --- |
| | license: mit |
| | library_name: onnxruntime |
| | tags: |
| | - onnx |
| | - onnxruntime |
| | - face-recognition |
| | - face-embedding |
| | - computer-vision |
| | --- |
| | |
| | # VirtuoTuring Face Embedder |
| |
|
| | ONNX model for generating facial embeddings and comparing two faces. |
| |
|
| | ## What it does |
| | This model takes an aligned face as input and returns a 512-dimensional facial embedding. |
| |
|
| | ## Expected input |
| | - RGB image |
| | - cropped/aligned face |
| | - size: 112x112 |
| | - type: float32 |
| | - normalization: [-1, 1] |
| |
|
| | ## Output |
| | - 512-dimensional float32 embedding |
| |
|
| | ## Comparison |
| | Compare embeddings using cosine similarity. |
| |
|
| | Suggested initial threshold: |
| | - 0.93 |
| | - |
| | ## Training data |
| |
|
| | This model was trained on a curated dataset of 23,660 face images. |
| |
|
| | The dataset contains cropped and aligned face images and was assembled to include variation in apparent age, sex presentation, accessories, and appearance, including examples with hats and glasses. |
| |
|
| | The training set was built from sources that were identified by the curator as providing permissive reuse terms and/or explicit permission for access and reuse. Where images were discovered through search engines, they were not treated as licensed merely because they appeared in search results; inclusion was intended only where the original source indicated free-use terms, permissive licensing, or other documented authorization. |
| |
|
| | ## Data provenance and legal notice |
| |
|
| | Face images may constitute personal data and, when used for face recognition or identity-related processing, may fall within the scope of biometric data under applicable data protection law. Accordingly, this model card should not be read as a blanket statement that any downstream use is lawful in every jurisdiction. |
| |
|
| | The publisher represents that the dataset curation process sought to limit training data to images believed to be available under free-use terms and/or explicit authorization. However, users remain responsible for conducting their own legal review regarding copyright, privacy, data protection, biometric-data compliance, and any sector-specific rules that may apply in their jurisdiction. |
| |
|
| | ## Preprocessing |
| |
|
| | All training images were face-cropped and aligned before training. The model expects: |
| | - RGB face image |
| | - cropped/aligned face |
| | - size: 112x112 |
| | - dtype: float32 |
| | - normalization: [-1, 1] |
| |
|
| | ## Limitations |
| |
|
| | This model does not perform face detection on its own and assumes that the face is already cropped and aligned. It is not a certified biometric identification system and may perform poorly under extreme pose, occlusion, poor lighting, or partial-face conditions. |
| | ## Limitations |
| | - it does not perform face detection on its own |
| | - it assumes the face is already cropped/aligned |
| | - it is not a certified biometric system |
| | - it may fail with extreme pose, occlusions, poor lighting, or partial faces |
| |
|
| | ## Files |
| | - `virtuoturing.onnx` |
| | - external weights file `.data` |
| |
|
| | ## Usage example |
| | ```python |
| | import onnxruntime as ort |
| | sess = ort.InferenceSession("virtuoturing.onnx") |
| | print(sess.get_inputs()[0].name, sess.get_inputs()[0].shape) |
| | print(sess.get_outputs()[0].name, sess.get_outputs()[0].shape) |