본문 바로가기

DeepLearning/ObjectDetection

Object Detection 성능 비교 테이블

glee1228@naver.com

 

Object Detection은 컴퓨터 비전과 이미지 처리에 관련된 기술로, 디지털 이미지와 비디오로 특정한 계열의 semantic 객체의 인스턴스를 감지하는 일을 다룹니다.

 

Object detection 분야의 예로는 face detection, Pedestrian Detection 등이 있습니다.

 

최근 딥러닝을 활용한 다양한 컴퓨터 비전 분야의 발달과 함께 Object Detection 분야의 성능도 크게 향상되었습니다.

 

 

Figure copyright Ross Girshick, 2015.  Reproduced with permission.

 

위 그래프 이미지는 Object Detection 분야를 오랫동안 연구해온 Ross Girshick의 슬라이드에서 발췌한 이미지입니다.

 

Object Detection 분야에 널리 알려진 PASCAL VOC Dataset에서의 성능의 진보가 많이 이루어졌음을 보여줍니다.

 

위 그래프에서 2012년까지 Object Detection의 성능이 점점 정체되어있다가 2013년부터 딥러닝이 도입되었고 빠르게 성능이 향상되는 것을 볼 수 있습니다.

 

 

"Object Detection 분야에 잘 알려진 Faster R-CNN, YOLO, SSD(Single Shot Detector)정도는 알고 있는데 최근에 연구된 Object Detection 성능은 어느정도일지?" 란 궁금증이 생겨 Object Detection 성능 비교 테이블을 작성해보았습니다.

 

 

PASCAL VOC 2007와 PASCAL VOC 2012[5]는 이미지, 주석(Object Detection), Label(Semantic Segmentation, Instance Segmentation Label)을 포함하는 데이터셋으로 20개의 클래스와 각각 9,963장, 11,530장의 이미지가 포함되어 있고 Object의 수는 각각 24,640, 27,450개 입니다.

 

MS COCO[6]는 Microsoft 사에서 만든 4세 아이가 쉽게 인식할수 있는 91개 개체 유형의 사진이 포함된 총 250만 개 레이블로 표시된 인스턴스 데이터셋으로 91개의 클래스와 328,000장의 이미지가 포함되어 있고 Object의 수는 2,500,000여 개 입니다.

 

 

 

어떤 학습 데이터를 사용해서 네트워크를 학습했고, 어떤 테스트 데이터셋에 성능을 평가했는지, 만약 같은 데이터에 학습했다면 더 성능이 좋은 네트워크는 어떤건지 비교 테이블이 보고 싶어 리뷰 논문[1] + 웹 사이트[2],[3],[4] + 네트워크 원본 논문(부족한 정보만 참조)를 참조해 작성해 보았습니다.

 

컴퓨터 비전 분야의 연구원이나 Object Detection을 활용하려는 개발자 분들이 Object Detection 성능이 어떻게 되나? 라고 궁금할 때, 참고하실 수 있는 표 정도로 생각하시면 좋을 것 같습니다 :)

 

자세한 내용은 가장 아래 REFERENCE로 표기한 논문과 페이지 링크를 통해 확인하시면 됩니다! 

 

 

아래의 3개의 테이블은 순서대로 PASCAL VOC 2007, PASCAL VOC 2012 그리고 MS COCO Testset에 평가한 Object Detection의 성능 비교 테이블입니다.

 

PASCAL VOC 2007[5] 테스트셋에서 전체 결과(%)

 

PASCAL VOC 2007 테스트셋에서 전체 결과(%)  
Methods Trianed on mAP
R-CNN(Alex) VOC2007 58.5
R-CNN(VGG16) VOC2007 66
SPP-net(ZF) VOC2007 60.9
GCNN VOC2007 66.8
Bayes VOC2007 68.5
Fast R-CNN VOC2007+VOC2012 70
SDP+CRC VOC2007 68.9
SubCNN VOC2007 68.5
StuffNet30 VOC2007 72.7
NOC VOC2007+VOC2012 73.3
MR-CNN&S-CNN VOC2007+VOC2012 78.2
HyperNet VOC2007+VOC2012 76.3
MS-GR VOC2007+VOC2012 78.6
OHEM+Fast R-CNN VOC2007+VOC2012 78.9
ION VOC2007+VOC2012+SBD 79.2
Faster R-CNN VOC2007 69.9
Faster R-CNN VOC2007+VOC2012 73.2
Faster R-CNN VOC2007+VOC2012+COCO 78.8
SSD300 VOC2007+VOC2012+COCO 79.6
SSD512 VOC2007+VOC2012+COCO 81.6
CoupleNet VOC2007+VOC2012 82.7
RefineDet512+ VOC2007+VOC2012 83.8

"+" = trainval 

 

 

PASCAL VOC 2012[5] 테스트셋에서 전체 결과(%)

 

PASCAL VOC 2012 테스트셋에서 전체 결과(%)
Methods Trianed on mAP
R-CNN(Alex) VOC2012 53.3
R-CNN(VGG16) VOC2012 62.4
Bayes VOC2012 66.4
Fast R-CNN VOC2007++VOC2012 68.4
StuffNet30 VOC2012 70
NOC VOC2007+VOC2012 68.8
MR-CNN&S-CNN VOC2007++VOC2012 73.9
HyperNet VOC2007++VOC2012 71.4
OHEM+Fast R-CNN VOC2007++VOC2012+COCO 80.1
ION VOC2007+VOC2012+SBD 76.4
Faster R-CNN VOC2007++VOC2012 70.4
Faster R-CNN VOC2007++VOC2012+COCO 75.9
YOLO VOC2007++VOC2012 57.9
YOLO+Fast R-CNN VOC2007++VOC2012 70.7
YOLOv2 VOC2007++VOC2012+COCO 78.2
SSD300 VOC2007++VOC2012+COCO 79.3
SSD512 VOC2007++VOC2012+COCO 82.2
R-FCN (ResNet 101) VOC2007++VOC2012+COCO 85

"+" = trainval , "++" =trainval+test

 

 

 

MS COCO[6] 테스트셋 에서 전체 결과(%)

 

MICROSOFT COCO 테스트셋에서 전체 결과(%)    

Methods

Trianed on

Avg. precision, IoU Avg. precision, Area
0.5 : 0.95 0.5 0.75 S M L
Fast R-CNN train 20.5 39.9 19.4 4.1 20 35.8
ION train 23.6 43.2 23.6 6.4 24.1 38.3
NOC+FRCN (VGG16) train 21.2 41.5 19.7 - - -
NOC+FRCN (Google) train 24.8 44.4 25.2 - - -
NOC+FRCN (ResNet101) train 27.2 48.4 27.6 - - -
GBD-Net train 27 45.8 - - - -
OHEM+FRCN train 22.6 42.5 22.2 5 23.7 34.6
OHEM+FRCN* train 24.4 44.4 24.8 7.1 26.4 37.9
OHEM+FRCN* trainval 25.5 45.9 26.1 7.4 27.7 38.5
Faster R-CNN trainval 24.2 45.3 23.5 7.7 26.4 37.1
YOLOv2 trainval35k 21.6 44 19.2 5 22.4 35.5
SSD300 trainval35k 23.2 41.2 23.4 5.3 23.2 39.6
SSD512 trainval35k 26.8 46.5 27.8 9 28.9 41.9
R-FCN (ResNet101) trainval 29.2 51.5 - 10.8 32.8 45
DSOD300 trainval 29.3 47.3 30.6 9.4 31.5 47
R-FCN* (ResNet101) trainval 29.9 51.9 - 10.4 32.4 43.3
R-FCN** (ResNet101) trainval 31.5 53.2 - 14.3 35.5 44.2
Multi-path trainval 33.2 51.9 36.3 13.6 37.2 47.8
YOLOv3 trainval35k 33 57.9 34.4 18.3 35.4 41.9
FPN    (ResNet101) trainval35k 36.2 59.1 39 18.2 39 48.2
Mask R-CNN (ResNet101+FPN) trainval35k 38.2 60.3 41.7 20.1 41.1 50.2
Mask R-CNN (ResNeXt101+FPN) trainval35k 39.8 62.3 43.4 22.1 43.2 51.2
DSSD513 (ResNet101) trainval35k 33.2 53.3 35.2 13 35.4 51.1
RetinaNet (ResNet101+FPN) trainval35k 39.1 59.1 42.3 21.8 42.7 50.2
RetinaNet (ResNeXt101+FPN) trainval35k 40.8 61.1 44.1 24.1 44.2 51.2
RefineDet512 trainval35k 43.6 64.9 47.7 27.2 46.9 55.6
D-RFCN+SNIP* (ResNet101) trainval35k 43.4 65.5 48.4 27.2 46.5 54.9
Mask R-CNN (HRNetV2p-W48 +cascade) trainval35k 46.1 64 50.3 27.1 48.6 58.3
SNIPER (ResNet101) trainval35k 46.1 67 51.6 29.6 48.9 58.1
PANet* (ResNeXt) trainval 47.4 67.2 51.8 30.1 51.7 60
TridentNet (ResNet101-Deformable) trainval35k 48.4 69.7 53.5 31.8 51.3 60.3
EfficientDet-D7 + AA trainval35k 51
Cascade Mask R-CNN* (Triple-ResNeXt152) trainval35k 53.3 71.9 58.5 35.5 55.8 66.7

FRCN* : Fast R-CNN with multi-scale training 
R-FCN** : R-FCN with multi-scale training and testing

 

 

 

 

 

표에 기재된 네트워크의 자세한 정보는 아래 리뷰 페이퍼의 reference를 찾거나 이름을 구글링해서 해당 논문을 찾으시면 좋을 것 같습니다.

https://paperswithcode.com 에서 대부분의 구현 코드와 논문 링크를 찾아보실 수 있습니다.

 

이 글이 도움이 되셨다면 공감 클릭을 부탁드립니다 :)

 

 

REFERENCE : 

[1]Z. Zhao, P.Zheng, S.Xu, and X.Wu, "Object Detection with Deep Learning: A Review," in IEEE Trans Neural Netw, 2019

[2] https://paperswithcode.com/sota/object-detection-on-coco

[3] https://paperswithcode.com/sota/object-detection-on-pascal-voc-2007

[4] https://paperswithcode.com/sota/object-detection-on-pascal-voc-2012

[5] M. Everingham, L. Van Gool, C. K. Williams, J. Winn, and A. Zisserman. The PASCAL Visual Object Classes (VOC) Challenge. IJCV, 2010.

[6] T.-Y. Lin, M. Maire, S. Belongie, J. Hays, P. Perona, D. Ramanan, P. Dollar, and C. L. Zitnick. Microsoft COCO: Common objects in context. In ECCV, 2014