1. 程式人生 > >樹莓派學習(三)基於OpenCv的人臉識別

樹莓派學習(三)基於OpenCv的人臉識別

博主的課程設計選題,開始在網上參考了諸多教程踩了很多坑最終得以實現,所以寫下心得總結,以便後人乘涼~https://blog.csdn.net/kyokozan/article/details/79192646https://blog.csdn.net/LC_1994/article/details/52971408https://blog.csdn.net/coolwriter/article/details/77825375https://blog.csdn.net/leaves_joe/article/details/67656340http://shumeipai.nxez.com/2017/03/16/raspberry-pi-face-recognition-system.htmlhttps://courses.cit.cornell.edu/ece5990/ECE5990_Fall15_FinalProjects/Andre_Heil/ece5990_final_report/avh34_jr986.htmlhttps://www.cnblogs.com/Pyrokine/p/8921285.html以上是我主要參考的幾個帖子,感謝前輩們~~安裝OpenCV的最佳方式是照 Adrian Rosebrock 的教程來進行:《Raspbian Stretch: Install OpenCV 3 + Python on your Raspberry Pi》
(https://www.pyimagesearch.com/2017/09/04/raspbian-stretch-install-opencv-3-python-on-your-raspberry-pi/)來進行,不過如果僅限於實現簡單的人臉識別有一部分東西並不需要安裝另外,推薦使用交叉編譯進行,博主在樹莓派3B+上編譯整整用了近4小時,很痛苦另外,注意樹莓派攝像頭模組(PiCam)千萬不能熱插拔,很容易燒壞另外,你可能需要搭個梯子,或者更換apt源下面開始:首先安裝OpenCV及其依賴的各種工具和影象視訊庫:開啟終端

擴大TF卡的空間,如果不做這步操作,後面會出問題,比如卡死

sudo raspi-config
sudo apt-get update
sudo apt
-get upgrade
// 安裝build-essential、cmake、git和pkg-config
sudo apt
-get install build-essential cmake git pkg-config
// 安裝jpeg格式影象工具包
sudo apt
-get install libjpeg8-dev// 安裝tif格式影象工具包
sudo apt
-get install libtiff5-dev// 安裝JPEG-2000影象工具包
sudo apt
-get install libjasper-dev// 安裝png影象工具包
sudo apt
-get
install libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev

安裝gtk2.0(樹莓派很可能下載錯誤,更換中科大或者清華源即可):

sudo apt-get install libgtk2.0-dev
sudo apt-get install libatlas-base-dev gfortran
執行到這裡就把OpenCV的依賴包全部安裝好了,之後要開始編譯OpenCV原始碼了,請大家用wget工具下載到使用者目錄下(原始碼要放在有執行許可權的位置,不是安裝位置),命令如下:// 使用wget下載OpenCV原始碼,覺得慢的話可以到https://github.com/opencv/opencv/releases下載OpenCV的原始碼(tar.gz格式,需要解壓好)放到使用者目錄下,但是OpenCV_contrib請大家使用wget,親測直接到Github下載zip檔案的話,會有編譯問題

// 下載OpenCV
wget -O opencv-
3.4.1.zip https://github.com/Itseez/opencv/archive/3.4.1.zip
// 解壓OpenCV
unzip opencv-
3.4.1.zip
// 下載OpenCV_contrib庫:
wget -O opencv_contrib-
3.4.1.zip https://github.com/Itseez/opencv_contrib/archive/3.4.1.zip
// 解壓OpenCV_contrib庫:
unzip opencv_contrib-
3.4.1.zip
找到你下載的原始碼資料夾並開啟,tar.gz解壓後文件夾名應該是opencv-3.4.1(版本號可能會變化),git方式下載的資料夾名應該是opencv。// 開啟原始碼資料夾cd opencv-3.4.1

之後我們新建一個名為release的資料夾用來存放cmake編譯時產生的臨時檔案:

// 新建release資料夾mkdir release// 進入release資料夾cd release

設定cmake編譯引數,安裝目錄預設為/usr/local ,注意引數名、等號和引數值之間不能有空格,但每行末尾“\”之前有空格,引數值最後是兩個英文的點:

// CMAKE_BUILD_TYPE是編譯方式,CMAKE_INSTALL_PREFIX是安裝目錄,OPENCV_EXTRA_MODULES_PATH是載入額外模組,INSTALL_PYTHON_EXAMPLES是安裝官方python例程,BUILD_EXAMPLES是編譯例程(這兩個可以不加,不加編譯稍微快一點點,想要C語言的例程的話,在最後一行前加引數INSTALL_C_EXAMPLES=ON \)

sudo cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local \
    -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.1/modules \
    -D INSTALL_PYTHON_EXAMPLES=ON \
    -D BUILD_EXAMPLES=ON ..
注意  -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.1/modules \
    -D INSTALL_PYTHON_EXAMPLES=ON \
    -D BUILD_EXAMPLES=ON ..
       這三個都可以不安裝之後開始正式編譯過程
// 編譯,以管理員身份,否則容易出錯
sudo make
// 安裝
sudo make install
// 更新動態連結庫
sudo ldconfig
整個編譯過程大約4小時,做好心理準備!推薦在Ubuntu下進行交叉編譯,半小時左右!// 安裝sudo make install
// 更新動態連結庫
sudo ldconfig
到這裡,OpenCV的編譯完成安裝PiCamera
123sudo apt-get install

相關推薦

樹莓學習基於OpenCv人臉識別

博主的課程設計選題,開始在網上參考了諸多教程踩了很多坑最終得以實現,所以寫下心得總結,以便後人乘涼~https://blog.csdn.net/kyokozan/article/details/79192646https://blog.csdn.net/LC_1994/art

樹莓小車Python控制小車

gpio 小車 沒有 物體 凹凸 img str 接口 表示 正文之前 由於最近忙於復習趕考,所以暫時沒有拿起樹莓派小車,直到昨天,終於空出時間來把代碼整理一下來和大家分享。 正文 在樹莓派小車系列之二中,講到了樹莓派的引腳定義方式有兩種: PHYSICAL NU

樹莓學習——樹莓安裝系統的過程、問題及解決辦法

shu fat 基於 淘寶 conf 添加 最重要的 access eboot 前言——   買了兩三周的樹莓派,現在才把樹莓派安裝配置好系統,真的是想抽自己兩耳巴子。不過這個月實在太忙了,又是實習,又是忙著畢業雜事,心裏頗不寧靜。這兩天周末,又重新搗鼓了一下樹莓派,準備記

樹莓入門- 基本設定:時區、密碼、apt-get源、上傳下載

樹莓派基本設定 更改時區 修改root、pi密碼 更換apt為阿里雲源 使用lrzsz,上傳下載檔案 更改時區 輸入命令 sudo dpkg-reconfigure tzdata 上下箭頭移動游標,

學習筆記-樹莓學習

學習筆記-樹莓派學習(一) ​ 在進行這些之前就已經先安裝好了樹莓派的系統,選擇的無介面的系統。 ​ 客戶端系統為Window10,伺服器為樹莓派的Linux。目前的一些想法是:①用樹莓派掛在一塊硬碟,作為家裡的網路硬碟來用;②配合客戶端的vscode,將樹莓派作為遠端編譯伺服器,用來編譯除錯執行程式,目

學習筆記-樹莓學習

學習筆記-樹莓派學習(一) ​ 內容如下: ​ ①掛載硬碟; ​ ②samba共享目錄; ​ ③Windows對映網路驅動器; 使用fdisk命令檢視硬碟詳細資訊 在/etc/fstab中新增要掛載的硬碟資訊 sudo vim /etc/fstab 新增/dev/s

樹莓3B+0Dopencv終於安裝好了!

原始碼方式安裝opencv 2.4.9 環境:樹莓派3B+ 系統:2018-04-18-raspbian-stretch opencv版本:2.4.9 一、下載若干依賴項 請依次安裝以下依賴項,這些必須安裝的依賴項來自於opencv官網的說明,在多數debi

學習筆記二——基於opencv人臉檢測原理及實現

最近搞了幾天的人臉檢測,終於把大體框架和原理搞清楚了,現在寫出來供大家學習之用,如有不對之處,還請大家指正。也希望大家在學習opencv的過程中能將學習過程及重點記錄下來,以部落格的形式分析,畢竟opencv的教材還不太多,我們自己學習大部分要靠網上的資料。通過部落格分享的

樹莓學習設定靜態IP

需要修改的是 /etc/dhcpcd.conf 也就是 DHCP 的配置檔案。 # 修改檔案許可權 sudo chmod 777 /etc/dhcpcd.conf # 指定介面 eth0 interface eth0 # 指定靜態IP,/24表示子網掩碼為 255.25

樹莓備忘錄Python配置

2018-04-18-raspbian-stretch.img  自帶3個版本的Python,2.7,3.0.3.5  預設2.7解除安裝Python2.7sudo apt-get autoremove python2.7設定Python3.5為預設sudo ln -s /u

樹莓學習筆記本連線

上一節總結了樹莓派系統的安裝過程,本節就此基礎上 使用筆記本連線樹莓派   開始所需工具1.膝上型電腦(我用的是win10)2.一根網線3.已經裝好系統的樹莓派(我用的是3B)4.軟體:Putty和VNC-Viewer5.可選項:路由器0-設定樹莓派給燒好系統的SD卡根目錄下

Opencv學習——影象變換

一、邊緣檢測 邊緣檢測的一般步驟: 濾波——消除噪聲 增強——使邊界輪廓更加明顯 檢測——選出邊緣點 1.1、canny運算元 void Canny( inputArray, outputArray, double threshold1, double t

VS2017開發C++學習OpenCV的配置方法

我們 文件路徑 源碼 stack bug 不同版本 整合 imread evc 作為萌新最初聽說到opencv,以為是一個集成開發環境IDE。後來因為畢設原因不得不去使用opencv,才了解到OpenCV是一個廣受歡迎的開源計算機視覺庫 ,它提供了很多函數,實現很多計算機視

QT和opencv學習Qt訊號槽

所謂訊號槽,簡單來說,就像是插銷一樣:一個插頭和一個插座。怎麼說呢?當某種事件發生之後,比如,點選了一下滑鼠,或者按了某個按鍵,這時,這個元件就會發出一個訊號。就像是廣播一樣,如果有了事件,它就漫天發聲。這時,如果有一個槽,正好對應上這個訊號,那麼,這個槽的函式就會執行,也就

Opencv學習】獲取Mat影象的ROI區域

在影象處理中,有時需要分塊處理,或者只處理影象中的某一部分。因此設定影象的Region of interest 是非常重要的,可以提高效率。 ROI 區域的兩種定義方法: 1. 使用cv::Rect. cv::Rect 表示一個矩形區域,常用的建構函式如下:Rect_ (

爬蟲庫之BeautifulSoup學習

子節點 rom lac repr 文檔 strong 爬蟲 time contents 遍歷文檔樹:   1、查找子節點   .contents     tag的.content屬性可以將tag的子節點以列表的方式輸出。   print soup.body.cont

Java學習JSP學習1

rtm 斷開 三大指令 保持 web應用 對比 c語言 let 新建 一、 理解JSP技術   JSP全名為Java Server Pages,中文名叫java服務器頁面,其根本是一個簡化的Servlet設計,它 是由Sun Microsystems公司倡導、許多公司參

java學習

con void pub oid 修改密碼 tro int str 用戶 類 public class Dog{ String breed; int age; String color; void barking(){ } void hungr

disconf實踐基於XML的分布式配置文件管理,自動reload

blog exce conf redis 信息 exceptio res pan ram 上一篇介紹了基於xml的非自動reload的分布式配置文件管理,這一篇介紹自動reload的方式(基於disconf實踐二)。 1. 修改RedisConfig.java 1 pa

Qt Installer Framework的學習

科技 released his 表示 star online 解壓 dem 普通 Qt Installer Framework的學習(三) Qt Installer Framework的樣例中。通常是這種:config目錄一般放了一個config.xml文件,包括的是安裝