這裏假定你已經有了Raspberry Pi 2/B+,且已經安裝好。如果沒有的話,我建議你買一個,它們既便宜也好玩。
個人來說,我更願意多花一點錢從Canakit買。他們的物流很快也比較可靠,加之他們的 ready-to-go服務也很好。
好吧,我們開始OpenCV和Python的安裝
步驟0:
我們假定你已經打開Raspberry Pi 2/B+。打開終端,我們先更新和升級已安裝的軟件包,然後更新Raspberry Pi固件。
1
2
3
|
$ sudo apt - get update $ sudo apt - get upgrade $ sudo rpi - update |
步驟1:
安裝所需的安裝工具和包:
1
|
$ sudo apt - get install build - essential cmake pkg - config |
build-essential 和 pkg-config可能都已經安裝。以防萬一,我們還是將它們鍵入apt-get命令中。
耗時:
Raspberry Pi B+:小於2分鐘
Raspberry Pi 2:小於40秒
步驟2:
安裝必要的圖像I/O包,這樣你纔可以讀入JPEG,PNG,TIFF等這些格式的圖像。
1
|
$ sudo apt - get install libjpeg8 - dev libtiff4 - dev
libjasper - dev libpng12 - dev |
耗時:
Raspberry Pi B+: 小於5鍾
Raspberry Pi 2: 小於30秒
步驟3:
安裝GTK開發庫,這個庫用來構建GUI。同時OpenCV中的highgui庫也需要它來在屏幕上顯示圖像。
1
|
$ sudo apt - get install libgtk2. 0 - dev |
耗時:
Raspberry Pi B+: 小於10分鐘
Raspberry Pi 2:小於3分鐘
步驟4:
安裝必要的視頻I/O包,OpenCV需要它們來讀入視頻文件。
1
|
$ sudo apt - get install libavcodec - dev libavformat - dev
libswscale - dev libv4l - dev |
耗時:
Raspberry Pi B+: 小於5分鐘
Raspberry Pi 2: 小於30秒
步驟5:
安裝OpenCV優化操作時所需庫。
1
|
$ sudo apt - get install libatlas - base - dev
gfortran |
耗時:
Raspberry Pi B+:小於2分鐘
Raspberry Pi 2:小於30秒
步驟6:
安裝pip:
1
2
|
$ wget https: / / bootstrap.pypa.io / get - pip.py $ sudo python get - pip.py |
耗時:
Raspberry Pi B+:小於2分鐘
Raspberry Pi 2:小於30秒
步驟7:
安裝virtualenv和virtualenvwrapper
1
|
$ sudo pip install virtualenv virtualenvwrapper |
然後,更新~/.profile文件如下:
1
2
|
export WORKON_HOME = $HOME / .virtualenvs source / usr / local / bin / virtualenvwrapper.sh |
重新載入.profile文件:
1
|
$ source ~ / .profile |
創建你的計算機視覺虛擬環境
1
|
$ mkvirtualenv cv |
耗時:
Raspberry Pi B+: 小於2分鐘
Raspberry Pi 2: 小於2分鐘
步驟8:
現在我們安裝Python 2.7開發工具:
1
|
$ sudo apt - get install python2. 7 - dev |
注意:我們將使用Python2.7。因爲OpenCV 2.4.X不支持Python 3,也不太清楚OpenCV 3.0的python接口什麼時候才能完善。所以我建議現在還是使用OpenCV2.4.X的好。
我們也需要安裝NumPy,因爲OpenCV的Python接口通過Numpy的多維數組來表示圖像。
1
|
$ pip install numpy |
耗時:
Raspberry Pi B+: 小於45分鐘
Raspberry Pi 2: 小於15分鐘
步驟9:
下載和解壓OpenCV:
1
2
3
|
$ wget - O opencv - 2.4 . 10.zip http: / / sourceforge.net / projects / opencvlibrary / files / opencv - unix / 2.4 . 10 / opencv - 2.4 . 10.zip / download $ unzip opencv - 2.4 . 10.zip $ cd opencv - 2.4 . 10 |
安裝:
1
2
3
|
$ mkdir build $ cd build $ cmake - D CMAKE_BUILD_TYPE = RELEASE - D
CMAKE_INSTALL_PREFIX = / usr / local - D BUILD_NEW_PYTHON_SUPPORT = ON - D
INSTALL_C_EXAMPLES = ON - D INSTALL_PYTHON_EXAMPLES = ON - D
BUILD_EXAMPLES = ON .. |
耗時:
Raspberry Pi B+: 小於3分鐘
Raspberry Pi 2: 小於1.5分鐘
編譯OpenCV:
1
|
$ make |
重要:確定你在cv虛擬環境中,OpenCV也要根據該環境中的Python和NumPy中進行編譯。否則的話,OpenCV就會和系統中的Python和NumPy編譯在一起,會產生各種問題。
耗時:
Raspberry Pi B+: 小於 9.5 小時
Raspberry Pi 2: 小於2.8小時
最後,我們安裝OpenCV:
1
2
|
$ sudo make install $ sudo ldconfig |
耗時:
Raspberry Pi B+: 小於 3分鐘
Raspberry Pi 2: 小於1分鐘
步驟10:
進行到這一步的時候,OpenCV已經應該已經安裝到/usr/local/lib/python2.7/site-packages中了。
但是爲了在cv虛擬環境中使用OpenCV,我們先需要符合鏈接到我們的site-packages目錄:
1
2
3
|
$ cd ~ / .virtualenvs / cv / lib / python2. 7 / site - packages / $ ln - s / usr / local / lib / python2. 7 / site - packages / cv2.so
cv2.so $ ln - s / usr / local / lib / python2. 7 / site - packages / cv.py
cv.py |
步驟11:
最後,我們測試一下OpenCV和Python的安裝:
1
2
3
4
5
|
$ workon cv $ python >>> import cv2 >>> cv2.__version__ '2.4.10' |
OpenCV和Python已經成功安裝到你的Raspberry Pi了。
這是在我的Raspberry Pi上的運行例子,我ssh登錄到 Raspberry Pi,然後讀取和顯示一幅圖像。