ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 캐스케이드 분류기
    컴퓨터 비젼(Computer Vision)/영상 분할과 객체 검출 2022. 2. 17. 16:28

    캐스케이드 분류기(Cascade Classifier)

    Positive 샘플(특정 목표 객체)과 Negative 샘플(목표 객체가 아닌 것) 에 대한 최소 수 백개의 영상을 이용해 학습된되는 검출기로,
    1) Haar-like feature를 사용하며, 2) Adaboost 기반의 분류를 수행하며, 3) Cascade 방식을 통해 빠른 속도로 동작한다.

     

     

    Haar-likfe feature

    • 사각형 형태의 필터 집합
    • 흰색 사각형 영역 픽셀 값의 합에서 검정색 사각형 영역 픽셀 값을 뺀 결과 값을 추출
    • 24x24 Cropped 영상에서 얼굴 판별에 유용한 Haar-like feature를 선별
    • 위 행은 2개의 좋은 feature을 보인다. 첫 번째 feature는 눈 영역이 코 영역보다 어둡다라는 특징에 초점을 맞춘 거 같으며, 두 번째 feature는 눈이 콧대보다 더 어둡다라는 특징에 초점을 맞춘 것으로 보인다.

    • 학습시 16,000개의 features 중 최고의 features 을 선별하게 되는데, adaboost를 이용해 16,000개 features 중 6,000개의 features가 선별된다.
    • 또한 6,000개의 features를 적용해 얼굴인지 아닌지 확인하게 되는데, cascade 방식을 적용해 빠르게 얼굴인지 아닌지를 판별한다.
      • 영상 중 대부분의 영역은 얼굴이 아닌 영역이다.
      • 빠르게 얼굴이 아닌 부분을 판별하여 속도를 높인다.
      • 작동 예시: https://www.youtube.com/watch?v=hPCTwxF0qf4
    cv2.CascadeClassifier() -> <CascadeClassifier obj>
    cv2.CascadeClassifier(filename) -> <CascadeClassifier obj>
    cv2.CascadeClassifier.load(filename) -> retval
    • filename: XML 파일 이름 (여기서 다운 받을 수 있다.)
    • retval: 성공(True) 또는 실패(False)
    cv2.CascadeClassifier.detectMultiScale(image, scaleFactor=None, munNeighbors=None, flags=None, minSize=None, maxSize=None) -> result

    image: 입력 영상 (cv2.CV_8U)

    scaleFactor: 영상 축소 비율. default 1.1 // 높일수록 속도가 높아지나 정확도는 떨어짐.

    minNeighbors: 얼마나 많은 이웃 사각형이 검출되어야 최종 검출 영역으로 설정할지를 지정. default 3

    flags: 현재 사용 안됨

    minSize: 최소 객체 크기. (w, h) 튜플. 영상내에 등장할 객체가 작지 않다면 값을 줘 속도를 높일 수 있음

    maxSize: 최대 객체 크기. (w, h) 튜플.

    result: 검출된 객체의 사각형 정보(x,y,w,h)를 담은 np.ndarray, shape=(N,4), dtype=np.int32 (N=검출된 객체 갯수)

     

    참고

     

    https://docs.opencv.org/4.x/de/d37/group__objdetect__cascade__classifier.html

    https://docs.opencv.org/4.x/db/d28/tutorial_cascade_classifier.html

    '컴퓨터 비젼(Computer Vision) > 영상 분할과 객체 검출' 카테고리의 다른 글

    HOG 보행자 검출  (0) 2022.02.17
    템플릿 매칭  (0) 2022.02.17
    모벤트 기반 객체 검출  (0) 2022.02.16
    영상 분할과 객체 검출  (0) 2022.02.16

    댓글

Designed by Tistory.