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.
…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.