前提・実現したいこと
犬と猫の画像分析の制度をあげようと角度を変えたり反転をしてりしていたところ以下のメッセージが届きました。
発生している問題・エラーメッセージ
C:\Users\Owner\anaconda3\envs\tf140\lib\site-packages\numpy\core\_asarray.py:136: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequenc es (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dty pe=object' when creating the ndarray return array(a, dtype, copy=False, order=order, subok=True)
該当のソースコード
python
1from PIL import Image 2import os, glob 3import numpy as np 4from sklearn import model_selection 5classes = ['cat','dog'] 6numclasses = len(classes) 7image_size = 50 8num_testdata = 25 9X_train = [] 10X_test = [] 11Y_train = [] 12Y_test = [] 13 14for index, class_label in enumerate(classes): 15 photos_dir = "./" + class_label 16 files = glob.glob(photos_dir + "/*.jpg") 17 for i, file in enumerate(files): 18 if i >= 30: break 19 image = Image.open(file) 20 image = image.convert("RGB") 21 image = image.resize((image_size, image_size)) 22 data = np.asarray(image) 23 24 if i < num_testdata: 25 X_test.append(data) 26 Y_test.append(index) 27 else: 28 for angle in range(-20, 20, 5): 29 img_r = image.rotate(angle) 30 data = np.asarray(img_r) 31 X_train.append(data) 32 Y_train.append(index) 33 34 img_trans = img_r.transpose(Image.FLIP_LEFT_RIGHT) 35 data = np.asarray(img_trans) 36 X_train.append(data) 37 Y_train.append(index) 38 39 #X.append(data) 40 #Y.append(index) 41X_train = np.array(X_train) 42X_test = np.array(X_test) 43y_train = np.array(Y_train) 44y_test = np.array(Y_test) 45 46#X_train, X_test, y_train, y_test = model_selection.train_test_split(X,Y) 47xy = (X_train,X_test,y_train, y_test) 48np.save("./animal_aug.npy", xy) 49
試したこと
dtypeをいろいろ変えたのですがうまくいきませんでした。よろしくお願いします。
提示コードのどこでエラーが発生したかわからないので、エラーは全文(Traceback)を提示ください。
(tf140) C:\Users\Owner\PycharmProjects\animals classfier>python gene_data_augmented.py
C:\Users\Owner\anaconda3\envs\tf140\lib\site-packages\numpy\core\_asarray.py:136: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequenc
es (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dty
pe=object' when creating the ndarray
return array(a, dtype, copy=False, order=order, subok=True)
すみませんこれがterminal上で出てきた全文です。
よく見たらエラーではなくワーニングですね。
だと、どの部分で発生したかメッセージだけでは分かりませんね。失礼しました。
こちらこそお手数おかけしました。ワーニングならあまり気にしなくて大丈夫なんですか?
あなたの回答
tips
プレビュー