2017-11-01 28 views
0

私は以下のようにビデオファイルを実行しようとしています。TypeError: 'float'オブジェクトは整数として解釈できません(Python 3.4バージョン)

$ /usr/bin/python3.4 /home/ramakrishna/PycharmProjects/Lanedect/driving-lane-departure-warning-master/main.py 
Traceback (most recent call last): 

    File "/home/ramakrishna/PycharmProjects/Lanedect/driving-lane-departure-warning-master/main.py", line 19, in <module> 
    img_aug = process_frame(img) 

    File "/home/ramakrishna/PycharmProjects/Lanedect/driving-lane-departure-warning-master/lane.py", line 615, in process_frame 
    output = create_output_frame(offcenter, pts, img_undist_, fps, curvature, curve_direction, binary_sub) 

    File "/home/ramakrishna/PycharmProjects/Lanedect/driving-lane-departure-warning-master/lane.py", line 467, in create_output_frame 
    whole_frame = np.zeros((h*2.5,w*2.34, 3), dtype=np.uint8) 

TypeError: 'float' object cannot be interpreted as an integer 
+1

エラーが発生するコードを入力してください。 –

+0

'whole_frame = np.zeros(h * 2.5、w * 2.34,3)、dtype = np.uint8)'という行の間違いは、配列の次元として浮動小数点数を設定しようとしていることです。配列の次元は整数です。 –

+0

浮動小数点値はどのように保持できますか? – Ayysh

答えて

1

以下はエラーの原因です。 h*2.5w*2.34floatとして評価しながら

np.zeros((h*2.5,w*2.34, 3), dtype=np.uint8) 

np.zerosは、整数としての寸法を期待します。あなたが望むなら、int()を使って整数に引数をキャストすることができます。

+0

浮動小数点値はどのように保持できますか? – Ayysh

+0

これらの値を新しい変数に代入し、必要に応じて使用するか、再計算します。 –

+0

まだ同じエラーが発生しています – Ayysh

0

最後に解決策を得ました。最初は浮動値を3と2にそれぞれ3.5と3.24に置き換えようとしました。しかし、これらの値が合計フレーム寸法を減らすとエラーが発生しました。それを np.zeros (h * 3、w * 3,3)、dtype = np.uint8)と動作します!!

関連する問題