学習データを coffee.pkl に保存します。
clf = RandomForestClassifier() clf.fit(x_train, y_train) joblib.dump(clf, 'coffee.pkl')
学習データの画像とは別に判定したいターゲット画像を用意します。
fire_11.jpg
black_11.jpg
georgia_11.jpg
学習データを作ったように同じようリサイズ、リシェイプして判定(predict)します。
import cv2 import joblib def predict_coffee(filename): clf = joblib.load("coffee.pkl") path = "img/target/" img = cv2.imread(path + filename) img = cv2.resize(img, (48, 64)) img = img.reshape((-1, 9216)) res = clf.predict(img) if res[0] == 0: print(filename + " = BLACK無糖") elif res[0] == 1: print(filename + " = FIRE微糖") else: print(filename + " = Georgia blend") predict_coffee("black_11.jpg") predict_coffee("fire_11.jpg") predict_coffee("georgia_11.jpg")
$ python3 app.py
black_11.jpg = BLACK無糖
fire_11.jpg = FIRE微糖
georgia_11.jpg = Georgia blend
やば。。。。
blackに関しては、”Black”の文字ないのに判定できちゃうんだ。。。
ちょっと人生頑張ってみるわ。。