- YOLOv1은 Single Convolutional Network로 이미지를 입력 받아 여러 개의 bounding box와 각 box의 class를 예측다. 그리고 non-max suppression을 통해 최종 bounding box를 선정한다. 또한 entire image의 feature를 사용하고, bounding box를 동시에 예측한다. 입력에서 출력까지 파이프라인 네트워크 없이 신경망으로 한 번에 처리하는 end to end training을 거치는 것이 특징이다.
1) input을 S x S grid로 분할한다.
2) 객체의 중심(x,y)가 grid cell에 맞으면 객체를 탐지했다고 표현한다.
3) 각 grid cell에서 bounding boxes와 각 boxes의 confidence score를 구해낸다.
4) 각 grid cell마다 C개의 조건부 클래스 확률인 Pr(Class|Object)를 구한다.
-본 모델은 Googlenet에서 착안한 Darknet을 사용한다. 24개의 Convolutional Layer와 2개의 Fully Connected Layer, 그리고 GoogleNet에서 착안한 1x1 reduction layer, 그 후 3x3 Convolutional Layer를 이용하여 마지막 7x7x30의 출력값을 결과로 가져온다. fast version은 24개의 convolutional layer 대신 9개의 convolutional layer를 사용한다는 차이점을 가진다.
- 위 모델을 ImageNet 데이터셋을 통해 학습을 진행하였다. 여기서 사용된 Loss function은 Sum-squared Error로 최적화가 쉽다는 장점을 가진다.
다만 1) localization error와 classification error에 동일하게 가중치를 준다는 점과 2) 객체를 포함하고 있지 않은 grid cell의 confidence는 0이 된다는 문제를 가진다. 따라서 아래의 파라미터를 사용해 bounding box coordinate prediction에는 5의 가중치를 주고, 배경인 경우(no object)에는 0.5의 가중치를 주어 loss를 낮추는 방식을 택하였다.
YOLO는 실제 application에 적용할 수 있을 정도로 속도가 빠르게 만들어졌다. 다른 real-time detector에 비하면 굉장히 mAP가 큰 폭으로 높아졌고, 다른 2-stage detector에 비하면 FPS가 큰 폭으로 높아졌다.
※ mAP(mean Average Precision)
: 실제 object detect된 recall(재현율)과 precision(정확)의 값을 평균한 성능 수치 입니다.
※ FPS(Frame Per Second)
: 초당 frame 수로 초당 detection 하는 비율을 의미한다. 클수록 자연스러운 영상 이미지를 관찰할 수 있다.
- VOC 2007 Error Analysis : YOLO와 SOTA 모델 사이의 차이를 examine 하는 지표
- Results
Localization Error : Fast R-CNN < YOLO
Background Error : Fast R-CNN > YOLO
→Fast R-CNN과 YOLO를 결합했을 때 성능이 훨씬 더 좋아졌다는 사실을 알아냈다.
→YOLO는 단순하고 빠른 모델로 real-time detection에 보다 적합한 모델이라는 결론에 도달했다.
1) Deformable parts models(DPM)
- sliding window 사용, disjoint pipeline 이용 → YOLO는 이 모든 disparate 부분을 single CNN으로 대체하였다.
2) R-CNN
- region proposals 사용(selective search)
→ 공통점 : 각 grid cell은 잠재적 potential boxes, scores 제안한다.
→ 차이점 : spatial constraints를 가함으로써 같은 object에 대해 multiple detection하는 것을 완화한다.
3) Other Fast Detectors
- R-CNN을 수정해서 속도를 빠르게 했다는 장점을 가지지만 real time 성능에서는 한계를 가진다.
→ end to end 방식을 통해 보다 빠른 속도를 달성하였다.
https://arxiv.org/abs/1506.02640
[Object Detection] 3) YOLOv1 논문 리뷰
YOLO v1 논문(You Only Look Once:Unified, Real-Time Object Detection) 리뷰
[3주차 / 김희준 / 논문리뷰] Visualizing and Understanding Convolutional Networks (0) | 2023.07.25 |
---|---|
[3주차/강민채/논문리뷰] Saliency Maps (0) | 2023.07.24 |
[2주차 / 강민채 / 논문리뷰] YOLOv1 (1) | 2023.07.19 |
[2주차/ 문성빈 / 논문리뷰] YOLO(You Only Look Once) (1) | 2023.07.19 |
[2주차 / 김희준 / 논문리뷰] Faster R-CNN (1) | 2023.07.17 |
댓글 영역