私はたくさんの画像をインポートし、それらをケラスのために準備しようとしています。ここでの目標は、以下の次元の配列を持つことです。 (長さ、160,329,3)。ご覧のとおり、私のリサーブ機能はコメントアウトされています。 「print(images.shape)」行には(8037)が返されます。正しい配列の次元を取得する方法がわかりません。csvファイルの第1列は、問題の画像へのパスのリストです。関数は、フォルダ内の画像のパスとフォルダへのパスを結合します。ケラスのための準備に画像をインポートする
コメントアウトされたリサーブ関数を実行すると、次のエラーが発生します。 "ValueError:サイズ8037の配列をシェイプに変形できません(8037それはあなたが何を期待?さらに良いことがでimshow
を追加することになるされていることを確認するためにimages
に追加される前に、160,320,3)」
import csv
import cv2
f = open('/Users/username/Desktop/data/driving_log.csv')
csv_f = csv.reader(f)
m=[]
for row in csv_f:
n=(row)
m.append(n)
images=[]
for i in range(len(m)):
img=(m[i][1])
img=img.lstrip()
path='/Users/username/Desktop/data/'
img=path+img
image=cv2.imread(img)
images.append(image)
item_num = len(images)
images=np.array(images)
#images=np.array(images).reshape(item_num, 160, 320, 3)
print(images.shape) #returns (8037,)
ので、画像の形状がある(160,320,3)と印刷(images.shapeは)エラー「はAttributeError: 『をリスト』オブジェクトには属性 『形状』を持っていません」を返すループ内Jake3991 @ – Jake3991
あなたは可能です'plt.imshow'を使って画像の1つを表示するには? – hulleywood
ループ内のplt.imshow(image)が次のエラーを返します。TypeError:画像データをfloatに変換できません – Jake3991