YOLOv2
YOLOv2 (ang. You Only Look Once version 2) – druga wersja popularnego modelu do detekcji obiektów w obrazach, opracowanego w ramach projektów YOLO i Google Brain. Model został zaprezentowany w 2016 r. w pracy „YOLO9000: Better, Faster, Stronger” autorstwa Joespha Redmona i Ali Farhadi. YOLOv2 jest przełomowy ze względu na połączenie wysokiej prędkości przetwarzania z dokładnością konkurencyjną wobec klasycznych metod wizji komputerowej.
Historia
Pierwsza wersja YOLO pojawiła się w 2015 r., wprowadzając koncepcję jednoczesnej analizy całego obrazu przy użyciu jednej sieci konwolucyjnej (CNN). Pomimo imponującej szybkości, model początkowo cierpiał na niską precyzję przy małych obiektach. W odpowiedzi na te ograniczenia, w 2016 r. zespół Redmona i Farhadi opublikował YOLOv2, wprowadzając szereg ulepszeń, takich jak:
- Użycie normalizacji wsadowej (batch normalization) w całej architekturze.
- Wprowadzenie anchor boxes jako mechanizmu prognozowania kształtów obiektów.
- Rozszerzenie modelu o wstępnie wytrenowane warstwy z ImageNet.
- Ulepszone techniki augmentacji danych, w tym skalowanie i przemiany kolorystyczne.
Architektura
YOLOv2 opiera się na strukturze Darknet‑19, kolejnej generacji lekkiej sieci konwolucyjnej stworzonej specjalnie dla zadań detekcji.
- Warstwy konwolucyjne: 19 warstw konwolucyjnych z filtrami o rozmiarach od 3×3 do 7×7, każda połączona z warstwą Batch Normalization i funkcją aktywacji Leaky ReLU.
- Warstwa „Passthrough”: łączenie wysokorozdzielczych cech z niższymi warstwami w celu lepszej detekcji małych obiektów.
- Warstwa wyjściowa: Dla każdego z S × S komórek siatki (zwykle S = 13) model przewiduje B anchor boxes oraz po C + 5 wartości (klasy, współrzędne, pewność).
Ulepszenia względem YOLOv1
W porównaniu do pierwotnej wersji, YOLOv2 osiąga:
- ~2‑3‑krotną poprawę mean Average Precision (mAP) na zestawie PASCAL VOC (od 63,4 % do 78,6 %).
- Zachowanie wysokiej wydajności – do 40 klatek na sekundę przy rozdzielczości 416 × 416 px na jednej karcie graficznej GPU.
- Możliwość wykrywania ponad 9000 klas dzięki integracji z bazą WordNet (tzw. YOLO9000).
Trening i dane
Model można trenować na standardowych zbiorach danych używanych w dziedzinie detekcji:
- PASCAL VOC (2007/2012) – klasyczny zestaw z 20 kategoriami.
- COCO – większy zbiór obejmujący 80 klas i ponad 330 000 obrazów.
- Własne zestawy danych – wymagają konwersji do formatu
.txtz koordynatami w systemie relative (0‑1).
W trakcie treningu stosuje się stochastic gradient descent (SGD) z momentem (momentum) 0,9, początkową stopą uczenia 0,001 oraz harmonogramem zmniejszania po każdej 30‑tej epoce.
Zastosowania
YOLOv2 znalazło zastosowanie w wielu dziedzinach, m.in.:
- Systemy monitoringu i bezpieczeństwa – detekcja osób i pojazdów w czasie rzeczywistym.
- Autonomiczne pojazdy – rozpoznawanie pieszych, znaków drogowych i innych pojazdów.
- Analiza sportowa – śledzenie zawodników i piłek podczas meczu.
- Robotyka – orientacja w otoczeniu i interakcja z obiektami.
Porównanie z innymi metodami
W tabeli poniżej zestawiono YOLOv2 z wybranymi modelami detekcji obiektów dostępnymi w 2023 r.:
| Model | mAP (COCO) | FPS (1080 Ti) | Architektura bazowa |
|---|---|---|---|
| YOLOv2 | ≈ 51 % | ≈ 40 | Darknet‑19 |
| Faster R-CNN | ≈ 57 % | ≈ 7 | ResNet‑101 |
| SSD300 | ≈ 53 % | ≈ 22 | VGG‑16 |
Wersje i rozwinięcia
Po sukcesie YOLOv2 powstały kolejne wersje:
- YOLOv3 – wprowadzenie skalowalnych feature pyramids i trzech grup anchor boxes.
- YOLOv4 – optymalizacje pod kątem wydajności (CSPDarknet53, Mish activation).
- YOLOv5 – implementacja w PyTorch oraz zestaw modeli od nano do xlarge.
- YOLOv7 – najnowsze usprawnienia w architekturze i metodach treningowych.
Ograniczenia
Mimo licznych zalet, YOLOv2 ma pewne ograniczenia:
- Trudności w wykrywaniu bardzo małych obiektów, zwłaszcza przy dużym stopniu powiększenia obrazu.
- Wrażliwość na niejednorodne oświetlenie i zmiany perspektywy, co wymaga dodatkowej augmentacji.
- Model jest mniej elastyczny pod względem liczby klas w porównaniu z niektórymi metodami dwufazowymi (np. Mask RCNN).
Perspektywy rozwoju
Badania nad uczeniem głębokim wciąż dążą do zwiększenia zarówno szybkości, jak i precyzji. W kontekście YOLOv2 najważniejsze kierunki rozwoju obejmują:
- Implementację kwantyzacji i przycinania modeli w celu uruchamiania ich na urządzeniach brzegowych (edge computing).
- Integrację z technikami uczenia samonadzorowanego w celu redukcji konieczności ręcznej anotacji.
- Rozszerzenie o uczenie wielozadaniowe, łączące detekcję z segmentacją i klasyfikacją sceny.
Bibliografia
- J. Redmon, A. Farhadi, “YOLO9000: Better, Faster, Stronger”, Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017.
- J. Redmon, S. Divvala, R. Girshick, A. Farhadi, “You Only Look Once: Unified, Real-Time Object Detection”, Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016.
- P. Dollár, C. L. Zitnick, “Fast R-CNN”, International Journal of Computer Vision, 2015.
YOLOv2 pozostaje kamieniem milowym w historii detekcji obiektów, udowadniając, że prędkość i dokładność mogą iść w parze w praktycznych zastosowaniach sztucznej inteligencji.