Downloads · 30 days
0
Cr7z676/sam2.1-hiera-tiny-onnx
sam2.1-hiera-tiny-onnx is a image segmentation model from Cr7z676. Use it for the image segmentation task on the model card, and read the license before you ship it in a product. It is set up for onnxruntime. The card lists the license as apache-2.0.
Encoder und Decoder von facebook/sam2.1-hiera-tiny (Meta, Apache-2.0) für onnxruntime-web. Exportiert mit einem veröffentlichten Skript und gegen die PyTorch-Referenz nachgemessen.
Downloads · 30 days
0
Access
Public
Updated Aug 5, 2026
Repo size
286 MB
Likes
0
Public
Click a slice to open those files.
.ort269 MB · 94%
From the Hugging Face model README
Encoder und Decoder von facebook/sam2.1-hiera-tiny
(Meta, Apache-2.0) für onnxruntime-web. Exportiert mit einem
veröffentlichten Skript und gegen die PyTorch-Referenz nachgemessen.
| Datei | Format | Größe |
|---|---|---|
sam2.1-tiny-encoder.ort | ORT | 134,7 MB |
sam2.1-tiny-decoder.onnx | ONNX | 16,6 MB |
Meta veröffentlicht SAM 2.1 nur als .pt. Die im Netz auffindbaren
ONNX-Exporte sind Re-Uploads ohne dokumentiertes Verfahren. Eine Prüfsumme
sichert, dass sich eine Datei nach dem ersten Abruf nicht mehr ändert — über
ihren Ursprung sagt sie nichts. Und dieses Modell läuft im Browser von
Endnutzern.
Das war zunächst nur ein Vorbehalt. Die Messung hat daraus einen Befund
gemacht. Verglichen wurde die Encoder-Ausgabe image_embed gegen die
PyTorch-Referenz, gleicher Reiz, feste Saat:
| mittlere Abweichung | größte | |
|---|---|---|
| dieser Export | 0.000001 | 0.000014 |
| ein kursierender Fremd-Export | 0.005858 | 0.175503 |
Die Fremddatei trifft die Referenz nicht — und auch keine erklärbare Variante
davon (ohne no_mem_embed liegt sie mit 0.013 noch weiter daneben). Sie liefert
plausible Masken und besteht deshalb oberflächliche Tests, rechnet aber
nachweislich etwas anderes als SAM 2.1.
Der Vergleich ist reproduzierbar: compare_reference.py im Export-Werkzeug.
onnxruntime-web an
der Shape-Inferenz (Inferred=4 Declared=5), an mehreren unabhängigen
Exporten verifiziert. Das ORT-Format trägt die aufgelösten Shapes in sich.high_res_feats_0/1, mask_input und has_mask_input;
has_mask_input muss ein Tensor sein, kein Python-Zweig, sonst backt der
Export einen der beiden Fälle fest.Encoder — image [1,3,1024,1024], ImageNet-normiert →
image_embed [1,256,64,64], high_res_feats_0 [1,32,256,256],
high_res_feats_1 [1,64,128,128]
Decoder — die drei oben, dazu point_coords [1,N,2] (im
1024er-Pixelraum), point_labels [1,N], mask_input [1,1,256,256],
has_mask_input [1] → masks [1,3,256,256], iou_predictions [1,3]
N ist dynamisch: mehrere Klicks verfeinern dieselbe Maske in einem Lauf.
Apple Silicon, onnxruntime-web auf wasm mit 4 Threads: Encoder 2747 ms,
Klick-Decode kalt 74 ms, warm 49 ms. Auf einer Kontrollszene trifft die Maske
38007 px bei 38013 px Sollfläche.
Das Export-Skript, die Prüfvorschrift und die Schritt-für-Schritt-Anleitung liegen im Werkzeug, mit dem diese Dateien entstanden sind. Wer den Vergleich gegen die Referenz selbst laufen lässt, bekommt die Zahlen oben.
Lizenz: Apache-2.0, wie die Gewichte von Meta.