一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

子豪兄教你在樹莓派上安裝OpenCV

 紅色鯡魚298 2019-08-10

子豪兄教你在樹莓派上安裝OpenCV

本文介紹了如何在樹莓派上安裝分別運(yùn)行在Python2和Python3的OpenCV。

運(yùn)行在Python2上的OpenCV安裝非常簡(jiǎn)單,幾行命令即可搞定。運(yùn)行在Python3上的OpenCV安裝比較麻煩,需要編譯安裝,不用擔(dān)心,本文默認(rèn)你是新手小白,會(huì)一步步指導(dǎo)你安裝。本教程經(jīng)過作者親自測(cè)試,自認(rèn)為是全網(wǎng)最靠譜的相關(guān)教程。

原創(chuàng)作者:同濟(jì)大學(xué)開源軟件協(xié)會(huì) 子豪兄Tommy 微信公眾號(hào):子豪兄的科研小屋

轉(zhuǎn)載或復(fù)制請(qǐng)以 原文超鏈接形式 并注明出處 子豪兄。

原文地址 http:///5gS6if 發(fā)布于2018-10-05

OpenCV是程序員鐘愛的開源計(jì)算機(jī)視覺庫(kù),擁有強(qiáng)大的內(nèi)置函數(shù)和開源社群。OpenCV配合便攜開源廉價(jià)的樹莓派,可以直接讀取來(lái)自樹莓派攝像頭PiCamera的視頻,進(jìn)行人臉識(shí)別、邊緣檢測(cè)、語(yǔ)義分割、自動(dòng)駕駛、圖像識(shí)別等各種計(jì)算機(jī)視覺開發(fā)。很多優(yōu)秀開源項(xiàng)目,比如谷歌人工智能框架Tensorflow和人臉識(shí)別開源項(xiàng)目face_recognition,都需要安裝OpenCV作為運(yùn)行前提。不少本科生的畢業(yè)設(shè)計(jì)也要用到它。

網(wǎng)上關(guān)于在樹莓派上安裝OpenCV的教程很多,老外寫的和中國(guó)人寫的都有,但都很不靠譜,經(jīng)過長(zhǎng)達(dá)7個(gè)月的摸索、屢敗屢戰(zhàn)的嘗試,作者終于找到了靠譜的安裝流程,并總結(jié)成本文。所有過程親測(cè)有效。

運(yùn)行在Python2上的OpenCV安裝非常簡(jiǎn)單,幾行命令即可搞定。運(yùn)行在Python3上的OpenCV安裝比較麻煩,需要編譯安裝。作者建議兩個(gè)都安裝。不用擔(dān)心,本文默認(rèn)你是新手小白,會(huì)一步步指導(dǎo)你安裝。本教程經(jīng)過作者親自測(cè)試,自認(rèn)為是全網(wǎng)最靠譜的相關(guān)教程。

按照本教程安裝好之后,你可以迅速上手用樹莓派做一個(gè)子豪兄教你用樹莓派做人臉識(shí)別。

安裝前提

1.配置好樹莓派的Raspbian操作系統(tǒng)

本教程使用的系統(tǒng)是2018年6月27日樹莓派官方發(fā)布的Raspbian-stretch操作系統(tǒng),官方下載鏈接。

純新手小白可以參考我寫的這兩篇文章,從拆盒子到各項(xiàng)配置完畢的樹莓派教程。

子豪兄樹莓派系列教程01:樹莓派開機(jī)教程

子豪兄樹莓派系列教程02:一勞永逸配置樹莓派

2.切換到國(guó)內(nèi)的apt-get下載源和pip下載源

防止下載速度過慢。

不會(huì)換源的新手小白可以參考這篇文章一勞永逸配置樹莓派。

3.如果你有樹莓派官方的攝像頭Picamera,需按如下方法正確配置

如果沒有官方攝像頭,也不影響安裝

在命令行輸入以下命令,這個(gè)命令的意思是用nano編輯器打開modules這個(gè)文件:

  1. sudo nano /etc/modules

在這個(gè)文件末尾添加一行

  1. bcm2835-v4l2

也就是這個(gè)效果

先按鍵盤上的 ctrl+ o,再按回車保存,再按 ctrl+ x退出nano編輯器回到命令行界面。

輸入命令

  1. vcgencmd get_camera

如果得到下面的結(jié)果,則證明攝像頭連接成功

可以輸入命令

  1. raspistill -o image.jpg

調(diào)用攝像頭拍一張照片,命名為image.jpg,存儲(chǔ)在/pi/home路徑,也就是桌面左上角資源管理器一打開顯示的那個(gè)路徑。如果能看到攝像頭上紅燈亮,目錄里面有照片,則進(jìn)一步說明攝像頭配置正確。

在樹莓派安裝運(yùn)行在Python2上的OpenCV

1、安裝

打開樹莓派的命令行界面,兩個(gè)命令即可完成安裝。執(zhí)行第一條命令需要半個(gè)小時(shí)左右,請(qǐng)耐心等待。第二條命令執(zhí)行只需要幾秒鐘。

子豪兄友情提示:

建議第一個(gè)命令用樹莓派桌面上自帶的命令行工具運(yùn)行,而不要使用遠(yuǎn)程ssh連接。因?yàn)閳?zhí)行命令時(shí)間太長(zhǎng),中途如果ssh斷線的話無(wú)法得知是否已經(jīng)安裝完畢。

  1. sudo apt-get install libopencv-dev

  2. sudo apt-get install python-opencv

2、在Python2上測(cè)試OpenCV

安裝好之后,在命令行中輸入 python或者 python2,回車

  1. import cv2

如果出現(xiàn)下圖的結(jié)果,說明Python2環(huán)境下的OpenCV安裝成功。

也可以輸入

  1. cv2.__version__

查看opencv版本號(hào)

為啥叫cv2而不叫opencv呢?這是因?yàn)镺penCV是基于C/C++開發(fā)的,有兩個(gè)版本,''cv”版本的API是C語(yǔ)言開發(fā)的,''cv2''版本的API是基于C++語(yǔ)言開發(fā)的,為了保持向后兼容性所以叫'cv2',但我們都知道cv2就是OpenCV本尊。

也可以在桌面命令行里輸入以下三個(gè)命令調(diào)用樹莓派攝像頭,把攝像頭捕捉到的畫面顯示在桌面上,按 ctrl+ c鍵退出。

  1. git clone https://github.com/TommyZihao/opencvtest.git

  2. cd opencvtest

  3. python2 testopencv.py

在樹莓派安裝運(yùn)行在Python3上的OpenCV

1、安裝numpy

打開命令行界面,輸入以下命令,安裝Python科學(xué)計(jì)算庫(kù)numpy

  1. sudo pip3 install numpy

2、在樹莓派設(shè)置中把根目錄擴(kuò)大到整個(gè)SD卡

命令行界面輸入命令,進(jìn)入樹莓派配置界面。用上下鍵和左右鍵切換光標(biāo)位置。

  1. sudo raspi-config

第七行:Advanced Options

選擇Expand Filesystem,將根目錄擴(kuò)展到這個(gè)SD卡,充分利用SD卡的存儲(chǔ)空間。如果不進(jìn)行這一步,后續(xù)命令會(huì)出現(xiàn)卡死。退出設(shè)置界面,重啟樹莓派。

  1. sudo reboot

3、安裝OpenCV所需的庫(kù)

挨個(gè)運(yùn)行下面八條命令。共需要七分鐘(注意倒數(shù)第三條命令中要安裝四個(gè)-dev軟件包)。

  1. sudo apt-get install build-essential git cmake pkg-config -y

  2. sudo apt-get install libjpeg8-dev -y

  3. sudo apt-get install libtiff5-dev -y

  4. sudo apt-get install libjasper-dev -y

  5. sudo apt-get install libpng12-dev -y

  6. sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev -y

  7. sudo apt-get install libgtk2.0-dev -y

  8. sudo apt-get install libatlas-base-dev gfortran -y

4、下載OpenCV

在命令行輸入以下三條命令,下載兩個(gè)壓縮包到樹莓派的/home/pi/Downloads目錄下。第一個(gè)壓縮包86.8MB,第二個(gè)壓縮包54.5MB:

  1. cd

  2. wget https://github.com/Itseez/opencv/archive/3.4.0.zip

  3. wget https://github.com/Itseez/opencv_contrib/archive/3.4.0.zip

如果下載速度很慢(比如每秒幾個(gè)KB):

方法1:可以在電腦瀏覽器中輸入wget后面的鏈接下載壓縮包,再用Fillzilla或者U盤等方法把文件傳輸?shù)綐漭傻?strong>/home/pi/Downloads目錄下(一定不能錯(cuò))。

方法2::可以用電腦在百度網(wǎng)盤鏈接下載這兩個(gè)壓縮包之后再用Fillzilla或者U盤等方法把文件傳輸?shù)綐漭傻?strong>/home/pi/Downloads目錄下(一定不能錯(cuò))。

解壓這兩個(gè)壓縮包

  1. cd /home/pi/Downloads

  2. unzip opencv-3.4.0.zip

  3. unzip opencv_contrib-3.4.0.zip

5、設(shè)置編譯參數(shù)

設(shè)置編譯參數(shù)

  1. cd /home/pi/Downloads/opencv-3.4.0

  2. mkdir build

  3. cd build

設(shè)置CMAKE參數(shù),注意,下面這是一行命令(包括最后那倆點(diǎn)兒),需要耐心等待十五分鐘左右:

  1. 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 PYTHON3_EXECUTABLE=/usr/bin/python3.5 PYTHON_INCLUDE_DIR=/usr/include/python3.5 PYTHON_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.5m.so PYTHON3_NUMPY_INCLUDE_DIRS=/home/pi/.local/lib/python3.5/site-packages/numpy/core/include ..

根據(jù)下圖判斷你是否配置成功了CMAKE。如果失敗,可能是因?yàn)閮蓚€(gè)壓縮包的路徑?jīng)]有嚴(yán)格按照上文的要求。如果成功,就可以開始最重要的編譯了。

6、編譯

最后一步,也是最重要的一步:編譯

保證樹莓派有至少5G的存儲(chǔ)空間,建議本命令用樹莓派桌面上的命令行工具運(yùn)行,而不要使用遠(yuǎn)程ssh連接。因?yàn)閳?zhí)行命令時(shí)間太長(zhǎng),中途如果ssh斷線的話無(wú)法得知是否已經(jīng)安裝完畢。

  1. cd /home/pi/Downloads/opencv-3.4.0/build

  2. make

編譯兩個(gè)小時(shí)之后,完成了40%

靜待五個(gè)小時(shí)的編譯。注意,在此期間,樹莓派要供電充足,不要運(yùn)行其它任務(wù),以免因?yàn)閮?nèi)存不夠什么的幺蛾子報(bào)錯(cuò)。

make命令執(zhí)行完成之后,執(zhí)行下面的命令,執(zhí)行命令需要一分鐘:

  1. sudo make insall

7、在Python3上測(cè)試OpenCV

安裝好之后,在命令行中輸入 python3,回車

  1. import cv2

回車

  1. cv2.__version__

回車

如果出現(xiàn)下圖的結(jié)果,說明Python3環(huán)境下的OpenCV安裝成功。

子豪兄批注:

我從2018年3月7日第一次嘗試在樹莓派上安裝opencv,看了無(wú)數(shù)教程,歷經(jīng)無(wú)數(shù)次失敗。有的教程要配置虛擬環(huán)境,有的要修改內(nèi)存分配空間;有的教程使用樹莓派四個(gè)cpu核心同時(shí)編譯,每次都會(huì)報(bào)錯(cuò);有的教程對(duì)新手小白極其不友好,完全不知該怎么操作。在七個(gè)月的努力成功之后,我想用我的血淚史書寫本文,讓每一個(gè)新手小白都能迅速上手而不是被bug卡到舉目無(wú)親。

本文會(huì)在未來(lái)繼續(xù)更新和勘誤,最新版以Github上的子豪兄博客合集為準(zhǔn)

轉(zhuǎn)載或復(fù)制請(qǐng)以 原文超鏈接形式 并注明出處 子豪兄。

原文地址 http:///5gS6if 發(fā)布于2018-10-05

同濟(jì)大學(xué)開源軟件協(xié)會(huì)

重慶大學(xué)樹莓派愛好者俱樂部、人工智能協(xié)會(huì)、創(chuàng)新實(shí)踐中心

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    久草热视频这里只有精品| 一区二区三区四区亚洲另类| 有坂深雪中文字幕亚洲中文| 国产三级欧美三级日韩三级| 天堂av一区一区一区| 欧美日韩视频中文字幕| 男人和女人黄 色大片| 老鸭窝精彩从这里蔓延| 欧美精品激情视频一区| 91插插插外国一区二区| 国产又黄又爽又粗视频在线| 亚洲综合香蕉在线视频| 中国美女偷拍福利视频| 一区二区三区人妻在线| 国产又粗又爽又猛又黄的| 成人精品国产亚洲av久久| 俄罗斯胖女人性生活视频| 久热在线视频这里只有精品| 婷婷伊人综合中文字幕| 香蕉网尹人综合在线观看| 国产一区二区不卡在线视频| 亚洲内射人妻一区二区| 热情的邻居在线中文字幕| 亚洲成人免费天堂诱惑| 人妻巨大乳一二三区麻豆| 日韩中文字幕狠狠人妻| 日韩欧美国产精品自拍| 在线免费观看黄色美女| 91精品视频免费播放| 九九热精品视频免费在线播放| 欧美日韩中国性生活视频| 色一情一乱一区二区三区码| 亚洲熟女乱色一区二区三区| 日韩一级毛一欧美一级乱| 超薄肉色丝袜脚一区二区| 香蕉久久夜色精品国产尤物| 亚洲精品中文字幕无限乱码| 欧美一二三区高清不卡| 欧美在线观看视频免费不卡| 美女被后入福利在线观看| 国产黑人一区二区三区|