Python OpenCv 人脸识别时出现问题:AttributeError: module ‘cv2‘ has no attribute ‘face‘

在学习Python OpenCv 人脸识别时其中有一行代码见下:

##加载识别器
recognizer = cv2.face.LBPHFaceRecognizer_create()

问题:
运行后出现问题为:AttributeError: module ‘cv2’ has no attribute ‘face’,出现这样的问题,是因为face模块实际上并不是OpenCv库的一部分。更确切地说,face是部分的的opencv-contrib库。从自述文件:此存储库[ opencv-contrib]用于开发所谓的“额外”模块,提供功能。新模块通常没有稳定的API,并且它们没有经过良好测试。因此,它们不应作为官方OpenCV发行版的一部分发布,因为该库保持二进制兼容性,并试图提供良好的性能和稳定性。

解决方法:
知道问题后,我们就安装对应的库即可,网上有多中方法,比如:
(1)安装opencv-python 和opencv-contrib-python即可解决
(2)卸载opencv-contrib-python之后再重新安装即可解决

我自己采用第一种方法就可以解决,直接使用下面命令安装opencv-contrib库即可:

pip install opencv-contrib-python -i https://mirrors.aliyun.com/pypi/simple/

部分电脑可能使用上面命令后安装失败,问题见下:
ERROR: Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问。: ‘D:AnacondaAnacondaPathenvsp1Libsite-packagescv2cv2.pyd’
Consider using the --user option or check the permissions.
在这里插入图片描述
如果出现以上问题,用下面方法解决,输入另外一条安装命令即可:

pip install --user opencv-contrib-python -i https://mirrors.aliyun.com/pypi/simple/

安装成功如下图所示:
在这里插入图片描述
通过以上步骤安装好opencv-contrib库后,再运行代码就不会报错了,这是我自己成功解决的办法,希望也能帮到各位解决问题,谢谢!

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>