import cv2
import cvlib as cv
from cvlib.object_detection import draw_bbox
# 동영상 파일 열기
video = cv2.VideoCapture('./data/person_video.mp4')
color = [255,255,255]
# 동영상 프레임을 반복적으로 읽기
while True:
ch, frame = video.read()
# 더 이상 읽을 프레임이 없으면 루프 탈출
if not ch:
break
# 얼굴 탐지
faces, confidences = cv.detect_face(frame)
# 탐지된 얼굴들에 대해 Bounding Box와 conf 값 그리기
for i, (face, conf) in enumerate(zip(faces, confidences)):
(startX, startY, endX, endY) = face
# 사각형 Bounding Box 그리기 (흰색)
cv2.rectangle(frame, (startX, startY), (endX, endY), color, 2)
# conf 값을 사각형 하단에 텍스트로 출력하기 (흰색)
text = "{:.2f}%".format(conf * 100)
cv2.putText(frame, text, (startX, endY + 20),
cv2.FONT_HERSHEY_SIMPLEX, 0.7, color, 2)
# 결과 프레임을 화면에 출력
cv2.imshow("Video", frame)
# q 키를 누르면 종료
key = cv2.waitKey(33)
if key == ord('q'):
print('사용자에 의해서 영상이 종료')
break
# 동영상 파일 닫기
video.release()
# 모든 창 닫기
cv2.destroyAllWindows()