Technológia

Detekcia objektov v reálnom čase

Úvodný obrázok zdroj: StockSnap, Pixabay

Ľudský vizuálny systém je veľmi rýchly a presný. Sme schopní rozpoznať a identifikovať objekty na fotografii okamžite pri prvom pohľade. Čo by ale prinieslo, ak by sme boli schopní naučiť stroj detegovať objekty tak rýchlo a presne, ako ich „detegujeme“ my? Takýto algoritmus by napríklad umožnil strojom riadiť autá bez dodatočných senzorov. Rovnako by bol využiteľný v robotike a v mnohých iných odvetviach využívajúcich spracovanie obrazu.

R-CNN a jej vylepšenia

Na takúto detekciu objektov v obraze už existuje niekoľko algoritmov. Jedným z nich je R-CNN, resp. jeho vylepšenia Fast R-CNN a Faster R-CNN. Táto metóda najskôr použije algoritmus, ktorý prejde obraz a navrhne niekoľko ohraničujúcich obdĺžnikov pre potenciálne objekty. Po predložení navrhnutých obdĺžnikov nasleduje proces klasifikácie objektov. Nakoniec prichádza na rad post-spracovanie, kde sa odstránia duplicitné detekcie a prehodnotia sa ohraničenia na základe ostatných objektov v scéne. Je zrejmé, že tu ide o komplexný a pomalý proces. Čo tak vytvoriť neurónovú sieť, ktorá sa len jedenkrát „pozrie“ na celý obraz a určí kde a aké objekty sa nachádzajú? Tu prichádza na rad YOLO (z ang. You Only Look Once), algoritmus, ktorý je stavaný práve pre túto úlohu.

YOLO ciel detekcia objektu algoritmus

Zdroj: Gerd Altmann, Pixabay

YOLO

YOLO si od svojho vzniku prešlo už tromi verziami. V začiatkoch bol tento algoritmus veľmi rýchly, ale za rýchlosť platil presnosťou, ktorá bola nízka napríklad v porovnaní s R-CNN. Krátko po príchode YOLO vznikol aj algoritmus SSD (z ang. Single Shot Detection), ktorý bol oproti YOLO trochu rýchlejší a presnejší. Čas ale priniesol YOLO vo verzii 3, ktoré sa v presnosti približuje SOTA systémom a zároveň je jedným z najrýchlejších detektorov objektov v obraze. Takže, ak potrebujete rýchly algoritmus na detekciu objektov, YOLO je tá správna voľba.

YOLO je plne konvolučná neurónová sieť FCNN (fully convolutional neural network), ktorá spracuje celý obraz naraz. Ďalšou výhodou je, že táto architektúra je invariantná na veľkosť vstupného obrazu. YOLO rozdelí obraz na mriežku, v ktorej predikuje hraničné obdĺžniky objektov a pravdepodobnosť ich zaradenia do tried. Pri takomto prístupe nepotrebujeme na detekciu žiadne komplexné zreťazenie rôznych procesov. Podrobný popis YOLO architektúry Vám prinesieme v ďalšom článku.

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *