Čo je prienik nad zjednotením (IoU)?
Prienik nad zjednotením (IoU) je skóre, ktoré meria prekrytie dvoch oblastí ako zdieľanú plochu delenú spoločnou plochou. Dvoma oblasťami sú zvyčajne predikovaná maska alebo obdĺžnik a maska alebo obdĺžnik skutočnosti (ground truth).
Výpočet
IoU = |A ∩ B| / |A ∪ B|
A je predikovaná oblasť a B je oblasť skutočnosti. Prienik je plocha, ktorá je v oboch. Zjednotenie je plocha, ktorá je aspoň v jednej z nich. Hodnota je 0, keď sa oblasti neprekrývajú, a 1, keď sú rovnaké. Rovnaké skóre je Jaccardov index.
Pre pixelovú masku možno IoU vyjadriť aj ako TP / (TP + FP + FN). TP je počet pixelov v oboch maskách. FP je počet pixelov iba v predikcii. FN je počet pixelov iba v skutočnosti.

Použitie v benchmarkoch
Úloha detekcie PASCAL VOC počíta predikovaný obdĺžnik ako správny, keď je jeho IoU s obdĺžnikom skutočnosti vyššie ako 0,5. Autori VOC zvolili tento prah nízko zámerne, pretože obdĺžniky skutočnosti nie sú presné. Od VOC2008 úloha segmentácie VOC hodnotí každú triedu tiež ako TP / (TP + FP + FN).
Hodnotiaci kód COCO udáva priemernú presnosť pri IoU 0,50, pri IoU 0,75 a spriemerovanú cez desať prahov od 0,50 do 0,95.
Priemerné IoU (mIoU)
Priemerné IoU (mIoU) je IoU každej triedy spriemerované cez všetky triedy.
IoU a Dice koeficient
Dice koeficient (Sørensen-Dice) meria to isté prekrytie na inej stupnici. Ak Dice označíme S a IoU J:
- S = 2J / (1 + J)
- J = S / (2 - S)
Pre ten istý pár masiek je Dice rovný alebo vyšší ako IoU. Segmentácia s TP = 80, FP = 20 a FN = 20 má IoU 0,67 a Dice 0,80. Porovnávajte skóre len vtedy, keď používajú rovnakú metriku.
Použitie pri segmentácii trhlín v spevnených plochách
Publikované modely segmentácie trhlín v spevnených plochách, napríklad Context-CrackNet, uvádzajú mIoU spolu so skóre Dice. Hodnota IoU porovnáva masku modelu s referenčnou maskou. Nedáva šírku, dĺžku ani závažnosť trhliny.
Často kladené otázky
- Ako sa IoU vypočíta?
- IoU je plocha prieniku dvoch oblastí delená plochou ich zjednotenia. Pre pixelové masky sa rovná TP / (TP + FP + FN). TP sú pixely v oboch maskách. FP sú pixely iba v predikcii. FN sú pixely iba v skutočnosti. Výsledok je medzi 0 a 1.
- Aký je rozdiel medzi IoU a Dice koeficientom?
- Obe metriky merajú prekrytie a jednu možno prepočítať na druhú. Dice = 2 x IoU / (1 + IoU) a IoU = Dice / (2 - Dice). Dice je preto pre rovnaký pár masiek rovný alebo vyšší ako IoU. IoU 0,5 zodpovedá Dice približne 0,67.
- Aký prah IoU sa považuje za správnu detekciu?
- Závisí to od benchmarku. Úloha detekcie PASCAL VOC vyžaduje prekrytie nad 0,5. Hodnotenie COCO udáva priemernú presnosť (average precision) pri IoU 0,50, pri IoU 0,75 a spriemerovanú cez desať prahov od 0,50 do 0,95 po krokoch 0,05.
Referencie
- 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ý záznam. TarmacView poskytuje služby dronovej inšpekcie a nepredáva vybavenie ani materiály opísané v tomto slovníku.