Desperate struggle667 2022-01-01 11:10 采纳率: 76.2%
浏览 130
已结题

训练识别器时候出的问题,报错是样本和标签不匹配,都是我用print(len())打出来是一个结果

训练识别器时候出的问题,报错是样本和标签不匹配,都是我用print(len())打出来是一个结果,样本和标签数量都是6.

import pymysql
import cv2
import numpy as np
from cv2 import face
import os
import pymysql
#连接数据库
connect = pymysql.connect(host="localhost", user="root", password="root", database="face")
#创建一个游标
cur = connect.cursor()
#查询MySQL中的face表格
userid = "123"
sql = "select ids,sname from face"
cur.execute(sql)
#获取face表中的数据
result= cur.fetchall()
#将从MySQL中读取的数据元组转为字典
result=dict(result)
#提取字典中的key值并转化为列表
keyvalues = list(map(int,result.keys()))
#样本图像列表
photos =list()
#标签列表
lables =list()
wenjianjia = os.listdir("D:/python/opencv/shuju")
num=1
for ids in wenjianjia:
    if num<len(ids)+1:
        photos.append(cv2.imread("D:/python/opencv/shuju/"+ids+"/"+str(num)+".png",0))
        lables.append(keyvalues)
        num+1
print(len(lables))
print(len(photos))
#加载识别器(LBPH)
recognizer=cv2.face.LBPHFaceRecognizer_create()
#识别器训练
recognizer.train(photos,np.array(lables))
#训练结果录入
recognizer.write('./trainer_face.yml')


运行结果:
recognizer.train(photos,np.array(lables))
cv2.error: OpenCV(4.5.4) D:\a\opencv-python\opencv-python\opencv_contrib\modules\face\src\lbph_faces.cpp:375: error: (-5:Bad argument) The number of samples (src) must equal the number of labels (labels). Was len(samples)=6, len(labels)=0. in function 'cv::face::LBPH::train'
6
6

  • 写回答

2条回答 默认 最新

  • 我是周大欣 2022-01-03 09:23
    关注

    num+1改成num+=1,要不然知识第一张图片添加了6次,其次你调试的时候直接打印出列表而不是列表的值会更好

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月11日
  • 已采纳回答 1月3日
  • 创建了问题 1月1日

悬赏问题

  • ¥15 Revit2020下载问题
  • ¥15 使用EMD去噪处理RML2016数据集时候的原理
  • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大
  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)