首页 > 解决方案 > TypeError:“cv2.face_EigenFaceRecognizer”对象不可调用

问题描述

我遇到了一个错误,我不知道是什么原因造成的。请我需要帮助。

def train(self,images,lables, recogType=0):
        self.images = images
        self.lables = np.array(lables)

        'arg = recogType:[cv2.face.LBPHFaceRecognizer_create(),cv2.face.FisherFaceRecognizer_create(),cv2.face.EigenFaceRecognizer_create()'
        recogs = cv2.face.LBPHFaceRecognizer_create(),cv2.face.FisherFaceRecognizer_create(),cv2.face.EigenFaceRecognizer_create()
        self.recognizer = recogs[recogType]()    
        self.recognizer.train(self.images,self.lables)

标签: opencv3.1

解决方案


具体问题在于这一行:

self.recognizer = recogs[recogType]() 

正如错误所说,通过在末尾放置大括号(),您正在尝试调用识别器。将此更改为

self.recognizer = recogs[recogType]

//免责声明 - 可能存在其他问题。


推荐阅读