Hasar tespiti · 1000 fotoğraf testiDamage detection · 1000-photo benchmark

Hata ayıklama, Hugging Face modelleriyle karşılaştırma ve modellerin eğitim ayrıntılarıDebugging, comparison with Hugging Face models, and how each model was trained · 2026-10-16

ÖzetSummary

Çekicin uygulamasında ve AI Lab’de cihaz üzerinde çalışan iki hasar modelini (1000 fotoğraflık yeni bir test setinde) hata ayıklamadan geçirdik ve Hugging Face’teki 5 hasar modeliyle aynı koşullarda karşılaştırdık. Tüm modeller aynı 2 çekirdekli CPU’da çalıştı.We debugged the two on-device damage models used in the Çekicin app and AI Lab on a new 1000-photo test set, and compared them with 5 car-damage models from Hugging Face under identical conditions. Every model ran on the same 2-core CPU.

1000fotoğraf: 888 hasarlı (VehiDE) + 112 sağlam araç (Stanford Cars)photos: 888 damaged (VehiDE) + 112 intact cars (Stanford Cars)
5 + 2Hugging Face modeli (1’i karşılaştırılamaz) + bizim 2 modelimizHugging Face models (1 not comparable) + our 2 models
41% → 28%CarDD: sağlam araçta yanlış alarm, düzeltmeden sonra (F1 kaybı yok)CarDD false alarms on intact cars, after the fix (no F1 loss)
8 → 1sağlam araçta “patlak lastik” yanlış alarmı (/112) — çekici önerisini tetikleyebiliyordufalse “flat tyre” alarms on intact cars (/112) — could trigger a tow suggestion

Fotoğraflar üzerinde sonuçlarResults on the photos

Yeni hasar modelinin (YOLO11m, int8, AI Lab ayarları) test fotoğraflarındaki gerçek çıktıları. Kesikli beyaz = uzmanın işaretlediği gerçek hasar, renkli = model. Rastgele seçilmiş 48 fotoğrafın tamamı, model seçimi (8 model) ve tarayıcıda canlı test için: Modeli test et →Real outputs of the new damage model (YOLO11m, int8, AI Lab settings) on test photos. Dashed white = true damage marked by annotators, coloured = model. For all 48 randomly drawn photos, a model switch (8 models) and a live in-browser test: Test the model →

Fotoğraflar: AutoDamageIQ (VehiDE kaynaklı), CC-BY-4.0. Sağlam araç fotoğrafları lisans gereği gösterilmiyor.Photos: AutoDamageIQ (VehiDE origin), CC-BY-4.0. Intact-car photos are not shown for licence reasons.

Karar: model değişmeli mi? Evet — değiştirildi (2026-10-16)Decision: should the model change? Yes — changed (2026-10-16)

Karşılaştırmada sağlam araçta en az yanlış alarm veren model shanexf/car-damage-yolo11m-ft oldu: CarDD ile aynı 6 sınıf, ama sağlam araç fotoğraflarıyla da eğitilmiş. Dört seçeneği dürüst 2-fold ile (eşik bir yarıda seçilip diğer yarıda ölçülerek, yanlış alarm ≤ %20 koşuluyla) ve tarayıcıdaki gerçek int8 dosyasıyla ölçtük.In the comparison, shanexf/car-damage-yolo11m-ft had by far the fewest false alarms on intact cars: the same 6 classes as CarDD, but also trained on photos of intact cars. We measured four options with an honest 2-fold (threshold picked on one half, scored on the other, with false alarms ≤ 20%) using the real int8 file that the browser loads.

Seçenek (yalnız hasar modeli)Option (damage model alone)Macro-F1YakalamaRecallYanlış alarmFalse alarm.pt: F1 / y.a..pt: F1 / f.a.
A: CarDD (eski, eşiklerle)A: CarDD (old, with floors)0.52480%28%0.524 / 28%
B: YOLO11m-neg ile değiştirB: replace with YOLO11m-neg0.54084%19%0.575 / 18%
C: CarDD, YOLO11m-neg onaylarsaC: CarDD gated by YOLO11m-neg0.56082%18%0.562 / 16%
D: ikisinin birleşimiD: union of both0.56286%35%0.575 / 31%

Tablo değerleri 2-fold (ayrılmış yarı) ortalamasıdır. int8 ile C, B’den biraz daha iyi; ama iki büyük modeli birlikte gerektirir (CarDD 12 MB + YOLO11m 21 MB, ~3 sn). Lab’de seçilen kural (aşağıda) benzer yanlış alarm oranında (%21) daha yüksek F1 ve yakalama verir ve parça adını da korur.Values are 2-fold held-out means. With int8, C scores slightly better than B, but it needs two large models at once (CarDD 12 MB + YOLO11m 21 MB, ~3 s). The rule shipped in the lab (below) gives higher F1 and recall at a similar false-alarm rate (21%), and keeps the part name.

Kullanıcının gördüğü: AI Lab “İkisi birlikte” modu (1000 fotoğraf)What the user sees: AI Lab “Both” mode (1000 photos)

Asıl büyük sorun parça modeliydi: tek başına sağlam araçların yarısında hasar buluyor. Yeni kuralda parça modeli yalnızca parça adını (maliyet için) verir; hasar olup olmadığına YOLO11m-neg karar verir.The biggest problem was the part model: on its own it reports damage on about half of intact cars. With the new rule the part model only supplies the part name (for the cost estimate); YOLO11m-neg decides whether there is damage at all.

Lab moduLab modeMacro-F1YakalamaRecallYanlış alarmFalse alarmİndirme · WASM süresiDownload · WASM time
Önce: parça modeli + CarDD (≥0,40)Before: part model + CarDD (≥0.40)0.51986%54%22 MB · ~1,5 sn22 MB · ~1.5 s
Şimdi: parça modeli, YOLO11m-neg onaylarsa (int8, 0,10)Now: part model, confirmed by YOLO11m-neg (int8, 0.10)0.58886%21%31 MB · ~2,2 sn31 MB · ~2.2 s
Aynı kural, fp16w (?hq=1)Same rule, fp16w (?hq=1)0.59584%17%51 MB · ~3,5 sn51 MB · ~3.5 s
Aynı kural, orijinal .pt (referans)Same rule, original .pt (reference)0.60386%18%—

Neden int8? İndirme yarıya iner ve tarayıcıda (WASM, tek iş parçacığı) 1,7 kat hızlıdır; fp16w biraz daha doğrudur ve ?hq=1 ile açılır. 0,10 eşiği bu test setinde seçildi; 2-fold sütunları bunun etkisini gösterir. Hasarlı fotoğrafların hepsi tek kaynaktan (VehiDE); gerçek müşteri fotoğrafları daha zor olacaktır. Lisans: ağırlıklar shanexf’e ait ve lisans etiketi yok; YOLO11 türevi olduğu için AGPL-3.0, CarDD verisi nedeniyle yalnızca ticari olmayan kullanım.Why int8? Half the download and 1.7× faster in the browser (WASM, single thread); fp16w is slightly more accurate and is used with ?hq=1. The 0.10 threshold was chosen on this test set; the 2-fold columns show the effect of that. All damaged photos come from one source (VehiDE); real customer photos will be harder. Licence: weights by shanexf with no licence tag; as a YOLO11 derivative it is AGPL-3.0, and CarDD training data means non-commercial use only. · 🤗 cekicin-damage-yolo11m-neg-onnx · AI Lab

Hata ayıklama bulgularıDebugging findings

✅
Tarayıcıdaki ön/son işleme doğruBrowser pre/post-processing is correctLab’deki JavaScript hattını (letterbox, RGB/255, argmax, NMS) Python’a birebir taşıdık ve orijinal PyTorch ağırlıklarıyla karşılaştırdık: CarDD macro-F1 0.534 (bizim hat) ve 0.535 (orijinal); parça modeli 0.248 ve 0.245. Sınıf sırası ve etiket eşleşmesi doğru.We ported the lab’s JavaScript pipeline (letterbox, RGB/255, argmax, NMS) line by line to Python and compared it with the original PyTorch weights: CarDD macro-F1 0.534 (our pipeline) vs 0.535 (original); parts model 0.248 vs 0.245. Class order and label mapping are correct.
✅
640 px doğru seçim (model 1024 px’te eğitilmiş olsa da)640 px is the right input size (although the model was trained at 1024 px)CarDD kontrol noktası imgsz=1024 ile eğitilmiş. 832 ve 1024 px’i de denedik: bu veri setinde (görseller en uzun kenarda 640 px) büyütme F1’i düşürdü ve 2,5 kat yavaşlattı. Yeniden boyutlandırma filtresi (tarayıcı/PIL/OpenCV) sonucu değiştirmedi.The CarDD checkpoint was trained with imgsz=1024. We also tried 832 and 1024 px: on this data (images are 640 px on the long side) upscaling lowered F1 and was 2.5× slower. The resize filter (browser/PIL/OpenCV) made no difference.
⚠️
Asıl sorun: sağlam araçta yanlış alarmMain problem: false alarms on intact carsİki model de yalnızca hasarlı fotoğraflarla eğitilmiş, hiç sağlam araç görmemiş. Eşik 0,25’te CarDD sağlam araçların 41%’ında, parça modeli 46%’ında hasar buluyor. CarDD’de en sık: sağlam far → “far kırığı” (19/112), yansıma → “çizik” (13/112), normal lastik → “patlak lastik” (8/112).Both models were trained on damaged photos only and never saw an intact car. At threshold 0.25 CarDD finds damage on 41% of intact cars, the parts model on 46%. CarDD’s most common mistakes: intact headlight → “broken lamp” (19/112), reflection → “scratch” (13/112), normal tyre → “flat tyre” (8/112).
⚠️
8-bit sıkıştırma küçük ama ölçülebilir bir kayıp getiriyor8-bit quantisation costs a small but measurable amountfp32’ye göre yanlış alarm 35% → 41%, mAP 0.489 → 0.477. Per-channel ve “başlık fp32” denemeleri düzeltmedi. fp16 ağırlık + fp32 hesap (24 MB) fp32 ile aynı sonucu verdi; onnxruntime-web 1.22’de doğrulandı.Versus fp32, false alarms go 35% → 41% and mAP 0.489 → 0.477. Per-channel and “fp32 head” variants did not fix it. fp16 weights + fp32 compute (24 MB) matches fp32 exactly; verified in onnxruntime-web 1.22.
🛠️
Yayınlanan düzeltme (lab + API v1.2.2)Fix shipped (lab + API v1.2.2)Far kırığı ve patlak lastik için sınıf bazlı en düşük güven 0,6. Eşikler, kendi yarısında ayarlanıp diğer yarıda ölçüldü (2-fold) ve gerçek kırık far/patlak lastik içeren 78 fotoğraflık zor sette kontrol edildi.Per-class minimum confidence 0.6 for broken lamp and flat tyre. Thresholds were tuned on one half and measured on the other (2-fold), and checked on the 78-photo hard set that contains real broken lamps and flat tyres.

Düzeltmenin etkisi (CarDD, 1000 fotoğraf)Effect of the fix (CarDD, 1000 photos)

AyarSettingMacro-F1YakalamaRecallYanlış alarmFalse alarm Far y.a.Lamp f.a.Lastik y.a.Tyre f.a.Zor set: farHard set: lampsZor set: lastikHard set: tyres
Varsayılan: tüm sınıflar 0,25Default: all classes 0.250.52482%41%19/1128/11235/4114/14
Far 0,6 · lastik 0,6 (yayınlandı)Lamp 0.6 · tyre 0.6 (shipped)0.52480%28%9/1121/11232/4114/14
Far 0,8 · lastik 0,5Lamp 0.8 · tyre 0.50.52478%25%2/1122/11225/4114/14
Tüm sınıflar sıkı (sınıf başına ≤%3 yanlış alarm, 2-fold)All classes strict (≤3% false alarms per class, 2-fold)0.40453%14%––––

Model varyantları (aynı 1000 fotoğraf, eşik 0,25)Model variants (same 1000 photos, threshold 0.25)

VaryantVariantMacro-F1mAPYakalamaRecallYanlış alarmFalse alarmms
CarDD orijinal PyTorch .pt (Ultralytics, referans)CarDD original PyTorch .pt (Ultralytics, reference)0.5350.49582%42%255
CarDD fp32 ONNX + bizim JS hattımızCarDD fp32 ONNX + our JS pipeline0.5340.48982%35%167
CarDD int8 ONNX (yayındaki, 12 MB)CarDD int8 ONNX (deployed, 12 MB)0.5240.47782%41%243
CarDD int8 per-channel (12 MB)CarDD int8 per-channel (12 MB)0.5240.47782%41%241
CarDD int8, başlık fp32 (20 MB)CarDD int8, fp32 head (20 MB)0.5260.47782%42%210
CarDD fp16 ağırlık / fp32 hesap (24 MB) — yeniCarDD fp16 weights / fp32 compute (24 MB) — new0.5330.48882%35%165
Parça modeli orijinal .pt (referans)Parts model original .pt (reference)0.2450.20471%53%69
Parça modeli ONNX + JS hattı (yayındaki)Parts model ONNX + JS pipeline (deployed)0.2480.20070%46%45

Giriş çözünürlüğü (200 fotoğraflık alt küme, eşik 0,25)Input resolution (200-photo subset, threshold 0.25)

ÇalıştırmaRunMacro-F1YakalamaRecallYanlış alarmFalse alarmms
CarDD int8 · 640 px · PIL/browser0.56583%59%247
CarDD int8 · 640 px · OpenCV linear0.56583%59%245
CarDD int8 · 640 px · OpenCV area0.55783%64%250
CarDD fp32 · 640 px · PIL/browser0.56583%46%173
CarDD .pt · 640 px · Ultralytics0.58482%46%246
CarDD .pt · 1024 px · Ultralytics0.50478%46%657
CarDD int8 · 832 px · PIL/browser0.52080%50%409
CarDD int8 · 832 px · OpenCV linear0.51081%46%415
CarDD int8 · 1024 px · PIL/browser0.49378%46%620
CarDD int8 · 1024 px · OpenCV linear0.49076%55%640

Karşılaştırma: Çekicin ve Hugging Face modelleriComparison: Çekicin vs Hugging Face models

Görüntü düzeyinde: fotoğrafta o hasar türü var mı? Macro-F1 = çatlak, göçük, cam, çizik F1 ortalaması (eşik 0,25; ViT için 0,5). mAP ve AUROC eşikten bağımsızdır. Box AP50 = kutuların etiketle örtüşmesi (sınıftan bağımsız).Image level: is that damage type in the photo? Macro-F1 = mean F1 over crack, dent, glass, scratch (threshold 0.25; 0.5 for the ViT). mAP and AUROC are threshold-free. Box AP50 = box overlap with the labels (class-agnostic).

ModelModelMacro-F1 [95% CI]Görüntü mAPImage mAPHasar yakalamaDamage recallSağlam araçta yanlış alarmFalse alarm on intact carsAUROCBox AP50ms/fotophoto
ÇekicinÇekicin Çekicin CarDD (YOLOv8s-seg, int8 ONNX)0.52 [0.50–0.55]0.4882%41% [32%–51%]0.780.12243
HF shanexf/car-damage-yolo11m-ft0.51 [0.49–0.54]0.4576%14% [9%–21%]0.890.12453
HF beingamit99/car_damage_detection0.46 [0.44–0.48]0.3998%95% [91%–98%]0.82–169
ÇekicinÇekicin Çekicin parts (YOLO11n, ONNX)0.25 [0.23–0.27]0.2070%46% [38%–55%]0.670.0345
HF tatar01230/car-damage-yolo11n0.18 [0.16–0.20]0.1578%52% [42%–62%]0.720.0334

Hasar türüne göre F1F1 per damage type

ModelGöçükDentÇizikScratchÇatlakCrackCamGlassMacro
Çekicin CarDD (YOLOv8s-seg, int8 ONNX)0.450.680.320.640.52
shanexf/car-damage-yolo11m-ft0.420.680.300.660.51
beingamit99/car_damage_detection0.320.700.120.700.46
Çekicin parts (YOLO11n, ONNX)0.530.000.000.460.25
tatar01230/car-damage-yolo11n0.540.000.000.170.18

Naiscorp Mask R-CNN: aynı 300 fotoğraflık alt küme (2 GB RAM’e sığmadığı için 1000’in tamamı çalıştırılamadı)Naiscorp Mask R-CNN: same 300-photo subset (the 764 MB model does not fit 1000 runs in 2 GB RAM)

ModelModelMacro-F1 [95% CI]Görüntü mAPImage mAPHasar yakalamaDamage recallSağlam araçta yanlış alarmFalse alarm on intact carsAUROCBox AP50ms/fotophoto
HF Naiscorp/car-damage-detection0.64 [0.59–0.68]0.5183%12% [3%–24%]0.890.244364
ÇekicinÇekicin Çekicin CarDD (YOLOv8s-seg, int8 ONNX)0.53 [0.47–0.57]0.5084%45% [30%–61%]0.800.14243
HF shanexf/car-damage-yolo11m-ft0.53 [0.49–0.57]0.4879%9% [0%–18%]0.900.12453

Yakalama ve yanlış alarm dengesi (eşik 0,05 → 0,8; nokta = varsayılan eşik)Recall vs false-alarm trade-off (threshold 0.05 → 0.8; dot = default threshold)

Çekicin CarDD (YOLOv8s-seg, int8 ONNX)Çekicin parts (YOLO11n, ONNX)shanexf/car-damage-yolo11m-ftbeingamit99/car_damage_detectiontatar01230/car-damage-yolo11nCarDD fp16-weights ONNX
0%0%20%20%40%40%60%60%80%80%100%100%false alarm on intact cars →damage recall →

Sol üst köşeye yakın olan daha iyidir.Closer to the top-left corner is better.

SonuçVerdict

Modeller nasıl eğitildi?How was each model trained?

Kaynak: Hugging Face model kartları ve her .pt dosyasının içine kaydedilmiş eğitim ayarları (train_args).Source: the Hugging Face model cards and the training arguments stored inside each .pt checkpoint (train_args).

⭐ Çekicin CarDD (YOLOv8s-seg, int8 ONNX)

browser / app (on-device)

MimariArchitectureYOLOv8s-seg · 11.8 M params · 42.4 GFLOPs @640
GörevTaskinstance segmentation, 6 damage types
SınıflarClassesdent, scratch, crack, glass_shatter, lamp_broken, tire_flat
Eğitim verisiTraining dataCarDD (Wang et al., IEEE T-ITS 2023): 4,000 images, 9,000+ instances; train/val/test split of the authors
Eğitim ayarlarıTraining settingsinit yolov8s-seg (COCO) → resumed from last.pt; 50 epochs, imgsz 1024, batch 4, SGD/auto lr0 0.01; ultralytics 8.0.196 (2026-05-16)
Yazarın bildirdiğiReported by authorCarDD test: box mAP50 0.758, mask mAP50 0.759, box mAP50-95 0.589
Çekicin dışa aktarımıÇekicin exportONNX opset 12 at 640 px, onnxslim, dynamic int8 (QUInt8) → 12.4 MB; JS post-processing in the lab
LisansLicenceweights derived from CarDD (non-commercial licence agreement); Ultralytics AGPL-3.0
Bu testte (test1000)In this test (test1000)macro-F1 0.52 · mAP 0.48 · yakalamarecall 82% · yanlış alarmfalse alarm 41% · 243 ms (n=1000)

⭐ Çekicin parts (YOLO11n, ONNX)

browser / app (on-device)

MimariArchitectureYOLO11n · 2.6 M params · 6.5 GFLOPs
GörevTaskdetection, 14 part-damage classes
SınıflarClassesfront/rear windscreen, head/tail light, running board, side mirror, bonnet/boot/door/fender/quarter-panel/roof dent, front/rear bumper
Eğitim verisiTraining dataRoboflow “Automobile Damage Detection” v4
Eğitim ayarlarıTraining settingsinit yolo11n.pt (COCO); 50 epochs, imgsz 640, batch 16, optimizer auto, lr0 0.01; ultralytics 8.3.246 (2026-01-03)
Yazarın bildirdiğiReported by authorval mAP50 0.797, mAP50-95 0.552 (author)
Çekicin dışa aktarımıÇekicin exportONNX fp32 640 px → 10.6 MB
LisansLicencecard Apache-2.0; Ultralytics AGPL-3.0
Bu testte (test1000)In this test (test1000)macro-F1 0.25 · mAP 0.20 · yakalamarecall 70% · yanlış alarmfalse alarm 46% · 45 ms (n=1000)

shanexf/car-damage-yolo11m-ft

server (20 M params)

MimariArchitectureYOLO11m · 20.1 M params
GörevTaskdetection, 6 damage types
SınıflarClassesdent, scratch, crack, shattered_glass, broken_lamp, flat_tire
Eğitim verisiTraining dataCarDD images with ≥1 box + undamaged Carparts-Seg images as empty-label negatives; 80/10/10 hash split
Eğitim ayarlarıTraining settingsinit ReverendBayes YOLO11m car-damage weights; 30 epochs, imgsz 640, batch 16, AdamW lr0 2e-4, cosine LR, close_mosaic 5; ultralytics 8.4.174 (2026-10-08)
Yazarın bildirdiğiReported by authorval mAP50 0.924, mAP50-95 0.839; CarDD test mAP50 0.899; clean-car false alarms 4.0% (Carparts-Seg)
LisansLicenceno licence tag; CarDD licence agreement applies; Ultralytics AGPL-3.0
Bu testte (test1000)In this test (test1000)macro-F1 0.51 · mAP 0.45 · yakalamarecall 76% · yanlış alarmfalse alarm 14% · 453 ms (n=1000)

tatar01230/car-damage-yolo11n

on-device capable

MimariArchitectureYOLO11n · 2.6 M params
GörevTaskdetection, 16 part-damage classes
SınıflarClasseswindscreens, head/tail/sign lights, running board, side mirror, bonnet/boot/door/fender/pillar/quarter-panel/roof dent, bumpers
Eğitim verisiTraining dataRoboflow “Root” car-damage dataset (CC-BY-4.0)
Eğitim ayarlarıTraining settingsinit yolo11n.pt; 60 epochs, imgsz 416, batch 16, AdamW lr0 5e-4; ultralytics 8.4.176 (2026-10-13)
Yazarın bildirdiğiReported by authortest (427 img) mAP50 0.430, mAP50-95 0.207, P 0.55 / R 0.43
LisansLicenceAGPL-3.0
Bu testte (test1000)In this test (test1000)macro-F1 0.18 · mAP 0.15 · yakalamarecall 78% · yanlış alarmfalse alarm 52% · 34 ms (n=1000)

Naiscorp/car-damage-detection

server (764 MB ONNX)

MimariArchitectureMask R-CNN R101-DC5 (Detectron2 re-implementation)
GörevTaskinstance segmentation, 7 classes
SınıflarClassesdent, paint scratch, tear, missing part, puncture, broken lamp, broken glass (Vietnamese labels)
Eğitim verisiTraining dataNaiscorp/car-damage-dataset (44.8 k images; Vietnamese insurance photos — same domain as VehiDE, possible overlap with this test set)
Eğitim ayarlarıTraining settingsDetectron2 Mask R-CNN R101-DC5; input short side 800 / max 1333, BGR; default score threshold 0.7
Yazarın bildirdiğiReported by authorno metrics published (card shows a dent missed at 0.7, found at 0.5)
LisansLicenceproprietary weights (licence “other”)
Bu testte (test1000)In this test (test1000)macro-F1 0.64 · mAP 0.51 · yakalamarecall 83% · yanlış alarmfalse alarm 12% · 4364 ms (n=300)

beingamit99/car_damage_detection

server

MimariArchitectureViT-Base/16 224 px (google/vit-base-patch16-224-in21k), 86 M params
GörevTaskimage classification (1 label / photo, no “no damage” class)
SınıflarClassescrack, scratch, tire flat, dent, glass shatter, lamp broken
Eğitim verisiTraining datanot stated (6 CarDD class names)
Eğitim ayarlarıTraining settings10 epochs, 4,620 steps (trainer_state.json); transformers 4.35.2
Yazarın bildirdiğiReported by authoreval accuracy 0.987 (own split)
LisansLicenceMIT
Bu testte (test1000)In this test (test1000)macro-F1 0.46 · mAP 0.39 · yakalamarecall 98% · yanlış alarmfalse alarm 95% · 169 ms (n=1000)

nezahatkorkmaz/car-damage-level-detection-yolov8

—

MimariArchitectureYOLOv8n-cls (card says detection, checkpoint is a classifier)
GörevTaskseverity classification 128 px
SınıflarClasses01-minor, 02-moderate, 03-severe
Eğitim verisiTraining data“data3a” (not described)
Eğitim ayarlarıTraining settingsinit yolov8n-cls.pt; 50 epochs, imgsz 128, batch 16; ultralytics 8.0.227 (2023-12-15)
Yazarın bildirdiğiReported by authornone
LisansLicenceMIT
Bu testteIn this testnot comparable: it has no “no damage” or damage-type output, so every photo (also clean cars) gets a severity label

Test seti ve sınırlamalarTest set and limitations

📦 Test seti, ham tahminler ve betikler (Hugging Face)Test set, raw predictions and scripts (Hugging Face) · AI Lab · AI audit (FA)