実現したいこと
pcにwebカメラを接続してopencvによってリアルタイムで顔認識をしたい
前提
Python3系
Pycharmで実行
発生している問題・エラーメッセージ
[ERROR:0@67.312] global persistence.cpp:505 cv::FileStorage::Impl::open Can't open file: 'haarcascade_frontalface_alt2.xml' in read mode
Traceback (most recent call last):
File "C:\Users\User\PycharmProjects\projectname\main.py", line 16, in <module>
face_list = cascade_face.detectMultiScale(frame_gray, minSize=(20, 20))
cv2.error: OpenCV(4.7.0) D:\a\opencv-python\opencv-python\opencv\modules\objdetect\src\cascadedetect.cpp:1689: error: (-215:Assertion failed) !empty() in function 'cv::CascadeClassifier::detectMultiScale'
該当のソースコード
import cv2
cap = cv2.VideoCapture(1)
cascade_file_face = "haarcascade_frontalface_alt2.xml"
cascade_face = cv2.CascadeClassifier(cascade_file_face)
while True:
ret,frame = cap.read()
if not ret:
print('画像を正しく読み込めませんでした')
break
frame_gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) face_list = cascade_face.detectMultiScale(frame_gray, minSize=(20, 20)) for (x, y, w, h) in face_list: color = (0,0,225) frame_thickness = 2 # 枠の太さ cv2.rectangle(frame, (x, y), (x + w, y + h), color, thickness=frame_thickness) cv2.imshow('video image',frame ) if cv2.waitKey(1) == ord('q'): break
cap.release()
cv2.destroyAllWindows()
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。