논문링크 : https://arxiv.org/pdf/1808.01244.pdf
논문 소스코드 : https://github.com/princeton-vl/CornerNet
CornerNet: Detecting Objects as Paired Keypoints
Contribution
- pose estimation의 아이디어를 object detection task에 접목 (Keypoints로, 두 개의 모서리를 Detect하여 Bounding box를 찾아냄)
- (당시) 1-stage 계열에서 sota 달성 (아래 table 7 참조)
Motivation
- '앵커 박스' 사용으로 인해 발생하는 단점들을 해소하고 싶다.
- '앵커 박스' 사용으로 인한 단점 => 1) 많은 수의 앵커박스 필요, 2) positive, negative 불균형 문제, 3) 앵커박스에 필요한 여러 하이퍼파라미터 고려해야 함
- 앵커 박스를 제거하고, 특징점(keypoints)을 기반으로 바운딩 박스를 예측
Core idea
Pose estimation에서 heatmap을 가지고 joint의 keypoint를 찾는 방법과 유사
- CornerNet architecture
- Corner pooling
1. CornerNet architecture
- Backbone : Hourglass Network ("Stacked Hourglass Networks for Human Pose Estimation" )
- Backbone network를 통해 정제된 feature는 top-left, bottom-right corner를 찾는데 사용됨
- heatmap은 class별, top-left별, bottom-right별로 생성됨
- 각 heatmap의 point별로 embedding이 계산된 후, 이 embedding 끼리의 유사도를 측정하여 pair를 구성함
2. Corner pooling
사용 이유 : Often there is no local evidence to determine the location of a bounding box corner.
기타
1. Loss function
- focal loss를 변형하여 사용함
- top-left, bottom-right에 대한 두 개의 heatmap이 존재, heatmap은 특징점 유무를 식별하는 용도로 사용됨
- heatmap은 C개의 채널을 갖으며, C는 class 수를 의미함
- radius는 객체의 크기에 따라 결정하며, radius 주변에 가우시안 분포(둥근 모양)를 생성하여 거리에 따라 loss를 조절 (보다 자세한 내용은 논문을 참고할 것)
- 당연한 소리지만, 정답과 근접한 예측값에는 낮은 loss를 부여, negative에는 큰 loss를 부여함
- p는 해당 위치에서의 score, y는 ground-truth, N은 image에서 object의 수, alpha, beta는 각 point의 기여도를 조절하는 하이퍼파라미터
- corner pooling의 예측값인 embedding은 검출한 두 쌍의 특징점을 하나로 묶기 위해 사용함
- 동일한 class에 속하는 특징점 embedding 사이의 거리를 측정, 가장 거리가 짧은 두 특징점이 하나로 묶는다.
- 동일한 그룹에 속하는 특징점 -> pull loss, 다른 그룹에 속하는 특징점 -> push loss
- 서로 같은 object끼리는 잠재공간 상에서 가까워지게 embedding을 만들고, 다른 object끼리는 서로 멀어지게 만드는 역할
- heatmap은 여러 conv layer를 거쳐 down sampling됨 => heatmap에서 검출한 특징점 위치를 원래 이미치 크기와 다름 => 정확한 특징점 위치를 예측할 수 없게 됨 => 이 문제를 해결하기 위해 offset 계산 필요함
- SmoothL1Loss : Faster-RCNN에서 bounding box regression시 사용하는 loss, cornerNet에서도 box의 위치를 regression(조정)한다.
2. 성능 (MS COCO dataset)
반응형
'머신러닝_딥러닝 > Object Detection' 카테고리의 다른 글
(논문리뷰) FCOS (2019) (곧, 작성 예정임) (0) | 2021.09.13 |
---|---|
(논문리뷰) CenterNet (2019) (곧, 작성 예정임) (0) | 2021.09.13 |
(논문리뷰) RefineDet (2018) (0) | 2021.09.13 |
(논문리뷰) Cascade R-CNN (2018) (0) | 2021.09.13 |
(논문리뷰) CoupleNet (2017) (0) | 2021.09.13 |