2017-02-28 113 views
0

我正在使用的鏈接中提到的代碼:我使用opencv3和DLIB執行它蟒蛇Python3.5OpenCV的和DLIB人臉檢測

OpenCV detect face landmarks (ear-chin-ear line)

,但我得到了以下錯誤:

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') 

我使用改變的參數的類型但同樣的錯誤依然存在。請幫助。

回答

1

Dlib附帶完整的示例程序,顯示如何執行此操作。您應該參考該代碼,因爲它是正確的:http://dlib.net/face_recognition.py.html

此外,這裏還有其他python示例程序。他們都正確運行:https://github.com/davisking/dlib/tree/master/python_examples

+0

我所指的代碼是最常用的代碼之一,我得到的錯誤是,dlib需要long類型的參數,所以即使在類型轉換後,我得到相同的錯誤。所以我只是想調試它,也許你可以幫忙。 –

+0

如果它甚至不起作用,它怎麼會是'最常用的代碼'? –

+0

但是必須有一些方法才能使代碼正常工作......只是很想解決Python 3和dlib。 –