[ 教學 ]  利用NVIDIA Jetson Nano實作人臉辨識「門禁系統」PART II
  回覆文章總數:

利用NVIDIA Jetson Nano實作人臉辨識「門禁系統」PART II

  By : Leadtek AI Expert     1720

還記得上一篇提到的人臉辨識門禁系統嗎?快速傳送門請點我

材料可以參考下方表格,這篇文章麗臺AI專家將介紹如何自己建立這樣的系統。

品項
數量
NVIDIA Jetson Nano
1
5V4A 電源供應器(Jetson Nano用)
1
有門的房子模型
1
PWM控制板(PCA9685)
1
SG90 馬達
1
Logitech camera (C310)
1
杜邦線 (母對母)
6
鍵盤滑鼠組
1


材料開箱如下圖,其實安裝並不困難。主要關鍵在於模型的門軸安裝,以及控制板的連接。


首先將馬達固定在房屋地板下方,並讓馬達軸心與門軸相連接。

 

接著將馬達的線連接至PWM控制板,並連接至編號0的位置。這樣馬達的連接工作就完成了。


另外準備4條杜邦線接到PWM控制板上的GND、SCL、SDA及UCC,此部分是為了和Jetson Nano進行連接,才能讓人臉辨識的結果傳遞到門軸進行開關門。Jetson Nano上的GPIO則依序連接到GND、(Pin 5)I2C_2SCL、(Pin 3)I2C_SDA及3V3等位置。

 

其實到這裡,主要的部份就差不多安裝完成了。筆者還多加裝了一組按鈕作為開機使用,避免時常插拔電源線。要準備2條杜邦線和一個按鈕模組,按鈕端連接GND和OUT,Jetson Nano端則連接在J40的位置。


最後再將USB Camera連接上,以及安裝鍵盤、滑鼠及螢幕,即大功告成啦。Jetson Nano可支援的顯示介面為HDMI和DP,盡量不要使用轉接頭,請記得也要配置能連結此類裝置的螢幕。

 

開機如果能成功進入Jetson Nano頁面,即可開始進行軟體的安裝。請參考前一篇提供人臉辨識相關資源,並下載至系統端。我們已將此模組整合進一組icon,下圖為icon內容及實際執行環境。本系統中Python使用版本3.6.8,深度學習框架使用TensorFlow 1.14.0,搭配CUDA 10.0。


 

系統中除了人臉辨識外,還加入了前一篇提到的情緒、年齡和性別等辨識功能。除了人臉識別外,其他三項功能不需身分驗證即會顯示在螢幕上。那麼我們來驗證一下,如果若有無法辨識身分的人在攝影機前,會怎麼樣呢?請參考下方影片。


如影片內容,發現有無法辨識身分的人出沒,門就會自動關起來。那增加人像會很難嗎?一點也不。僅需準備5個角度的照片,並先以小畫家縮放成約800x600解析度,因為Jetson Nano記憶體僅4GB,開機後作業系統就占用將近1GB記憶體,影像解析度太大會使模型無法進行訓練。

  

5張照片調整過後,創建一個同人名的資料夾,並將照片複製進資料夾,原先並沒有此人員的資料。

 

再次進行訓練進行訓練,此時系統就會將新增的人員資訊加入模型中。

我們再來檢視一下效果吧。


如影片顯示的已加入的男性人員(Harry)進入畫面時,系統因為可以識別他的身分,門也就自動開啟。但其他無法識別身分的人員(女性人員)出現時,門就會再度關閉。


但除了身分無法識別外,其他如情緒、年齡及性別都依然可以正常辨識,並且標註在綠色方框上方。

這樣就可以簡單的利用NVIDIA Jetson Nano來製作人臉辨識的門禁系統啦~~~


以下是回覆文