YOLO는 실시간 Object Detection 네트워크입니다.
You only look once (YOLO) !!!!
YOLO v3 의 경우 Pascal Titan X 환경에서라면 무려 30 FPS 도 나오는데 mAP 가 COCO 데이터셋에서 57.9% 씩이나 나온다 !!! 라고 YOLO 를 개발한 다크넷 개발자께서말하셨답니다.
폭풍 간지가 흐르는 다크넷 웹사이트에 방문해보세요. https://pjreddie.com/darknet/yolo/
(그 폭풍간지 다크넷 개발자님의 이름은 의외로 얌전한 이름 Joseph Redmon 이시라고 합니다.)
다른 사물인지 네트워크랑 비교 자료를 보면 이 다크넷 개발자님이 얼마나 자신이 넘치는지 알수 있습니다.
비교 테이블이 참으로 상세합니다.
옛날 옛적 object detection 시스템은 분류기를 사용하여 검출을 수행하고요. 다양한 위치 및 배율의 이미지에 모델을 적용합니다. 그래서 높은 점수값이 나오면 그것을 디텍션이 되었다고 했더랍니다.
그런데 2013년에 그게 뒤집어 졌죠.
전체 이미지에 단일 신경망을 적용해버렸고 그래서 이미지를 그리드 처럼 영역을 나누고 각 영역에서 바운딩 상자 후보를 정한 후 그 바운딩 박스 안의 이미지에 대해 무엇인지 확률을 예측합니다. 이것을 Fast RCNN 라고 합니다.
그리고 아직도 정밀도는 넘사벽이라고 추앙받는 Faster RCNN 에서는 각 영역에서 Anchor Box 라는 개념으로 바운딩 상자 후보를 정하는 Region Proposal Network 를 만들어서 Fast RCNN 으로 바운딩 박스 후보를 넘기도록 했어요. 그래서 처리 속도를 합리적으로 높혀버렸습니다. 하지만 이것이 카메라에 적용되어 실시간 처리를 하는 것은 꿈도 꾸지 못했었구요.
이 다크넷 개발자님의 YOLO 는 그 실시간 처리를 이룩하신 거죠. 드디어 카메라 영상으로 Object Detection 이 가능해졌어요. 실로 역사적으로 기념비적인 네트워크가 아닐 수 없습니다.
사용법은 다크넷 사이트에 친절히 나와 있으니 찬찬히 둘러보도록 하겠습니다.
Yolo V3의 특징 (11월 6일 추가)
Bounding Box Prediction - 그리드 당 5개 바운딩박스
Class Prediction - IOU 가 높은거 1개만
Predictions Accross Scales - 3개의 feature map
Feature Extractor - Darknet-53 으로 변경
Training - multi-scale training
'AI시작' 카테고리의 다른 글
5-3 GoogLeNet (Inception v1) (0) | 2019.12.10 |
---|---|
3-2 CNN 용어들 (Kernel, Stride, Pooling..) (0) | 2019.12.10 |
6-3 Global Average Pooling (0) | 2019.09.05 |
6-6 Non Maximum Suppression (0) | 2019.09.05 |
6-5 인식모델 평가지표(IOU 등) (0) | 2019.09.05 |