Co je průnik nad sjednocením (IoU)?
Průnik nad sjednocením (IoU) je skóre, které měří překryv dvou oblastí jako sdílenou plochu dělenou celkovou plochou. Těmito oblastmi bývají predikovaná maska nebo obdélník a referenční maska nebo obdélník (ground truth).
Výpočet
IoU = |A ∩ B| / |A ∪ B|
A je predikovaná oblast a B je referenční oblast. Průnik je plocha, která patří oběma. Sjednocení je plocha, která patří alespoň jedné z nich. Hodnota je 0, když se oblasti nepřekrývají, a 1, když jsou shodné. Stejné skóre je Jaccardův index.
U pixelové masky lze IoU zapsat také jako TP / (TP + FP + FN). TP je počet pixelů v obou maskách. FP je počet pixelů jen v predikci. FN je počet pixelů jen v referenční masce.

Použití v benchmarcích
Úloha detekce PASCAL VOC počítá predikovaný obdélník jako správný, když je jeho IoU s referenčním obdélníkem nad 0,5. Autoři VOC nastavili tento práh záměrně nízko, protože referenční obdélníky nejsou přesné. Od VOC2008 úloha segmentace VOC také hodnotí každou třídu pomocí TP / (TP + FP + FN).
Kód vyhodnocení COCO udává průměrnou přesnost při IoU 0,50, při IoU 0,75 a průměr přes deset prahů od 0,50 do 0,95.
Střední IoU
Střední IoU (mIoU) je IoU každé třídy zprůměrované přes všechny třídy.
IoU a koeficient Dice
Koeficient Dice (Sørensen-Dice) měří stejný překryv na jiné stupnici. S označuje Dice a J označuje IoU:
- S = 2J / (1 + J)
- J = S / (2 - S)
Pro stejný pár masek je Dice rovno nebo vyšší než IoU. Segmentace s TP = 80, FP = 20 a FN = 20 má IoU 0,67 a Dice 0,80. Skóre porovnávejte jen tehdy, když používají stejnou metriku.
Použití při segmentaci trhlin ve vozovkách
Publikované modely segmentace trhlin ve vozovkách, například Context-CrackNet, uvádějí mIoU spolu se skóre Dice. Hodnota IoU porovnává masku modelu s referenční maskou. Neudává šířku, délku ani závažnost trhliny.
Často kladené otázky
- Jak se IoU počítá?
- IoU je plocha průniku dvou oblastí dělená plochou jejich sjednocení. U pixelových masek se rovná TP / (TP + FP + FN). TP jsou pixely v obou maskách. FP jsou pixely jen v predikci. FN jsou pixely jen v referenční masce (ground truth). Výsledek je mezi 0 a 1.
- Jaký je rozdíl mezi IoU a koeficientem Dice?
- Obě metriky měří překryv a jednu lze převést na druhou. Dice = 2 x IoU / (1 + IoU) a IoU = Dice / (2 - Dice). Dice je tedy pro stejný pár masek rovno nebo vyšší než IoU. IoU 0,5 odpovídá Dice přibližně 0,67.
- Jaký práh IoU se počítá jako správná detekce?
- Záleží na benchmarku. Úloha detekce PASCAL VOC vyžaduje poměr překryvu nad 0,5. Vyhodnocení COCO udává průměrnou přesnost při IoU 0,50, při IoU 0,75 a průměr přes deset prahů od 0,50 do 0,95 s krokem 0,05.
Reference
- wikipedia-jaccard
- Jaccard index Wikipedia
- pascal-voc-2010
- The PASCAL Visual Object Classes (VOC) Challenge, International Journal of Computer Vision 88, 303-338 (2010) Everingham, Van Gool, Williams, Winn, Zisserman
- coco-cocoeval
- pycocotools cocoeval.py (COCO API) COCO Consortium
- context-cracknet
- Context-CrackNet: A Context-Aware Framework for Precise Segmentation of Tiny Cracks in Pavement images (arXiv 2501.14413) Kyem, Asamoah, Aboah
Toto je referenční položka. TarmacView poskytuje služby inspekce drony a neprodává zařízení ani materiály popsané v tomto slovníku.