2017-05-18 9 views
0
def drawRedRectangleAroundPlate(imgOriginalScene, licPlate): 

    p2fRectPoints = cv2.boxPoints(licPlate.rrLocationOfPlateInScene)   # get 4 vertices of rotated rect 

    cv2.line(imgOriginalScene, tuple(p2fRectPoints[0]), tuple(p2fRectPoints[1]), SCALAR_RED, 2)   # draw 4 red lines 
    cv2.line(imgOriginalScene, tuple(p2fRectPoints[1]), tuple(p2fRectPoints[2]), SCALAR_RED, 2) 
    cv2.line(imgOriginalScene, tuple(p2fRectPoints[2]), tuple(p2fRectPoints[3]), SCALAR_RED, 2) 
    cv2.line(imgOriginalScene, tuple(p2fRectPoints[3]), tuple(p2fRectPoints[0]), SCALAR_RED, 2) 
    # end function 

私はラズベリーパイでこれを実行すると、私は私の推測では、あなたのp2fRectPointsのそれぞれが、代わりにint型タイプのフロートが含まれている「予想整数の引数がfloatを得た」というラズベリーpi.whatで実行中に "integer argument expected float"が発生する可能性がありますか?

+1

完全なトレースバックを含めるように質問を編集してください。 – iled

答えて

0

をエラーを取得しています。
これを試してください:
def drawRedRectangleAroundPlate(imgOriginalScene, licPlate): # get 4 vertices of rotated rect p2fRectPoints = cv2.boxPoints(licPlate.rrLocationOfPlateInScene) # convert float arrays to int tuples for use with cv2.line() p0 = (int(p2fRectPoints[0][0]), int(p2fRectPoints[0][1])) p1 = (int(p2fRectPoints[1][0]), int(p2fRectPoints[1][1])) p2 = (int(p2fRectPoints[2][0]), int(p2fRectPoints[2][1])) p3 = (int(p2fRectPoints[3][0]), int(p2fRectPoints[3][1])) # draw 4 red lines cv2.line(imgOriginalScene, p0, p1, SCALAR_RED, 2) cv2.line(imgOriginalScene, p1, p2, SCALAR_RED, 2) cv2.line(imgOriginalScene, p2, p3, SCALAR_RED, 2) cv2.line(imgOriginalScene, p3, p0, SCALAR_RED, 2)

+0

やっぱり!出来た –

関連する問題