于愷 于方軍



人臉識別技術是圖像識別技術的應用方式之一,圖像識別包括對象識別和定位,對象識別找出該區域中的確定對象,對象定位主要解決對象在哪里的問題。計算機通過處理視頻數據,首先是對人臉進行檢測,檢測到人臉后對人臉進行跟蹤。本實驗使用YOLO算法,分析攝像頭獲取的圖像,檢測圖像、識別出人臉并給出其位置坐標,根據坐標控制舵機轉動來實現人臉的追蹤。YOLO(You Only Look Once)是一種基于深度神經網絡的物體識別和定位算法,其特點是運行速度快,可以用于實時系統。YOLO算法將原始圖片分割成互不重合的小方塊,通常是將圖片劃分為7×7=49個網格,每個網格允許預測出2個可能包含要檢測對象的矩形框,總共49×2=98個矩形框。可以理解為98個候選區,每個區域看看有沒有對象存在,以及具體位置在哪里。
項目設計
項目設計是驗證基于YOLO的人臉追蹤,體驗如何從視頻圖像中找到人臉,并定位人臉位置,幫助學生了解人工智能的應用。在此實驗基礎上,可以進行應用拓展,如讓學生討論設計人臉跟蹤風扇。
項目準備
硬件選擇Micro:bit為主控板,這塊主控板能夠處理視頻識別獲取的信息、處理信息、執行相應的設備,在制作中需要一個控制風扇的馬達和一個用于控制風扇方向的舵機。視頻識別的主控為KOI,內部搭載一個通用的神經網絡處理器,外部搭載一個640×480像素的攝像頭獲取圖像信息,并在1.3寸240×240IPS像素顯示屏顯示攝像頭獲取的內容,其帶有WIFI模塊能夠實現無線網的搭建,能夠脫離計算機獨立運行,這為學生后期人工智能的學習提供了物理條件。
程序設計選擇了Makecode軟件,Makecode軟件中模塊已經集成了YOLO人臉檢測算法,而且能夠實現離線使用,學生只需要拖動相應指令就能夠實現對人臉的檢測,這為人臉識別技術在小學階段開展教學提供了有利條件。如果深入學習算法則可以使用TensorFlow實現YOLO算法的設計。
項目實施
人臉識別風扇的功能為:當檢測到人臉時,風扇開啟;根據人臉的位置轉動風扇到人的位置處,使人第一時間感受到清涼;為實現節能的效果,如果人不在屋內,風扇停止轉動。學生們先搭建風扇,將Micro:bit安裝到擴展板上,依次安裝舵機、風扇馬達、視頻檢測主控KOI三個部分。首先固定舵機,依托舵機實現風扇能夠左右擺動,將信號線連接到S1口;風扇由馬達控制,為馬達安裝扇葉,馬達的兩根線分別連接到MA1的“+”口和“-”口;KOI用于人臉偵測獲取到人的位置信息,將TX連接P1、RX連接P2、電源連接5V口、GND接GND。連接圖如下頁圖1所示。
程序實現
打開Makecode,添加擴展Robotbit擴展板、KOI主控模塊。然后按照連接線設置Micro:bit獲取KOI數據接口為P1和P2;風扇馬達M1A速度為0,風扇不轉動;控制舵機S1為90度,風扇面向中間位置(如圖2)。
如何設計人臉坐標的獲取,在這個環節需要思考兩個問題,一是如何捕捉人臉?二是捕捉到人臉,如何控制風扇?問題一的解決需要使用KOI模塊中的人臉追蹤指令,攝像頭不斷獲取周圍的信息,KOI使用YOLO算法對圖像信息不斷分析,判斷是否有人臉存在,如果存在就捕捉人臉,并把人臉所在的坐標數據傳輸給Micro:bit。問題二,如果Micro:bit獲取到了人臉坐標,說明人出現在攝像頭前,啟動風扇,并設置速度為100,如果沒有坐標就保持風扇為關閉狀態。
設計風扇跟隨人臉移動,為更好地獲得涼風,將KOI獲取的人臉坐標數據處理,實現控制風扇開啟關閉和控制舵機的旋轉角度。需要思考兩個問題,一是風扇移動方向是根據KOI獲取人臉的x坐標還是y坐標?二是如何合理運用坐標實現對舵機的控制更加準確地跟隨人臉改變方向?問題一的思考,如果人臉出現,Micro:bit啟動風扇馬達,控制舵機讓風扇的方向朝向人臉。舵機的移動方向需要捕捉人臉坐標,因為舵機旋轉根據人臉橫向移動的位置,那么舵機旋轉角度是根據KOI獲取的人臉x坐標。問題二的思考,因為KOI獲取的人臉坐標根據屏幕的像素進行確定,KOI橫向坐標為0~239,要將這個坐標映射為舵機的旋轉度數為45度至135度之間,這樣能更好地實現對舵機的角度控制。
程序設計完畢(如下頁圖3),將程序上傳到Micro:bit,進行離線運行測試。發現人臉出現后,風扇啟動,但是人離開后,風扇還在旋轉,說明對風扇的條件設置需要優化,經過思考發現,需要給人臉坐標設定一個范圍,通過測試,將判斷人臉存在的坐標設置在10到229之間,提高識別的準確度,這樣人臉一消失,風扇就停止轉動和跟隨。
實驗反思
通過使用YOLO算法編寫人臉追蹤程序,降低了人臉識別技術應用學習的難度,學生可以直接運用YOLO算法獲取人臉信息并實現人臉的追蹤,由于沒有人臉數據庫,所以無法實現獲取的人臉信息與人臉圖像匹配及識別,這為學生對人臉識別技術深度研究提供了項目點。在整個項目制作過程中,學生模仿制作出了人臉跟蹤風扇,在最后一個環節,很多學生還把風扇安裝到了電腦顯示屏上,當人使用電腦時就會吹到人臉,讓人感覺到舒服,有學生還考慮了增加舵機實現風扇上下擺頭。
注:本論文為淄博市教育科學規劃2020年度基于項目式學習的小學AI校本課程開發與實踐研究課題(課題批準號:2020ZJYO17)成果。