* OpenCV 영상처리 - 객체인식( Feature Detection, 검출, 매칭 ) 기술
    - 영상속에서 특정개체를 검출해 낸다.
        - 한장으로 가능하다
   
    - 특징(feature) 이용
        - 기계학습(machine learning)으로 생성된 분류기 이용
            - http://blog.daum.net/pg365/235
            -  K-means, Haar 분류기, Boosting, K-Nearest Neighbor; K-NN), 기대값-최대화(EM)
        - 특징기술자(discriptor) 이용
            - 특징점(interest(key) point) 주변의 정보를 특징정보(feature)로 나타냄
            - SIFT, SURF
             - 컴파일시 BUILD_opencv_nonfree 옵션을 체크해야한다.(특허걸려있음)

- 특징점(interest(key) point)  종류   
    - Corner (interest points) : cornerHarris
    - Blobs ( regions of interest ) : 특징있는 픽셀의 모임
        LoG(Laplacian of  Gaussian)
    - edge
        Canny Edge Detection : 가우시안 -> Sobel -> 방향 감지 -> 에지얇게 -> threshold
       
- 특징정보(local feature)의 조건
    - 노이즈, 크기, 회정, 시점, 조명 등에도 변화가 없어야 한다.

- SIFT(Scale-invariant feature transform)
    - Gaussian scale-space, DoG (Difference of Gaussian) 이용
    - OpenCV 함수 : SiftFeatureDetector, SiftDescriptorExtractor, FlannBasedMatcher
    - 예제 : http://thinkpiece.tistory.com/246

- SURF (Speeded Up Robust Features)
    - 특징점의 고속 검출
    - Haar-wavelet 응답을 이용한 특징기술자
    - Laplacian의 부호를 이용하여 매칭속도 향상
    - Integral image
    - OpenCV 함수 : cvExtractSURF, cvStartReadSeq, cvFindHomography, cvGetSeqElem
       
    - 예제 : (opencv sample c) find_obj

- Ferns
    http://darkpgmr.tistory.com/90
    - 학습에 5~10분 걸림


반응형
Posted by codens