環境:ubuntu14.04 python2.7
內容:安裝並配置OpenCV3.0
今天按照OpenCV官網上的步驟裝了OpenCV但是,裝好之后python提示“No module named cv2”
首先,安裝OpenCV的步驟:
OpenCV官網的安裝步驟:http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation
1.下載OpenCV:https://codeload.github.com/Itseez/opencv/zip/3.0.0
2.解壓:
1 tar -xzvf opencv3.0.0
3.安裝OpenCV需要的包:
- GCC 4.4.x or later
- CMake 2.6 or higher
- Git
- GTK+2.x or higher, including headers (libgtk2.0-dev)
- pkg-config
- Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
- ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
- [optional] libtbb2 libtbb-dev
- [optional] libdc1394 2.x
- [optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev
1 sudo apt-get install build-essential 2 sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev 3 sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
4.在解壓出來的opcv目錄里,建一個release目錄,然后再用cmake對源碼進行編譯。(使用官網的方法最后OpenCV的安裝目錄就是release這個目錄)
1 cd ~/opencv 2 mkdir release 3 cd release 4 cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. //這里后邊有兩個點不能省略,但是是什么意思我還沒搞懂
5.然后安裝
1 sudo make 2 sudo make install
至此,安裝完成。
然后,解決安裝完成之后,python引用OpenCV出現“No module named cv2”的問題。
這里我主要參考的是這篇博文:http://pinkyjie.com/2010/10/19/ubuntu-opencv-python/
這里先提示以下這個地方,make的過程中會出現這個文件“cv.so”,它是連接OpenCV和python的關鍵文件。
出現“No module named cv2”,原因就是python找不到我們剛才提到的cv.so文件,我們進入路徑/usr/local/lib/python2.7中發現有兩個文件夾,一個是dist-package,一個是site-package,python默認只在前者里搜索,而我們生成的cv.so文件則在我們的安裝目錄"../../opencv3.0.0/release"中(還記得這個目錄吧,就是我們剛才在安裝過程中建的那個目錄,如果你的安裝目錄中沒有這個文件,則說明前面的make步驟出問題了,可能需要重新走一遍整個安裝過程),我們只需要簡單的將它移動到dist-package文件夾即可。
最后,我的測試程序:
1 import cv2 2 3 img = cv2.imread('lena.jpg') 4 cv2.imshow('image',img) 5 k = cv2.waitKey(0) 6 cv2.destroyAllWindows()