Anaconda OpenCV与dlib人脸检测

Anaconda OpenCV与dlib人脸检测,anaconda,python-3.5,opencv3.0,face-detection,dlib,Anaconda,Python 3.5,Opencv3.0,Face Detection,Dlib,我正在使用链接中提到的代码: 我使用opencv3和dlib在Anaconda Python3.5上执行它,但我得到以下错误: rect=dlib.rectangle(x,y,x+w,y+h) which is Boost.Python.ArgumentError: Python argument types in rectangle.__init__(rectangle, numpy.int32, numpy.int32, numpy.int32, numpy.int32) did not

我正在使用链接中提到的代码:

我使用opencv3和dlib在Anaconda Python3.5上执行它,但我得到以下错误:

rect=dlib.rectangle(x,y,x+w,y+h) which is Boost.Python.ArgumentError: Python argument types in rectangle.__init__(rectangle, numpy.int32, numpy.int32, numpy.int32, numpy.int32) did not match C++ signature: __init__(_object*, long left, long top, long right, long bottom) __init__(_object*)
我使用以下方法更改了参数的类型:

x,y,w,h =rects[0].astype('long')

但同样的错误依然存在。请提供帮助。

Dlib附带了完整的示例程序,演示了如何执行此操作。您应该参考该代码,因为它是正确的:


此外,这里还有其他python示例程序。它们都正确运行:

我所指的代码是最常用的代码之一,我得到的错误是dlib需要长类型的参数,因此即使在类型转换之后,我也会得到相同的错误。所以我只是想调试它。如果你能帮忙的话。如果它不工作,它怎么可能是“最常用的代码”呢?但一定有办法让这些代码工作……只是想解决Python 3和dlib的问题。dlib与Python 3配合很好。你的代码错了。dlib网站上的python代码确实可以做到这一点,这在我的答案中。使用它。