周 亮, 薛 原, 王 章, 馬晗旭, 劉忠富
(大連民族大學 信息與通信工程學院, 遼寧 大連116600)
隨著人臉識別和單片機硬件技術的發展,單片機結合人工智能等技術也取得了很大的進步。 本系統是以STM32F4 單片機作為核心控制器,通過OV7670 和特征臉識別算法[1]開發的一套系統。 現在大多數人臉識別系統都是基于大型的處理器進行圖像處理,適用于人流量較大的場景。 而面向小眾群體,人臉識別的便攜式機器在市場中的占有量卻非常少,此項目具有非常重要的意義。 在現實場景中人的角度不一定是完全正立的,使識別的準確度受到很大的影響,導致系統在識別時可能產生誤判,能不能對人臉的位置進行正確的檢測和定位成為衡量其性能的重要因素之一。
基于STM32F407 人臉識別系統的整體設計分為硬件設計和軟件設計兩部分。 系統硬件電路設計以STM32F407 單片機為核心,控制電路由顯示模塊,OV7670 攝像頭模塊等電子元件組成。 系統軟件系統設計包括通過攝像頭采集臉部圖片,在上位機分析圖片數據,通過程序控制圖像的顯示。 硬件系統結構如圖1 所示。

圖1 系統總體設計框圖Fig. 1 System overall design diagram
單片機又稱微控制器。 價格便宜,體積小,容易移植使之成為控制領域最佳選擇。 完整的單片機由LCD顯示器電路,微控制器電路,ADC 采集電路,時鐘電路等電路組成。 本系統的控制電路包括OV7670 攝像頭模塊,晶振模塊,2.8 寸TFT LCD 液晶觸摸等模塊。 圖2為STM32F407 單片機最小系統電路圖。
數據采集與控制器系統所采用的微控制器是STM32F407zgt6。 該單片機容量大,芯片內嵌資源豐富含有16 個定時器,3 個ADC 共24 個通道DCMI攝像頭接口,百兆以太網端口,具備處理視頻數據的能力。 一塊完整的單片機模塊具有14 個電路,雙路232 通信電路,三極管串口通信電路,單路232 通信電路,USB 轉232 電路,SP706S 復位電路,SD 卡電路液晶模塊電路,全雙工RS485 電路,RS485 半雙工通信電路,JTAG 仿真電路,電源模塊電路等。
人臉數據通過單片機由TFT 液晶顯示電路顯示,該顯示屏的每一個像素上都設置一個薄膜晶體管,可有效地克服非選通時的串擾,有效的提高了圖像質量[2]。 TFT 模塊采用16 位的方式與外部鏈接,在傳輸彩色圖片時速度會更快。 使用TFT 之前,設置STM32F4 與TFT 模塊相連接的IO 初始化,TFTLCD 模塊通過函數將字符和數字顯示到TFT 模塊上;之后設置坐標,寫入RAM 指令,寫入顏色數據。 TFT 液晶顯示模塊原理圖如圖3 所示。

圖3 TFT 液晶顯示模塊原理圖Fig. 3 Schematic diagram of TFT LCD module
OV7670 是一顆CMOS VGA 圖像傳感器,該傳感器有體積小,工作電壓低等優點,提供單片VGA攝像頭和影像處理器的所有功能[3]。 通過總線控制,可以輸出整幀、子采樣、取窗口等方式的各種分辨率,10 位或8 位影像數據,VGA 圖像輸出最高可達60 幀/秒。 用戶可以控制圖像質量、數據格式和傳輸方式。 Ov7670 圖像傳感器的傳感器技術,通過減少或消除光學噪聲獲得清晰的穩定的彩色圖像。OV7670 具有高靈敏度、低電壓等特點,適合在嵌入式終端使用,支持自動曝光控制、白平衡、消除燈光條紋、黑電平校準等自動控制功能,同時支持色彩的飽和度設置,支持圖像縮小和放大。 OV7670 傳感器包括如下功能模塊:感光整列、時序發生器、模擬信號處理、A/D 轉換。 Ov7670 存儲的工作流程大致為: 等待幀同步信號、寫指針復位、寫使能、等待第二個幀同步信號、寫禁止,可以完成1 幀圖像在AL422B 的存儲。 Ov7670 攝像頭原理圖如圖4 所示。

圖4 OV7725 攝像頭原理圖Fig. 4 OV7725 camera schematic
系統拍照傳回的圖片首先需要降噪預處理,主要采用灰度直方圖均衡化的方法進行圖像轉換[4],以提高圖片的識別度。 其次,進行模型的建立及優化計算映射距離,并將得到的特征向量移植到MDK代碼中進行人臉識別,最后在TFT 液晶顯示屏上顯示。 主要采用特征臉算法,把人臉的像素變換到另外一個空間,空間進行比對。 每個矩陣為M×M,那么每個人臉的維度就是M × M,將每個維度加起來得到平均臉,計算協方差得到一個特征臉。 軟件設計流程圖如圖5 所示。
本文利用了攝像頭加人臉識別技術,采用算法控制實現了自動人臉識別,在一定程度上彌補了現有的技術缺陷,解決了便攜性終端的人臉識別難題。
基于單片機人臉識別系統以較低的價格實現了人臉識別,在人次比較少的場合有比較好的識別率。但系統仍有許多地方需要改進,比如隨著樣本數量的提高識別率大大降低,處理器速度較低,實時報警功能欠缺等問題。

圖5 軟件設計流程圖Fig. 5 Software design flow chart