進行本文配置之前晓猛,請完成系統(tǒng)安裝(參考鏈接)
1.更換apt鏡像源
- 打開命令行鄙陡,安裝vim(也可以安裝nano)
sudo apt-get install vim
- 編輯apt的配置文件
sudo vim /etc/apt/sources.list
- 按Insert鍵進入編輯模式,保存為Ctrl+C煞赢,然后輸入" :wq "
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main contrib non-free rpi
- 保存后在命令行輸入
sudo vim /etc/apt/sources.list.d/raspi.list
- 變更文件內(nèi)容為
deb http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
deb-src http://mirror.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
2.更新apt
在命令行輸入
sudo apt-get update
sudo apt-get upgrade
3.更換pip源
系統(tǒng)已內(nèi)置pip3偷溺,本人用的是python3.5(推薦python3.4以上版本)
- 命令行輸入
sudo vim /etc/pip.conf
- 變更文件內(nèi)容為(這里使用的是阿里云源,也可以使用清華源悴势,豆瓣源等源地址)
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
4.安裝numpy(我的默認有窗宇,如果沒有直接安裝就好)
sudo pip3 install numpy
5.擴大TF卡的空間
我的16G直接就是默認全部,如果你的不是特纤,按照下面的擴展就行
- 命令行輸入
sudo raspi-config
- 選擇 " Advanced Options " 然后選擇" Expand Filesystem "然后重啟樹莓派
增大swap空間
修改/etc/dphys-swapfile文件军俊,增大交換空間,以免編譯ROS源碼時出現(xiàn)內(nèi)存不足現(xiàn)象叫潦。將CONF_SWAPSIZE 修改為 2048
CONF_SWAPSIZE=2048
6.安裝Opencv配置所需依賴庫
sudo apt-get install build-essential git cmake pkg-config -y
sudo apt-get install libjpeg8-dev -y
sudo apt-get install libtiff5-dev -y
sudo apt-get install libjasper-dev -y
sudo apt-get install libpng12-dev -y
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev -y
sudo apt-get install libgtk2.0-dev -y
sudo apt-get install libatlas-base-dev gfortran -y
7.下載OpenCV庫和Contrib庫(建議在其他環(huán)境下載然后拷貝過來,在線下載特別慢)
我用的是opencv3.4蝇完,可以自行下載其他版本
https://github.com/Itseez/opencv/archive/3.4.0.zip
https://github.com/Itseez/opencv_contrib/archive/3.4.0.zip
8.cmake源碼
解壓后在opencv-3.4.0文件夾里創(chuàng)建build文件夾,然后在命令行里面cd到此文件夾
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=/home/pi/Downloads/opencv_contrib-3.4.0/modules -D BUILD_EXAMPLES=ON -D WITH_LIBV4L=ON ..
- 此處注意幾點4H铩6掏伞!
- 這個你要去替換成你自己的相對的路徑
OPENCV_EXTRA_MODULES_PATH=/home/pi/Downloads/opencv_contrib-3.4.0/modules
- " WITH_LIBV4L=ON " 這個依我個人經(jīng)驗傻咖,有地方有用朋魔,有地方也有點bug(網(wǎng)絡(luò)攝像頭cap的image會有error,xx bytes的溢出卿操,但是不影響程序運行)警检,具體我也很懵逼。害淤。扇雕。
9. 編譯安裝
有說不要使用make -j4加速方法的,非常容易報錯窥摄。我用了沒錯镶奉,可以試試~~
make && sudo make install
在這里你會發(fā)現(xiàn)會編譯失敗,提示fatal error: boostdesc_bgm.i: No such file or directory的錯誤。這是因為前面cmake時因為網(wǎng)絡(luò)等原因無法下載 boostdesc 和 vgg_generated 下的 boostdesc_lbgm 和 vgg_generated 文件導(dǎo)致找不到文件而編譯失敗哨苛。
可以自行下載https://github.com/opencv/opencv_3rdparty/branches/stale?page=1
下載: “contrib_xfeatures2d_vgg_20160317” and "contrib_xfeatures2d_boostdesc_20161012"兩個文件并將解壓后的文件中的所有.i文件復(fù)制到opencv_contrib-3.4.0/modules/xfeatures2d/src目錄下鸽凶。
然后重新make,執(zhí)行
sudo ldconfig
10.最后
因編譯后的庫文件cv2.so被輸出為cv2.cpython-35m-arm-linux-gnueabihf.so建峭,這將導(dǎo)致該模塊在Python3中無法import進來
我們到該庫文件的安裝目錄/usr/local/lib/python3.5/site-packages/下玻侥,將其重命名為cv2.so:
主要參考下面的大神們
https://www.cnblogs.com/Pyrokine/p/8921285.html
http://www.reibang.com/p/3180a253fe3c