前提・実現したいこと
私は、オリジナル画像で画像認識を行いたいと思っています。
ほぼコード自体は完成しているのですが、最後の確認用のところがどのようにすればよいか困ってしまいました。
今までは、1枚のテスト用データを判定して、「これは、〇〇です。」
という風に表示させていたのですが、
4枚のテスト用データ(映っているものは同じで、ポーズや種類が違う)ものをまとめて
4枚で「これは、〇〇です。」という風にしたのですが、どのようにすればよいでしょうか?
発生している問題・エラーメッセージ
4枚で1つの答えを出したいです。 1枚1枚確認して、確率的にではなく、4枚を確認した結果、「これは、〇〇です。」 という風にしたいと思っています。 もしできるのであれば、やり方を知りたいです。
該当のソースコード
Python
1 2from PIL import Image 3import numpy as np 4from keras.models import load_model 5import matplotlib.pyplot as plt 6import matplotlib.image as mpimg 7 8imsize = (64, 64) 9 10testpic = "./testdata/dog.jpg" 11keras_param = "./cnn.h5" 12 13def load_image(path): 14 img = Image.open(path) 15 img = img.convert('RGB') 16 img = img.resize(imsize) 17 img = np.asarray(img) 18 img = img / 255.0 19 return img 20 21if __name__ == "__main__": 22 23 model = load_model(keras_param) 24 img = load_image(testpic) 25 prd = model.predict(np.array([img])) 26 27 classes = ["犬","猫","ウサギ","サル"] 28 29 print(classes) 30 31 print(np.round(prd,3)) 32 33 print(np.argmax(prd)) 34 35 prelabel = np.argmax(prd, axis=1) 36 if prelabel == 0: 37 print("犬") 38 elif prelabel == 1: 39 print("猫") 40 elif prelabel == 2: 41 print("ウサギ") 42 elif prelabel == 3: 43 print("サル") 44 45 46
試したこと
フォルダごとテスト用データとし、確認しようとしましたが、エラーが出てしまい、うまくいきません。
エラー文
Invalid argument: './testdata/*.jpg'
ネットでも探してみましたが、やはりそういうものはなく、1つ1つ答えを出すものでした。
回答2件
あなたの回答
tips
プレビュー