給ROCK64安裝OpenCV3

前言

以前在作項目時接觸了這塊板,選它的主要緣由是由於它有一個USB3.0的接口(樹莓派只有2.0),而且有和樹莓派差很少的性能,不過這塊板仍是有不少缺點,例如剛出不久,資料不多,特別是國內的資料幾乎沒有,並且系統也不是很完善,因此在裝OpenCV3時遇到了不少坎,裝了我四五天才裝好,以後呢,也在CSDN作了個教程,如今有一個本身的博客了,就把它遷移過來。python

說明

ROCK64配置什麼的就很少說了,系統採用的是官方的Debian系統,安裝過程參考了Satya Mallick的教程,連接爲:www.learnopencv.com/install-ope…linux

安裝步驟

第一步:更新包

sudo apt-get update
sudo apt-get upgrade
複製代碼

這一步執行後會缺乏不少依賴項,不少沒更新,沒安裝,不過不急,先執行下面一步。git

第2步:安裝OS庫

注意下面幾部好幾個可能都會不成功,必定要注意,不能跳過github

安裝失敗的就到這個連接下載:www.debian.org/distrib/pac…(右上角搜索),通常下載穩定版,即stretch(stable)版,固然沒有就下載其餘的,硬件架構必定要arm64,別選成amd了,下載後命令行執行到保存的目錄,安裝deb包(sudo dpkg -i xxx.deb)。ubuntu

# 刪除之前安裝的x264
sudo apt-get remove x264 libx264-dev
# 而後開始安裝依賴項
sudo apt-get install build-essential checkinstall cmake pkg-config yasm
sudo apt-get install git gfortran
sudo apt-get install libjpeg8-dev libjasper-dev libpng12-dev
 
# 若是你的系統是 Ubuntu 14.04
sudo apt-get install libtiff4-dev
# 若是你的系統是 Ubuntu 16.04
sudo apt-get install libtiff5-dev
 
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev
sudo apt-get install libxine2-dev libv4l-dev
sudo apt-get install libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev
sudo apt-get install qt5-default libgtk2.0-dev libtbb-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install libfaac-dev libmp3lame-dev libtheora-dev
sudo apt-get install libvorbis-dev libxvidcore-dev
sudo apt-get install libopencore-amrnb-dev libopencore-amrwb-dev
sudo apt-get install x264 v4l-utils
 
# 可選的依賴項(最好安裝,省得後面缺乏)
sudo apt-get install libprotobuf-dev protobuf-compiler
sudo apt-get install libgoogle-glog-dev libgflags-dev
sudo apt-get install libgphoto2-dev libeigen3-dev libhdf5-dev doxygen
複製代碼

安裝完後在從新執行一次更新包命令,看還缺乏什麼瀏覽器

sudo apt-get update
sudo apt-get upgrade
複製代碼

缺的就去上面的那個連接找,進行手動安裝。不過有兩個會搜不到,linux-rock64linux-rock64-package,這個應該是官方固件庫的升級包的,博主安裝這兩個以後發現顯示屏沒法顯示(具體不知道什麼緣由,有知道的能夠說下),但能開機(即能遠程操控),博主須要使用顯示屏,這兩個沒裝,這個看我的須要,若是你不用顯示屏就裝,連接爲github.com/ayufan-rock…bash

也可直接執行下面兩步進行自動安裝架構

sudo apt-get update -y
sudo apt-get install linux-rock64 -y
複製代碼

第3步:安裝Python庫

# 可選安裝,若是隻要python3就去掉python-pip
sudo apt-get install python-dev python-pip python3-dev python3-pip
sudo -H pip2 install -U pip numpy
sudo -H pip3 install -U pip numpy
複製代碼
# 安裝虛擬環境,將項目環境和全局環境分開,這一般是一種很好的作法。
sudo pip2 install virtualenv virtualenvwrapper
sudo pip3 install virtualenv virtualenvwrapper
echo "# Virtual Environment Wrapper"  >> ~/.bashrc
echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.bashrc
source ~/.bashrc
複製代碼
# 可選,可兩個都裝,必定要虛擬環境
############ Python 2 ############
# 建立虛擬環境
mkvirtualenv facecourse-py2 -p python2
workon facecourse-py2
# 在虛擬環境中安裝python庫
pip install numpy scipy matplotlib scikit-image scikit-learn ipython
# 退出虛擬環境
deactivate
######################################

############ Python 3 ############
# 建立虛擬環境
mkvirtualenv facecourse-py3 -p python3
workon facecourse-py3 
# 在虛擬環境中安裝python庫
pip install numpy scipy matplotlib scikit-image scikit-learn ipython
# 退出虛擬環境
deactivate
######################################
複製代碼

第4步:下載OpenCV和OpenCV_contrib

這兩部可能會出錯(國內可能被牆),多試幾回,也能夠直接瀏覽器下載,不過要注意版本號app

步驟4.1:從Github下載opencv

git clone https://github.com/opencv/opencv.git
cd opencv 
git checkout 3.3.1 	# 注意這個要和下面的版本一致
cd ..
複製代碼

步驟4.2:從Github下載opencv_contrib

git clone https://github.com/opencv/opencv_contrib.git
cd opencv_contrib
git checkout 3.3.1
cd ..
複製代碼

第五步:使用contrib模塊編譯並安裝OpenCV

步驟5.1:建立構建目錄

cd opencv
mkdir build
cd build
複製代碼

步驟5.2:運行CMake

# 注意第十行的目錄要對
cmake -D CMAKE_BUILD_TYPE=RELEASE \
      -D CMAKE_INSTALL_PREFIX=/usr/local \
      -D INSTALL_C_EXAMPLES=ON \
      -D INSTALL_PYTHON_EXAMPLES=ON \
      -D WITH_TBB=ON \
      -D WITH_V4L=ON \
      -D WITH_QT=ON \
      -D WITH_OPENGL=ON \
      -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules \
      -D BUILD_EXAMPLES=ON ..
複製代碼

步驟5.3:編譯並安裝

# 肯定機器中的CPU核心數量,輸出幾表明幾個核心
nproc
# 用nproc的輸出替換下面的4
make -j4
sudo make install
sudo sh -c 'echo "/usr/local/lib" >> /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
複製代碼

若是編譯成功顯示python2.7

必定要成功才能執行下一步,不成功就得找問題,看會不會漏了哪一步,按照上面步驟通常不會失敗

步驟5.4:在虛擬環境中建立符號連接

根據您的Python版本,路徑會有所不一樣。OpenCV的Python二進制文件(cv2.so)可能安裝在目錄site-packages或dist-packages中。可使用如下命令查找其在計算機上的正確位置。

find /usr/local/lib/ -type f -name "cv2*.so"
複製代碼

這裏的路徑要注意下,上面輸出什麼路徑下面就是什麼路徑

############ Python 2 ############
cd ~/.virtualenvs/facecourse-py2/lib/python2.7/site-packages
ln -s /usr/local/lib/python2.7/site-packages/cv2.so cv2.so
############ Python 3 ############
cd ~/.virtualenvs/facecourse-py3/lib/python3.6/site-packages
ln -s /usr/local/lib/python3.6/site-packages/cv2.so cv2.so
複製代碼

不報錯,就安裝完成

第六步:測試OpenCV3

步驟6.1:測試Python代碼

進入Python虛擬環境,固然最好先進入root環境

su root
############ Python 2 ############
workon facecourse-py2
# 或
############ Python 3 ############
workon facecourse-py3
複製代碼
# 打開python(在終端上運行此命令)
python
# 導入cv2包(在python中運行如下命令)
import cv2
print cv2.__version__
# 若是OpenCV3安裝正確,
# 上面的命令應該輸出3.3.1
# 按CTRL + D退出ipython
複製代碼

若是沒有輸出上面的結果,就只能按下面的執行,固然會麻煩點:

su root
# 進入到步驟5.4的目錄,之後執行代碼也在這個目錄
cd ~/.virtualenvs/cv/lib/python2.7/site-packages/
# 執行
python
import cv2
print cv2.__version__
複製代碼

博主有一個現成的鏡像,網盤連接:

連接:pan.baidu.com/s/1Kc57rozs… 提取碼:wbaw

轉載請聲明:

文章做者:窗外蟋蟀

原始連接:juejin.im/editor/post…

相關文章
相關標籤/搜索