人脸识别1:基于OpenCv的人脸识别(Python完整代码)-CSDN博客
测试错误1:
cv2.face.LBPHFaceRecognizer_create() AttributeError: module ‘cv2‘ has no attribute ‘face?
错误分析:?opencv-python包版本迭代,部分变量名不同版本不同,换成相应版本即可
解决:
pip uninstall opencv-python
pip uninstall opencv-contrib-python
pip install opencv-python==4.5.4.58
pip install opencv-contrib-python==4.5.4.58
安装慢的话,可以加上镜像
pip install opencv-python==4.5.4.58 -i https://pypi.tuna.tsinghua.edu.cn/simple
测试错误2:
id_dict[int(id_name[0])] = id_name[1]
ValueError: invalid literal for int() with base 10: ''
错误分析:?
这个错误表示你试图将一个空字符串('')转换为整数,这是不可能的。int()
?函数只能将包含数字的字符串转换为整数。错误的代码部分是?int(id_name[0])
。如果?id_name[0]
?是一个空字符串,那么就会出现这个?ValueError
。
解决:添加一个检查来确保?id_name[0]
?不是一个空字符串,或者捕获这个异常并适当地处理它。
try:
id_dict[int(id_name[0])] = id_name[1]
except ValueError:
print(f"无法将 {id_name[0]} 转换为整数。")
测试错误3:
recognizer.read(yml)
cv2.error: OpenCV(4.5.4-dev) D:\a\opencv-python\opencv-python\opencv_contrib\modules\face\src\facerec.cpp:61: error: (-2:Unspecified error) File can't be opened for reading! in function 'cv::face::FaceRecognizer::read'
?错误分析:尝试使用OpenCV的FaceRecognizer读取一个文件时遇到了错误。错误消息是 "File can't be opened for reading!",程序无法找到或打开指定的文件。这里就是找不到训练保存的yml,仅训练了一次,文件名为7.yml,我需要打开这个文件
?解决:直接添加代码位置即可
recognizer.read('D:/face-recognition-cv2-master/7.yml')
?人脸识别2:python基于opencv和tkinter实现人脸识别【内附完整代码】_python人脸检测代码-CSDN博客
测试错误1:找不到person
错误分析:只有代码,没有人脸文件
解决:建立penson文件夹,并放入需要测试人的图片(jpg格式)