プログラミングとかLinuxとかの備忘録

プログラミング、Linuxでハマった箇所や環境構築のメモ

virtualenvでOpenCVを使う

スポンサーリンク

virtualenv上のpipではopencvをインストールできなかったが
Is it possible to run opencv (python binding) from a virtualenv? - Stack Overflow

I found the solution was that I had to copy over cv2.so and cv.py to the directory running the virtualenv, then pip install numpy. To do this on Ubuntu 12.04 I used.

とあった.

仮想環境の作成

$ mkvirtualenv --python /opt/python2.7.11/bin/python2.7 --no-site-packages opencv

OpenCVのインストール

$ sudo dnf -y install opencv-python

システムのPythonを使用してインストールされたパスの確認を行う

$ python -c "import cv; print cv.__file__"
/usr/lib64/python2.7/site-packages/cv.pyc

$ ls /usr/lib64/python2.7/site-packages/ | grep cv
cv.py
cv.pyc
cv.pyo
cv2.so

これらのファイルへのシンボリックリンクを仮想環境内に作成する

$ cd ${WORKON_HOME}/opencv/lib/python2.7/site-packages
$ ln -s /usr/lib64/python2.7/site-packages/cv* ./

ここで,OpenCVで使用するnumpyをインストールする

$ workon opencv
(opencv)$ pip install numpy
Successfully installed numpy-1.10.4

動作確認

$ workon opencv
(opencv)$ python
>>> import cv
>>> import cv2

問題なくimportできた