<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          從零開始用樹莓派搭建一個實時人臉檢測系統(tǒng)

          共 4472字,需瀏覽 9分鐘

           ·

          2021-04-28 23:03

          首先看看通過本文,你可以做出一個什么東西,就是下面這個了:

          沒錯,那個小盒子裝的東西叫做樹莓派,可能有一些朋友還沒接觸過,暫且理解成一個小型的個人電腦就可以了。

          我們會先介紹人臉檢測怎么做,然后一步一步從零開始搭建環(huán)境,運行程序,呈現(xiàn)效果,最后會將程序遷移到樹莓派上,當然,為了能在上圖中那個2英寸大小的LCD屏幕上顯示我們的檢測效果,代碼需要做一些小改動。


          目錄:

          1. 簡單講講什么是人臉檢測

          2. 了解樹莓派及相關(guān)配件

          3. 組裝樹莓派及相關(guān)配件

          4. 配置樹莓派連接網(wǎng)絡(luò)

          5. 遠程連接樹莓派

          6. 樹莓派軟件源更換

          7. 源代碼下載

          8. 通過ftp將代碼上傳到樹莓派

          9. 在樹莓派上搭建python的虛擬環(huán)境

          10. 在虛擬環(huán)境中安裝程序依賴包

          11. 在樹莓派上運行程序

          ok,開始吧。


          一、簡單講講什么是人臉檢測

          很簡單,就是從圖像中找到人臉,然后把他們都框出來,如下圖:

          早期的人臉檢測一般基于小波變換等人工構(gòu)造特征的方法,而今深度學(xué)習(xí)已經(jīng)是主流的做法了,深度學(xué)習(xí)檢測人臉技術(shù)發(fā)展到現(xiàn)在,已經(jīng)有很多好的網(wǎng)絡(luò)和模型出現(xiàn)并開源了,在對眾多模型精挑細選后,筆者篩選出了一個非常出眾的模型,其檢測效果一定會令你滿意。


          二、了解樹莓派及相關(guān)配件

          樹莓派是一款基于 ARM 的微型電腦主板,以 MicroSD 卡(又稱TF卡)為硬盤,主板周圍有 USB 口和以太網(wǎng)口,可連接鍵盤、鼠標和網(wǎng)線,同時擁有HDMI高清視頻輸出口和 可以輸入輸出的 GPIO 接口(就是上圖最上面那一排針腳),以上部件全部整合在一張僅比信用卡稍大的主板上,具備PC 的基本功能。Raspberry Pi 以其低價格、低能耗、移動便攜、GPIO 等特性受到眾多計算機發(fā)燒友和創(chuàng)客的追捧。

          樹莓派 4 代(Raspberry Pi 4)是樹莓派基金會發(fā)布的最新一代微型電腦,相比于樹莓派 3,在cpu、電源、HDMI、內(nèi)存、藍牙、網(wǎng)口等方面進行了全方位升級,筆者采購的是4g內(nèi)存的,大約500人民幣。


          三、組裝樹莓派及相關(guān)配件

          一般網(wǎng)上購買樹莓派和相關(guān)配件,賣家會給你燒錄好相應(yīng)的操作系統(tǒng)到你的tf卡上,所以直接插入tf卡,接通電源,就啟動了樹莓派了,然后接上鼠標、鍵盤,支持HDMI接口的顯示器,就可以操作樹莓派了。

          當然要實現(xiàn)本文的人臉檢測,我們還需要一些配件,包括攝像頭一個,2英寸LCD屏幕一個。

          攝像頭用的是FFC軟排線,先將板子上的接口卡扣提起來一些,然后插入軟排線,再按緊卡扣即可。

          LCD屏幕是基于SPI接口連接到樹莓派主板的GPIO插槽上的,對應(yīng)的連接方式如下(左上方第一個vcc針腳板子后面的焊點是方的,其他都是圓的):

          注意,如果你要插散熱風(fēng)扇的話,按照上面的插法會有沖突,可以自行做一些調(diào)整,GPIO上有好幾個GND和VCC的插口:


          四、配置樹莓派連接網(wǎng)絡(luò)

          樹莓派自帶wifi模塊,可以通過無線連接網(wǎng)絡(luò),當然也可以通過網(wǎng)線連接。配置方式和普通電腦一樣。


          五、遠程連接樹莓派

          這里將用VNC來連接遠程桌面,

          首先,找一臺帶HDMI輸入口的顯示器和一根一頭是micro-hdmi一頭是hdmi的連接線,直接連接到樹莓派上的micro-hdmi接口,顯示操作系統(tǒng)畫面(可能需要重啟樹莓派才有畫面輸出),

          進入命令行窗口,輸入如下命令打開樹莓派的配置程序界面:

          sudo raspi-config

          做如下選擇開啟VNC服務(wù),也可以順便把Camera,SSH,SPI都開啟了(第二張圖里可以看到):

          然后,在你的電腦上安裝 VNC Viewer 客戶端,下載地址:https://www.realvnc.com/en/connect/download/viewer/

          選擇對應(yīng)的操作系統(tǒng)版本即可,比如你的windows10,那么就選windows,注意不要選成Raspberry Pi了。

          確保你的電腦和樹莓派在同一個局域網(wǎng)中,然后啟動電腦上的VNC客戶端,輸入樹莓派的IP,連接即可:

          接著會讓你輸入樹莓派操作系統(tǒng)的登錄用戶和密碼(樹莓派默認登錄名和密碼是:pi, raspberry),確定即可。

          然后,就能看到樹莓派的操作系統(tǒng)桌面了,和通過hdmi顯示器看到的桌面是一樣的。


          六、樹莓派軟件源更換

          為了加速 apt 命令的下載速度,需將國外的源換成國內(nèi)的鏡像源,復(fù)制如下命令到樹莓派終端執(zhí)行即可:

          cat << EOF > /etc/apt/sources.list deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib rpi EOF cat << EOF > /etc/apt/sources.list.d/raspi.list deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui EOF

          七、源代碼下載

          人臉檢測代碼,采用retinaface模型,基于python+pytorch編寫,下載地址:

          鏈接:https://pan.baidu.com/s/1Vfr1stzvsCMRQ5XVDDlF4w

          提取碼:ii7x


          八、通過ftp將代碼上傳到樹莓派

          首先,在樹莓派上安裝vsftpd軟件包:

          sudo apt update
          sudo apt install vsftpd

          完成后,ftp服務(wù)會自行啟動,可通過如下命令驗證:

          sudo systemctl status vsftpd

          然后, 通過編輯/etc/vsftpd.conf文件來配置vsftpd服務(wù)器

          sudo nano /etc/vsftpd.conf

          修改文件中的配置:

          anonymous_enable=NO # 禁止匿名訪問
          local_enable=YES # 允許本機用戶訪問
          write_enable=YES # 允許上傳

          完成后,重新啟動vsftpd服務(wù):

          sudo systemctl restart vsftpd

          通過一些ftp客戶端連接工具(提供一個下載鏈接:https://pan.baidu.com/s/1sM-Mp66IZ3IWRmcIoxDV3w 提取碼:sf2g,也可以自行下載其他的),輸入樹莓派的 IP,用戶名,密碼,端口:21,即可訪問。

          將源代碼拖到樹莓派上的指定的目錄下即可。


          九、在樹莓派上搭建python的虛擬環(huán)境

          一般樹莓派的操作系統(tǒng)都自帶了python2和python3,所以我們只要創(chuàng)建一個虛擬環(huán)境用來安裝我們的人臉檢測程序需要的依賴包即可,這里我們使用virtualenv來創(chuàng)建和管理虛擬環(huán)境,

          為了快,先要對pip進行換源:

          mkdir ~/.pip  # 在你的用戶目錄下創(chuàng)建.pip目錄
          vim ~/.pip/pip.conf # 在.pip目錄下創(chuàng)建pip.conf文件
          #在pip.conf文件里面添加如下內(nèi)容,保存退出即可。(這里用的阿里的,你也可以換成其他的)
          [global]
          timeout =6000
          index-url =https://mirrors.aliyun.com/pypi/simple/
          [install]
          use-mirrors =true
          mirrors =https://mirrors.aliyun.com/pypi/simple/
          trusted-host =mirrors.aliyun.com

          然后,執(zhí)行如下命令搭建虛擬環(huán)境:

          # 安裝virtualenv
          sudo pip3 install virtualenv virtualenvwrapper
          # 新建虛擬環(huán)境主目錄,并進入
          $ mkdir ~/py_envs && cd ~/py_envs
          # 創(chuàng)建本項目的虛擬環(huán)境目錄,依賴包會安裝在該文件夾中
          $ virtualenv env_face
          # 激活虛擬環(huán)境
          $ source ~/py_envs/env_face/bin/activate
          # 如果要退出虛擬環(huán)境,可用如下命令
          $ deactivate

          十、在虛擬環(huán)境中安裝程序依賴包

          運行程序之前,先要安裝相關(guān)依賴,如下:

          numpy==1.19.5
          six==1.15.0
          PyYAML==5.4.1

          上面的直接通過pip install安裝。

          然后,安裝opencv和pytorch的依賴包:

          # 安裝 opencv 依賴
          sudo apt-get install libhdf5-dev libhdf5-serial-dev libhdf5-100
          sudo apt-get install libqtgui4 libqtwebkit4 libqt4-test python3-pyqt5
          sudo apt-get install libatlas-base-dev
          sudo apt-get install libjasper-dev
          # 安裝 pytorch 依賴
          sudo apt install libopenblas-dev libblas-dev m4 cmake cython python3-dev python3-yaml python3-setuptools

          最后安裝其他build不了的包,這里針對這些包提供了build好的whl文件(下載地址:鏈接:https://pan.baidu.com/s/1hRi_U1f5ID7g4_pIRDtTAQ 提取碼:ogos ),可以通過pip install 這些whl文件來安裝:

          都安裝成功后,就可以運行程序了。


          十一、在樹莓派上運行程序

          首先進入程序所在目錄,

          cd xxx/xxxx

          激活對應(yīng)的虛擬環(huán)境env_face,

          source ~/py_envs/env_face/bin/activate

          然后執(zhí)行如下命令:

          python detect-video-raspberrypi.py  --source 0 # 0表示從樹莓派的攝像頭讀取視頻流


          ok,如果順利的話,相信已經(jīng)可以看到文章開頭展示的畫面啦~O(∩_∩)O

          為您推薦

          我是如何通過系統(tǒng)架構(gòu)師軟考的?

          用python做時間序列預(yù)測一:初識概念

          自然語言處理之BERT介紹

          pycharm2019和idea2019版永久激活

          Windows10搭建深度學(xué)習(xí)環(huán)境

          用機器學(xué)習(xí)打造聊天機器人(三) 設(shè)計篇

          如何在阿里云租一臺GPU服務(wù)器做深度學(xué)習(xí)?

          手把手教你用深度學(xué)習(xí)做物體檢測(一): 快速感受物體檢測的酷炫

          名句分享

          一個人面對委屈和壓力的反應(yīng),體現(xiàn)了他的成熟程度。——佚名


          瀏覽 103
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  精品无码av一区二区三区不卡 | 欧日无码一区二区三区在线 | A一级日黄片 | 欧美性爱网址在线观看 | 天天操人人爽 |