반응형
OpenCV의 가장 기본적인 예제중 하나는 당연 얼굴인식 예제가 아닐까 싶다. 오직 얼굴인식을 구연하기 위해 OpenCV를 설치하는 경우도 있으니 말이다. 다른말로 하면 OpenCV를 처음 시작할때 할 수있는 예제중 가장 매력적인 예제라는 것이다.
OpenCV로 얼굴인식을 하기위해서는 XML파일 하나가 필요하다. 아래에서 다운이 가능하다.
haarcascade_frontalface_default.xml
위 파일을 파이썬과 같은 디렉토리상에 놔둔뒤, 아래 코드를 실행하자.
(개발환경 : Python 3.6.5, OpenCV 3.4.2, Pycharm python 3.6)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | import numpy as np import cv2 detector = cv2.CascadeClassifier('haarcascade_frontalface_default.xml') cap = cv2.VideoCapture(0) while (True): ret, img = cap.read() gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) faces = detector.detectMultiScale(gray, 1.3, 5) for (x, y, w, h) in faces: cv2.rectangle(img, (x, y), (x + w, y + h), (255, 0, 0), 2) cv2.imshow('frame', img) if cv2.waitKey(1) & 0xFF == ord('q'): break cap.release() cv2.destroyAllWindows() | cs |
실행을 시키면 웹캠을 통해 얼굴인식이 될것이다. 물론 얼굴인식 성능은 그리 좋지 않아 고개를 조금만 돌리면 인식을 잘 못한다.
반응형
'컴퓨터비전' 카테고리의 다른 글
OpenCV 공 추적하기 (14) | 2018.08.30 |
---|---|
스틱 PC에 OpenCV 설치하기 (OpenCV+Python) (0) | 2018.08.11 |
OpenCV edge 검출 (모서리 검출) (1) | 2018.08.03 |
OpenCV 윈도우+파이썬+파이참 개발환경 (window+python+pycharm) (0) | 2018.07.26 |
OpenCV - 사진 출력하기 (1) | 2018.03.05 |