Raspbian搭建python + opencv環境
阿新 • • 發佈:2019-02-15
環境:raspberry 3b + raspbian jessie
結果:環境搭建完以後,執行如下命令,就會進入帶有opencv的python虛擬環境。
source ~/.profile
workon cv
1. 安裝依賴項
一些開發工具
sudo apt-get install build-essential git cmake pkg-config
安裝一些圖片的I/O包
sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
安裝一些vedio的I/O包
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev sudo apt-get install libxvidcore-dev libx264-dev
安裝一些圖形工具庫GTK
sudo apt-get install libgtk2.0-dev
安裝一些opencv的內部庫,例如矩陣操作
sudo apt-get install libatlas-base-dev gfortran
安裝python2.7 和 python 3的一些開發工具
sudo apt-get install python2.7-dev python3-dev
2. 獲取opencv原始碼
獲取opencv原始碼
cd ~/ wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.0.0.zip unzip opencv.zip
獲取opencv_contrib原始碼,務必保證與opencv的版本一致(opencv3.0.0 配 opencv_contrib3.0.0)
wget -O opencv_contrib.zip https://github.com/Itseez/opencv_contrib/archive/3.0.0.zip
unzip opencv_contrib.zip
3. 創造 python 虛擬環境
3.1安裝和配置virtualenv 和 virtualenvwrapper
安裝pip
wget https://bootstrap.pypa.io/get-pip.py sudo python get-pip.py
安裝virtualenv 和 virtualenvwrapper
sudo pip install virtualenv virtualenvwrapper
sudo rm -rf ~/.cache/pip
設定virtualenv的啟動, 修改~/.profile檔案:
sudo vim ~/.profile
在最後加上這兩行
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
重新載入~/.profile
source ~/.profile
3.2建立env
建立env
mkvirtualenv cv # python2.7的環境
或
mkvirtualenv cv -p python3 # python3的環境
進入·env環境:
source ~/.profile
workon cv
進入以後,命令列前面會多個(cv)
安裝numpy
pip install numpy
4. 編譯和安裝opencv
確保在虛擬cv環境中,如果不在請 workon cv
編譯opencv, 先build
cd ~/opencv-3.0.0/
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_C_EXAMPLES=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.0.0/modules \
-D BUILD_EXAMPLES=ON ..
開始編譯:
make -j4 # 樹莓派2以上有4個核
開始安裝
sudo make install
sudo ldconfig
5. 為python配置opencv
至此opencv基本安裝好,並且opencv也給系統的python添加了軟連線,用如下命令檢視
# for python2.7
ls -l /usr/local/lib/python2.7/site-packages/
total 1640
-rw-r--r-- 1 root staff 1677024 Oct 15 19:11 cv2.so
# for python3.4
ls -l /usr/local/lib/python3.4/site-packages/
total 1636
-rw-r--r-- 1 root staff 1674656 Oct 15 19:11 cv2.cpython-34m.so
但是我們要為virtualenv中的python引入軟連線,需要手動進行:
# for python2.7
cd ~/.virtualenvs/cv/lib/python2.7/site-packages/
ln -s /usr/local/lib/python2.7/site-packages/cv2.so cv2.so
# for python3.4
cd ~/.virtualenvs/cv/lib/python3.4/site-packages/
ln-s/usr/local/lib/python3.4/site-packages/cv2.socv2.so
6.驗證是否安裝成功
在shell中
$ workon cv
$ python
>>> import cv2
>>> cv2.__version__
'3.0.0'
這就安裝成功了!
最後把安裝包刪了
cd ~/
rm opencv_contrib.zip opencv.zip get-pip.py
rm -r opencv_contrib-3.0.0/ opencv-3.0.0/