今回はOpenCVのお話。
写真撮ったり、動画撮ったり画像処理、解析したりするときに使う有名なライブラリ。
OpenCVをpythonで使う際に
import cv2でimportした際に出てきたエラーとその解決策をまとめておく。参考にどうぞ。
目次
ModuleNotFoundError
ModuleNotFoundError: No module named 'cv2'
これはもう有名なエラー。
python触ったことがある人は必ずこのエラーに直面したことはあるはず。
はいはい。このエラーね。3秒で対処法は思いつくはず。
pipで対応するモジュールをインストールするだけでOK(初心者の方は覚えておいて)
pip3 install opencv-pythonImportError: libjasper.so.1
ImportError: libjasper.so.1: cannot open shared object file: No such file or directory
pipでインストールは行ったが、それでもエラーが出てきた。
そもそもOpenCVを使う際に必要な関連するライブラリが足りないとか、そんなことだろう。
apt-getでインストールしてやればいい。
sudo apt-get install libjasper-devImportError: libQtGui.so.4
ImportError: libQtGui.so.4: cannot open shared object file: No such file or directory
まだ、OpenCVを使う際に必要な関連するライブラリが足りないらしい。
この場合もまた、apt-getでインストールしてやればいい。
sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig libqt4-testImportError: libcblas.so.3
ImportError: libcblas.so.3: cannot open shared object file: No such file or directory
まだまだ、OpenCVを使う際に必要な関連するライブラリが足りないらしい。
これいつまで続くの..。永遠とapt-get地獄か?割とライブラリインストールに時間かかるし...。
この場合もまたまた、apt-getでインストールしてやればいい。
sudo apt-get install libatlas-base-devImportError: undefined symbol: __atomic_fetch_add_8
ImportError: /lib/python3.7/site-packages/cv2/cv2.cpython-37m-arm-linux-gnueabihf.so: undefined symbol: __atomic_fetch_add_8
apt-get系のエラーではなさそう。ようやくapt-get地獄は抜けたようだ。
今回のエラーはどうやらパスが上手く噛み合ってない際に出るエラーのようだ。
環境変数としてパスを設定してあげます。.bashrcに記述を行います。
$ vi .bashrc
export LD_PRELOAD=/usr/lib/arm-linux-gnueabihf/libatomic.so.1 #この一文を追加記述が終わったら、再読み込みさせ反映を行います。
source .bashrc
これで、一通りpythonでOpenCVを扱った際に出るエラーには対応できるかと思います。
まだまだマニアックなエラーがありましたら、報告下さい。
ばいちゃ。


コメント