前提・実現したいこと
python3.7.2をvscodeを用いて実行しています。
プログラムの内容は手書き文字の学習済みモデルに対しopenCVを用いて
画像を読み取り、答えを返すようなプログラムです。
いろいろなウェブサイトなどを参考にし、調べてみたのですが、解決ができず質問いたしました。
実現したいことは
openCVをpython3.7.2で使用することです。
初めての質問なので、至らないところも多々ありますが、ご回答よろしくお願いいたします。
発生している問題・エラーメッセージ
[Running] python -u "c:\Python\code\number_sample_test.py"
Traceback (most recent call last):
File "c:\Python\code\number_sample_test.py", line 1, in <module>
import cv2
File "c:\Python\code\cv2_init_.py", line 89, in <module>
bootstrap()
File "c:\Python\code\cv2_init_.py", line 79, in bootstrap
import cv2
ImportError: DLL load failed: �w�肳�ꂽ���W���[����������܂���B
[Done] exited with code=1 in 0.794 seconds
該当のソースコード
import cv2
from sklearn.externals import joblib
def predict_digit(filename):
clf = joblib.load("digits.pkl")
画像を読み込む
my_img = cv2.imread(filename)
グレースケールに変換する
my_img = cv2.cvtColor(my_img, cv2.COLOR_BGR2GRAY)
8 * 8のサイズに変換する
my_img = cv2.resize(my_img,(8,8))
白黒反転する
my_img = 15 - my_img // 16
二次元を一次元に変換
my_img = my_img.reshape((-1,64))
res = clf.predict(my_img)
return res[0]
n = predict_digit("C:/Python/code/number_png/number.png")
print("number.png = " + str(n))
試したこと
import cv2
cv2.version
上記のプログラムを実行しましたが同様のエラーが発生してしまいました。
また、vscodeには
Module 'cv2' has no 'imread' member
のように、問題点として、cv2を記述した部分全てに赤波線が出てきました。
また、
pip listにより、openCVがインストールできているかどうかを確かめたところ
opencv-python 4.0.0.21
という風に表示がなされていました。
補足情報(FW/ツールのバージョンなど)
openCVは
pip install opencv-python
により、vscodeのターミナル上からインストールをしました。
python2.7,Anacondaを途中でインストールしました。
しかし、エラーの内容は全く変わりませんでした。
setting.json
{
"[python]": {},
"python.pythonPath": "C:\Python\Python37",
"workbench.colorTheme": "Solarized Dark"
}
上記のように設定しております。