error with cv2.face.mindistancepredictcollector()

放肆的年华 提交于 2019-12-21 20:24:07

问题


I have installed opencv 3.1.0 with extra modules, but when I try to use

>>> s = cv2.face.MinDistancePredictCollector()

it returns an error

Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
s.MinDistancePredictCollector()
AttributeError: 'module' object has no attribute 'MinDistancePredictCollector'

I also checked the documentation:

>>> help(cv2.face)
Help on module cv2.face in cv2:

NAME
    cv2.face

FILE
    (built-in)

FUNCTIONS
    StandardCollector_create(...)
    StandardCollector_create([, threshold]) -> retval

    createEigenFaceRecognizer(...)
    createEigenFaceRecognizer([, num_components[, threshold]]) -> retval

    createFisherFaceRecognizer(...)
    createFisherFaceRecognizer([, num_components[, threshold]]) -> retval

    createLBPHFaceRecognizer(...)
    createLBPHFaceRecognizer([, radius[, neighbors[, grid_x[, grid_y[,    threshold]]]]]) -> retval

and I found out that MinDistancePredictCollector() does not exist. So how can I install it?


回答1:


I just asked the same problem on Github and it can be solved by the following code:

if cv2.__version__ >= "3.1.0":
    collector = cv2.face.StandardCollector_create()
    recognizer.predict_collect(face_img, collector)
    conf = collector.getMinDist()
    pred = collector.getMinLabel()
else:     # older version
    pred, conf = recognizer.predict(face_img)


来源:https://stackoverflow.com/questions/38797210/error-with-cv2-face-mindistancepredictcollector

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!