Faster R-CNN
Opened this issue · 3 comments
chullhwan-song commented
chullhwan-song commented
what ?
- Localization의 대표적 알고리즘
- rcnn > fast rcnn 에서 시작하였음
- Yolo, SSD등 참고
- 특징
- faster rcnn과 거의 유사함.
- 대부분 공유하나 밑의 rpn부분만 다름.
- 다만, fast rcnn과 달리 후보 영역 계산하는 과정이 network 안에 존재한다.
- selective search 과정이 없다. > rpn
- faster rcnn과 거의 유사함.
구조
Region Proposal Networks(rpn)
- 대신에 새로운 "Region Proposal Networks(rpn)" 개념이 생김
- selective search의에서 생기는 속도 이슈는 많이 감쇠 그리고, 성능에 대해서도 fast rcnn과 거의 비슷한 성능을 보임
ROI Pooling
- classification & box regression 을 위한 전처리(?) 작업
- sppnet에서 영감을 얻음.
- 빨간색 사각형 > conv feature map & ROI > roi pooling > resize > fc..
- output 은 항상 같아야한다. 이유는 fc layer에 들어가는 수는 고정이므로 어떠한 ROI가 나오더라도 같은 dimension을 가진 output이어야만한다.
- 그래서, ROI가 21x14라면, max pooling 연산을 하는데, 3x2, stride(3,2)을 하면 output 7x7
- 또한 35xx42 ROI, 5x6, stride(5, 6)를 하면 output 7x7를 가진다.
- 한 pixel (cell)크기를 5x6를 가지도록 7x7 등분(grid)하고 그안에서 max값을 찾는 operation
- 즉, 동일한 크기의 output이 나오도록 하는 max pooling 연산을 한다.
chullhwan-song commented
good post : https://tryolabs.com/blog/2018/01/18/faster-r-cnn-down-the-rabbit-hole-of-modern-object-detection/
ROI Pooling
box classification & regression
- N+1 클래스에 대한 classification(+1는 background)
- 4xN 에 대한 box regression = BOX(center_x, center_y, width, height)