YOLO – You Only Look Once

Čo je YOLO?

YOLO (You Only Look Once) je architektúra neurónových sietí určená na detekciu objektov v obraze v reálnom čase. Na rozdiel od tradičných prístupov, ktoré analyzujú obraz postupne v niekoľkých krokoch, YOLO spracuje celý obraz jedným prechodom cez neurónovú sieť. Tento prístup výrazne urýchľuje proces detekcie a umožňuje spracovanie videa v reálnom čase.

Ako YOLO spracováva obraz?

YOLO rozdelí vstupný obraz na mriežku buniek. Každá bunka je zodpovedná za predikciu ohraničujúcich rámčekov (bounding boxes) a pravdepodobností tried pre objekty, ktorých stred sa nachádza v danej bunke. Model súčasne predikuje pozíciu, veľkosť a triedu objektu, čo eliminuje potrebu viacerých oddelených krokov spracovania.

Architektúra využíva konvolučnú neurónovú sieť, ktorá extrahuje príznaky z obrazu a následne ich mapuje na predikcie. Výstupom je tenzor obsahujúci informácie o všetkých detekovaných objektoch vrátane ich súradníc a klasifikácie.

Vieš, že
Vieš, že…

…pôvodná verzia YOLO z roku 2016 dokázala spracovať až 45 snímok za sekundu, čo bolo približne 90-krát (teda o dva rády) rýchlejšie ako vtedajšie systémy založené na Fast R-CNN?

Verzie a vývoj YOLO

Od prvej verzie prešla architektúra YOLO niekoľkými iteráciami. YOLOv2 (YOLO9000) priniesla batch normalizáciu a anchor boxes pre lepšiu presnosť. YOLOv3 pridala detekciu na viacerých škálach, čo zlepšilo rozpoznávanie malých objektov. Neskoršie verzie vrátane YOLOv4, YOLOv5 a YOLOv8 ďalej optimalizovali rýchlosť a presnosť.

Jednotlivé verzie sa líšia v architektúre backbone siete, mechanizmoch agregácie príznakov a stratégiách trénovania. Novšie verzie tiež ponúkajú rôzne veľkostné varianty (nano, small, medium, large, extra large) pre rôzne výpočtové požiadavky.

Príklady použitia YOLO

YOLO nachádza uplatnenie v aplikáciách vyžadujúcich detekciu objektov v reálnom čase. V oblasti autonómnych vozidiel slúži na rozpoznávanie chodcov, vozidiel a dopravných značiek. Bezpečnostné systémy využívajú YOLO na monitorovanie a detekciu pohybu osôb.

V priemyselnej automatizácii pomáha pri kontrole kvality výrobkov na výrobných linkách. V maloobchodných aplikáciách pomáhajú pri sledovaní zásob a analýze správania zákazníkov. YOLO sa používa aj v medicínskych aplikáciách na detekciu abnormalít v röntgenových snímkach alebo CT skenoch.

Obmedzenia YOLO

YOLO má určité limitácie pri detekcii malých objektov a objektov, ktoré sú blízko seba. Mriežková štruktúra obmedzuje počet objektov, ktoré môže model detegovať v jednej bunke. Pri scénach s vysokou hustotou objektov môže dochádzať k vynechaniu niektorých detekcií.

Presnosť lokalizácie býva v porovnaní s dvojstupňovými detektormi ako Faster R-CNN nižšia, hoci novšie verzie tento rozdiel zmenšujú. Trénovanie modelu vyžaduje značné množstvo anotovaných dát a výpočtových zdrojov.

Zdroje a odkazy

Použité zdroje:

  • Redmon et al. (2016) – You Only Look Once: Unified, Real-Time Object Detection: https://arxiv.org/abs/1506.02640

Odporúčané zdroje:

  • Ultralytics Documentation – YOLOv8 dokumentácia a tutoriály: https://docs.ultralytics.com

Uvedené informácie sú orientačné a môžu sa líšiť v závislosti od verzie, implementácie a prostredia.