画像ファイルから数値を予測するプログラム
ここに実現したいことを箇条書きで書いてください。
-エラーが出ないようにする
前提
ここに質問の内容を詳しく書いてください。
パイソン一年生の教材を使って前記のプログラムを作ろうと思っていますが、エラーの連続で上手くできません。まだ、エラーコードも分からないような初心者です。どうかお手柔らかにご指導のほどよろしくお願いします。
発生している問題・エラーメッセージ
[Errno 2] No such file or directory: '2.png'
該当のソースコード
Python
書いたコードは以下の通りです。
import sklearn.datasets
import sklearn.svm
import PIL.Image
import numpy
#画像ファイルを数値リストに変換
def imageToData(filename):
#画像を8x8のグレースケールに
greyImage=PIL.Image.open(filename).convert("L")
greyImage=grayImage.resize((8,8),PIL.image.Resampling.LANCZOS)
#数値リストに変換
numImage=numpy.asarray(grayImage, dtype=float)
numImage=16 -numpy.floor(17*numImage/256)
numImage=numImage.flatten()
return numImage
#数字を予測
def predictDigits(data):
#学習用データを読み込む
digits=sklearn.datasets.load_digits()
#機械学習をする
clf =sklearn.svm.SVC(gamma =0.001)
clf.fit(digits.data, digits.target)
#予測変換を表示
n =clf.predict([data])
print("予測=",n)
#画像ファイルを数値リストに変換
data =imageToData("2.png")
#数字を予測
predictDigits(data)
試したこと
間違い探しは何度もしましたが、エラーの箇所が見つかりません
0 コメント