PythonでOpenCVを使おうとして ImportError: No module named cv って言われたら
環境
なにごと?
Pythonを覚えたら、やっぱりOpenCVやりたくなるじゃないですか。
で、おもむろにOpenCVを BUILD_PYTHON_SUPPORT=ON
にしてインストールし、意気揚々とPythonを起動して
import cv
ってやるじゃないですか。
>>> import cv Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named cv
エラーになるじゃないですか。
なんでかなーと思ってPythonのモジュールのパスを調べてみると
>>> import sys >>> print sys.path ['', '/usr/local/lib/python2.7/dist-packages/ipython-0.13.1-py2.7.egg', (以下略)]
OpenCVのPythonモジュールのパスが含まれてなさそうです。
OpenCVのPythonモジュールは、OpenCVをインストールしたディレクトリ配下の lib/python2.7/dist-packages
にあるので、
このディレクトリを sys.path
に追加してみます。
>>> import sys >>> sys.path.append("/path/to/opencv/lib/python2.7/dist-packages") >>> import cv >>> cv.LoadImage("lenna.png") <iplimage(nChannels=3 width=512 height=480 widthStep=1536 )> >>>
どうやらできたっぽいですね。
OpenCVのモジュールを使うたびに毎回これをやるのは面倒なので、$PYTHONPATH
にパスを追加しておきましょう。
.zshrcとかに
export PYTHONPATH=/path/to/opencv/lib/python2.7/dist-packages:$PYTHONPATH
って書いておけばよいです。