module 'cv2.face' has no attribute 'LBPHFaceRecognizer_create'怎么解决
时间: 2023-10-22 17:08:05 浏览: 47
这个错误一般是因为 OpenCV 版本过低导致的,LBPHFaceRecognizer_create 是 OpenCV 3.3.1 版本之后才引入的新特性。你可以尝试更新 OpenCV 至 3.3.1 版本以上,或者使用以下代码替代:
```
recognizer = cv2.face.LBPHFaceRecognizer_create() # OpenCV 3.3.1及以上版本
```
```
recognizer = cv2.face.createLBPHFaceRecognizer() # OpenCV 3.3.0及以下版本
```
如果还有问题,可以尝试检查是否正确安装了 OpenCV-contrib 库。
相关问题
AttributeError: module 'cv2.face' has no attribute 'LBPHFaceRecognizer_create'怎么解决
您遇到的错误是因为在您的代码中使用了cv2.face.LBPHFaceRecognizer_create(),但是cv2模块中并没有LBPHFaceRecognizer_create属性。这可能是因为您使用的OpenCV版本较旧,LBPHFaceRecognizer_create在较新的版本中已被弃用。
要解决这个问题,您可以尝试以下方法之一:
1. 更新OpenCV版本:您可以通过运行以下命令来更新OpenCV到最新版本:
```
pip install --upgrade opencv-python
```
2. 使用新的人脸识别器:LBPHFaceRecognizer_create已被弃用,您可以使用其他人脸识别器如EigenFaceRecognizer或FisherFaceRecognizer。可以使用以下代码示例来创建一个基于EigenFaceRecognizer的人脸识别器:
```python
import cv2
recognizer = cv2.face.EigenFaceRecognizer_create()
```
请根据您的需求选择适合的方法来解决问题。希望能帮到你!
module 'cv2.face' has no attribute 'LBPHFaceRecognizer_create'
这个错误通常是因为您的 OpenCV 版本太低而导致的。在 OpenCV 3.3 之前,`cv2.face` 模块没有 `LBPHFaceRecognizer_create` 函数。如果您的 OpenCV 版本低于 3.3,您可以尝试升级到最新版本或使用 `cv2.createLBPHFaceRecognizer()` 函数来创建 LBPH 人脸识别器。如果您已经使用了最新版本的 OpenCV,那么您可以尝试使用以下代码来解决问题:
```python
recognizer = cv2.face.LBPHFaceRecognizer_create()
if cv2.__version__.startswith('2'):
recognizer = cv2.createLBPHFaceRecognizer()
```
这将检查您的 OpenCV 版本并相应地选择使用 `LBPHFaceRecognizer_create` 函数或 `createLBPHFaceRecognizer` 函数。