【人臉辨識】使用舵機雲台追蹤臉孔

Description

Description
作者:CH.Tseng

創作發想

影像辨識作為近年最夯的其中一項專業技術,廣為工程師所用,應用於智慧監視器、車電監控、智慧工廠、生醫電子等等;眾多應用中,人臉辨識是一個很大的分支,網路上已經有相當多的資源可供下載使用;於是我們使用舵機雲台作為鏡頭旋轉的硬體,搭配鏡頭模組,並結合RaspberryPi 作為微控制器,完成一台自製的人臉辨識追蹤系統,來看看如何操作吧!

背景技術

Haar cascades

這是「Haar Feature-based Cascade Classifier」的簡寫,「Haar-like feature」為一種判斷某特定物體的矩陣,將待測圖片經由該矩陣運算後,產生該圖片的特徵值矩陣。

「Cascade Classifier」是級聯分類器,將數個分類器Classifier依某種關係排列,如果該圖片的特徵值矩陣通過階層式分類器的檢驗,即可判斷該待測圖片為某特定物體。總而言之,將照片經由Haar轉換後的特徵矩陣,如果通過辨識度由低到高排列的級聯分類器的篩選,即可認定為人像。

硬體組裝

舵機雲台由兩個伺服馬達及一個組合式雲台構成,能夠同時進行左右及前後運動,使用材料如下:

1.組合式舵雲機台 連結

2.SG90伺服馬達x2 連結

舵機雲台組合完成的樣子:

接將相機鏡頭模組固定在舵機雲台的卡榫處,硬體就組裝完成了。

連接Raspberry Pi

舵機雲台的上下轉動馬達(Pan)與左右轉動馬達(Tilt),需要使用Raspberry Pi的PWM腳位(pin7、11),但RaspberryPi的5V腳位最多只能接16mA,因此需要另外使用RaspberryPi的USB Port,並聯提供電流,才能推動伺服馬達。

除此之外,需要在RaspberryPi上安裝PIR與LED模組,PIR用於偵測外界的動靜,當有人時才開啟舵機雲台進行搜尋;LED則作為指示器,當舵機雲台發現臉孔並鎖定時,發出亮光作為提示;並在相機排線插入Raspberry Pi的相機連結埠(CSI)。

CSI位於HDMI與Audio之間

軟體安裝

於Raspberry Pi安裝OpenCV

安裝步驟可參考這篇,OpenCV裡面的/haarcascades目錄,已包括數個已經訓練好的Haarcascades分類器,包括正面人臉、眼睛、載著眼鏡、嘴巴、鼻子、微笑、上半身、全身、由上往下的身體、甚至於還有貓臉……等xml檔案名稱,不須另外下載或自己訓練,可直接使用。

運作流程

  1. 1. 當PIR(紅外線感應模組)偵測到有物體時會啟動舵機,由上往下遞增30度,左右180度來回的轉動,偵測是否有臉孔出現;若有則持續追蹤臉孔,無則持續搜尋。
  2. 2. 若一輪搜尋結束後,PIR感測不到物體時,則停止舵機的運作,並等待有下一個物體被PIR偵測到時,再次啟動。

Demo影片

Resource

1.原始碼Github

如果不改變原始碼內容的話,將Servo腳位接在RaspberryPi接在pin 7,11,PIR接在36,LED接在32,直接執行儲存在RaspberryPi的main.py即可。

2.作者網站連結原教學文

Latest posts by Cheng Hsun Tseng (see all)

    Contact

    Contact
    • Category
      Electronics, Raspberry Pi, Software
    • Tags
      人臉追蹤, 室內環控系統, 影像辨識, 感測器, 智慧控制, 樹梅派, 舵機, 角度伺服馬達

    Project簡述

    Project簡述
    • 簡述
      非專業技術人士也能用樹莓派搭配舵機雲台、鏡頭模組做出的簡易人臉追蹤系統,一起來看看!
    • 作者
      CH.Tseng
    • FB Comments
      224312211384279

    您的姓名 〈需填寫〉

    您的電子郵件信箱 〈需填寫〉

    主旨

    您的信件內容