Regions - CNN
Object Localization이나 Detection 등의 핵심은 object의 위치를 찾는 것이다.
image classification과 동일한 architect(Feature Extrator-Feature Map-FC layer - Softmax class score / Annotation - bounding box regression)를 지닌다.
그런데 object detection은 여러개의 object가 있는 경우 중간지점을 예측하는 등 제대로 성능이 나오지 않음
그래서 있을만한 위치를 먼저 예측을 한다 -> region proposal 방식을 채택함
# stage 1
selective search 를 통해 2000여개의 region을 예측하고 proposal
예측이된 object는 cnn모델에 넣게됨
- object 내 또 각기 다른 object가 있을텐데 사이즈를 동일하게 맞춤
=> 사이즈를 맞추는 이유는 1D flattened Fully Connected input에서 각 사이즈가 명시가 되어있어야하기 때문이다
- 그런데 예측할때 각기 다른 scale로 예측되기 때문에 모양이 다르다.
- 모양을 맞추기 위해 image crop을 하면 모양이 망가진다. 늘어나거나 작아지거나....
warp로 감싼다
# stage 2
CNN detection을 통해 학습
Feature Extrator - Feature Map-FC layer - Softmax class score
- extracted region을 classify 하고 각각 region을 cnn 하고 Bbox reg, SVM을 구동 => 속도가 매우 느릴 수 밖에
- 3차원의 feature map이 예를 들어(512, 7, 7)이 있으면 압축을 해서 1차원 Feature vector 로 만듬 => 1D flattened Fully Connected input
deep learning이 끝나고 보통은 softmax를 돌려야 하는데
classification은 svm같은 모델을 별도로 운용한다.
왜냐면 압축된 feature vector는 어차피 1차원이니깐, 그랬더니 성능이 좋았다.
'Computer_Science > Computer Vision Guide' 카테고리의 다른 글
3-3~4. SPPNet, RCNN의 문제점, Spatial Pyramid Matching (0) | 2021.09.24 |
---|---|
3-2. RCNN Training과 Loss (0) | 2021.09.24 |
2-7. object detection network 개요 / FPS, resolution, 성능 상관관계 (0) | 2021.09.23 |
2-6. OpenCV 영상처리 (0) | 2021.09.23 |
2-4~5. OpenCV 개요 (0) | 2021.09.21 |