티스토리 뷰
반응형
우선 얼굴을 검출하기 위해
https://github.com/opencv/opencv/tree/master/data/haarcascades
위 github 에 들어가 frontalface_default.xml 파일을 받아온다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | import cv2 import numpy as np cap = cv2.VideoCapture(0) cap.set(cv2.CAP_PROP_FRAME_WIDTH, 640) cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 480) face_cascade = cv2.CascadeClassifier("./haarcascade/haarcascade_frontalface_default.xml") while True: ret, frame = cap.read() if not ret: break gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY) faces = face_cascade.detectMultiScale(gray,1.08,5) for x,y,w,h in faces: cv2.rectangle(frame, (x,y), (x+w, y+h), (0,255,0), 2) cv2.imshow("Face",frame) if cv2.waitKey(1)>0: break cap.release() cv2.destroyAllWindows() | cs |
xml 파일을 불러온 후에
원래 영상프레임인 frame을 gray로 변환시켜 주고 이 gray를 이용해서 detectMultiScale에 넣어준다.
faces로 넘어온 좌표 정보를 이용하여 얼굴 크기에 맞게 사각형을 그려준다.
반응형
'영상처리' 카테고리의 다른 글
[영상처리] 알파 블렌딩(Alpha Blending)이란? (OpenCV-python) (0) | 2021.01.11 |
---|---|
[영상처리] Adaptive Treshold (OpenCV-python) (0) | 2021.01.09 |
[영상처리] 오츠의 알고리즘(Otsu Algorithm, Thresholding) (0) | 2021.01.07 |
openCV를 이용하여 손인식 (0) | 2019.01.18 |
Visual Studio 에서 OpenCV 세팅하기 (0) | 2019.01.18 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday