classification은 image에 대한 labeing
localization은 고양이가 어디에 있는지에 대한 boxing작업까지
detection이라는 것은 여러개의 objects에 대해 모두 찾아내는 것
segmentation은 물체의 형태대로 따주는것
localization은 결과가 box의 좌표!
평가의 지표는 IOU얼마나 물체가 겹쳐있는지에 대한것
ImageNet에 대한 대회 중 classification+localization
Localization 방법2가지
[1] Localization을 regression으로 간주
이미지를 신경망에 넣었을때 박스의 좌표를 받고 ground truth박스좌표와의 비교를 진행.
L2 distance를 이용한 loss를 얻음.
classification head에 regression head를 붙여줌.
regression head방법에는 2가지의 방법이 존재.
1.per-class 2.class agnostic
1.per-class는 어떤 class에 특화된->class개수x4개의 숫자
2.class agnostic한 방법은 각 클래스에 무관하게 즉, 범용성있는 것->4개의 숫자
regression head는 어디에 붙여주나?
1.마지막 컨볼루션 레이어 뒤에 붙여준다.(VGG와 같은)
2.fc뒤에 붙여준다(R-CNN)
정해진 수만 찾아내는 경우는 detection 대신 regression으로만 사용해서 구할 수 있다.
[2]sliding window
이미지 여러군데에서 regression을 진행후 합쳐주는,fc->conv
:overfeat->각 부분별로 score를 얻게 됨.
bounding box를 합쳐서 나중에는 하나의 bounding box와 하나의 score
벡터가 아닌 convmap으로 생각해서 또다시 fc를 conv연산을 진행.
진행되는 단계 AlexNet->overfeat->VGG->ResNet
Detection as Regression
이미지에 따라서 object의 개수가 달라지므로 regression이 적합하지 않음.
그럼에도 불구하고 regression을 진행하는게 YOLO.
Detection as classification
너무 많은 positions와 scales를 test한다는것.
HOG방식을 보면 길거리를 다니는 행인에 대해서 detection.
DPM
부분부분에 대한 templete도 갖추고 있음 따라서 더 잘 작동.
2번째 문제는 너무 많을때는 의심되는 지역에 대해서만 test한다.
object를 포함할 것같은 blobby한 곳을 찾은 후 실행한다.
blobby한 지역에 box
매우 빠르게 작동한다.
색상이나 그와 같은 픽셀을 merge하여 blob을 만드는 과정을 반복한다.
R-CNN
input images를 받아서 ROI를 뽑아낸다.그리고 cropping하고 wrapping 각자가 다 다른크기를 가진다. 각각의 ROI를 conv를 돌려줌
classification head->SVM 이용 classify
regression head->bounding box 추출
1단계) Train or download a classification model for imageNet
2단계) Fine-tune model for detection
3단계) Extract features
4단계) Train one binary SVM per class to classify region features
5단계) bounding box regression-For each class, train a linear regression model to map
from cached features to offsets to GT boxes to make up for slightly wrong proposals
detection Evaluation은 mAP average precision을 mean하는 것.
0.5가 넘으면 맞췄다고 판정.
R-CNN의 단점으로는 다음과 같은 것들이 있음
1.너무 느리다
2.off-line SVM과 regressor가..
3.다단계의 pipeline따라서 구조가 복잡하다
fast R-CNN(R-CNN의 단점을 극복)
cnn을 먼저 돌린 후에 ROI pooling을 진행한다.
conv->warpping->cropping
offline이었던 것을 해결하기 위해
faster R-CNN을 고안
RP(Region proposal)을 외부에서 하지 않고 network사이의 마지막 conv사이에 넣음으로써 해결.
기본적으로 conv-net
YOLO
detection을 regression으로 간주 및 적용
image를 일반적으로 7x7로 간주하고 faster R-CNN보다 빠르지만 성능이 떨어짐.