Python+OpenCV报错 SystemError:’class ‘cv2.CascadeCla

SystemError: returned a result with an error set

# 1、导入库
import cv2
# 2、加载图片
image1 = cv2.imread(r’C:\Users\HongXiangWang\Desktop\image1.jpg’)
# 3、加载人脸模型
face = cv2.CascadeClassifier(r’C:\Users\HongXiangWang\Desktop\haarcascade_frontalface_alt.xml’)
# 4、调整图片灰度(人脸识别没有必要识别颜色,灰度提高性能)
gray = cv2.cvtColor(image1,cv2.COLOR_RGB2GRAY)
# 5、检查人脸
faces = face.detectMultiScale(gray,1.1,3)
# 6、标记人脸
for (x,y,w,h) in faces :
cv2.rectangle(image1,(x,y),(x+w,y+h),(0,255,0),2)
# 7、创建窗口
cv2.namedWindow(‘wanghongxiang’)
# 8、显示图片
cv2.imshow(‘whx’,image1)
# 9、暂停窗口
cv2.waitKey(0)
# 10、关闭窗口
cv2.destroyAllWindows()
编写人脸识别的demo,从Github上面下载了haarcascade_frontalface_alt.xml放在了我的桌面,编译一直出问题,后来才发现在安装cv2这个模块的时候,会在你python安装路径下面生成”E:\Python37\Lib\site-packages\cv2\data“,在这个路径下面就有haarcascade_frontalface_alt.xml,
只需要

face = cv2.CascadeClassifier(r’C:\Users\HongXiangWang\Desktop\haarcascade_frontalface_alt.xml’)
改成

face = cv2.CascadeClassifier(r’E:\Python37\Lib\site-packages\cv2\data\haarcascade_frontalface_alt.xml’)

就可以成功运行。

或者在系统里查找下haarcascade_frontalface_alt.xml的路径

发表评论