关于 AttributeError: module ‘cv2.face‘ has no attribute ‘createLBPHFaceRecognizer‘ 的问题

关于AttributeError: module ‘cv2.face‘ has no attribute ‘createLBPHFaceRecognizer‘的问题

关于 AttributeError: module ‘cv2.face‘ has no attribute ‘createLBPHFaceRecognizer‘ 的问题_第1张图片

这个问题真的是困扰了我好几个小时,直接搜索也没有能解决我问题的答案,直到我重新下载了好几次~

使用环境:Windows 10
使用软件:PyCharm
Python版本:3.6

搜索到的方法

1 需要下载 opencv-contrib-python 的包,这个包里面才有cv2.face 的函数。
(下载建议使用国内镜像下载,速度会快不少)

镜像下载方法如下:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-contrib-python
(此为清华的镜像院源)
更多的国内镜像点击参考

2 函数名发生了变化
将原本的:

face_recognizer = cv2.face.createLBPHFaceRecognizer()

改为:

ace_recognizer = cv2.face.LBPHFaceRecognizer_create()

即可

3 但上述的方法都没有解决我的问题
通过多次的下载,让我碰巧解决我自己的问题

即先将已经下载好的 opencv-python 中移除,再重新下载 opencv-contrib-python 的包,静等一会就可以了(下载方法同上)

总结

1 问题的主要原因应该是只能使用优先下载的 OpenCV 库,当第一个下载好时会自动与其绑定。
2 其实并不是什么大问题,但它还是困扰了我好几个小时,在网上搜索的回答也绝大多数都只说了需要下载 opencv-contrib-python 的包,但并没有说需要提起移除该解释器下的 opencv-python。
3 其实也是自己问题,在最开始安装OpenCV库时没有去辨别两个版本的区别,在一些安装教程的博文里也有博主写到 opencv-python 只是一个基础版,推荐安装 opencv-contrib-python,但当时为了省事就安装了基础版~

你可能感兴趣的:(人脸识别项目,python)