CornerNet 짧은 리뷰

Kevin Lee·2020년 7월 6일
0

스트라드비젼 인턴

목록 보기
7/12

CornerNet은 keypoint-based one-staged object detector이다. 왼쪽위, 오른쪽 아래 두 지점을 예측해서 경계박스를 만든다. MS-COCO 데이터셋에서 무려 42.2% AP라는 성능을 보여준다.


Hourglass backbone을 써서 top-left, bottom-right 히트맵을 결과물로 뱉어낸다.

Embedding은 left-top, right-bottom 코너들의 pair를 계산해서 경계 박스를 구성할때 쓰여진다.

다른 network도 backbone으로 사용해보았으나 hourglass가 가장 성능이 우수하여 선택했다고 한다.

Corner Pooling

각 코너들의 히트맵을 예측할때 object의 가장자리에 있는 코너들은 local evidence나 pattern이 대부분 부족하다. CornerNet은 Corner Pooling이라는 컴포넌트를 이용하여, 더 코너를 잘 예측하겠끔 도와준다.

  • Local evidence가 부족한 예
    다 갈색이여서 어디가 어딘지 모를 수 있다...

Hourglass에서 나온 feature map을 가로,세로로 이동하면서, max값을 채워버린다.

위 사진 처럼 feature map 가로, 세로 max pooling 한것을 더해서 output을 만든다.(그런데 여러 object가 많거나 겹칠경우 오류가 많을듯...)

  • 전체적인 Overview

    Heatmap으로 corner와 class를 찾고, embedding으로 pair를 찾는다.

성능은?

성능은 확실히 타 SOTA one-stage detector들 보다는 좋지만, 얘가 속도가 그렇게 빠른편이 아니다. 속도가 two-stage보다 더 느리다는 평이 있다.

profile
🧠🦾❤ https://github.com/to2915ny

0개의 댓글