楊步榮 扈傳奇 蘇旋
摘 要:本系統(tǒng)以 STM32F103RET6 芯片作為主控單元,利用單片機(jī)的串口功能與攝像頭通信、使用 IIC 通信協(xié)議與 GY906 無線限溫度傳感器實現(xiàn)溫度的測量,以及識別身份的功能。溫度傳感器采用物體自身的紅外輻射確定所測物體的表面溫度,讀取IIC時序信號,轉(zhuǎn)化為準(zhǔn)確的溫度數(shù)據(jù)。識別模塊使用 HOG 算法取人臉特征,用 Python 語言進(jìn)行編程,主要原理是對人體面部輪廓的處理。人臉檢測是將待測人臉與數(shù)據(jù)庫中的已知人臉進(jìn)行比對,若相似度高于閾值則認(rèn)為是同一對象。
關(guān)鍵詞:GY906溫度傳感器;HOG 特征算法;紅外測溫;STM32
1 檢測系統(tǒng)硬件設(shè)計
1.1無接觸溫度測量模塊
無接觸溫度測量模塊的選擇,使用了GY906傳感器,GY906傳感器是紅外測溫模塊非接觸溫度采集測溫探頭傳感器,選擇的型號為 90614,具有非接觸式、體積小、精度高、成本低等優(yōu)點,同時兼容了 SMBus數(shù)字接口,可配置 PWM連續(xù)輸出,被測目標(biāo)的溫度和環(huán)境溫度可以通過 IIC通信的 SMBus方式讀取芯片采集的數(shù)據(jù),并通過主控STM32 轉(zhuǎn)換,得到最終的溫度顯示在 OLED 屏幕身份識別模塊
身份識別模塊選擇使用單目攝像頭對身份進(jìn)行識別,并通過串口通信返回被識別者的身份和佩戴口罩情況,主控會根據(jù)串口返回的數(shù)據(jù),判斷并顯示被測對象是否符合防疫要求。
對于單個人臉識別功能的實現(xiàn),一共有 3 個步驟:
1.1.1 提取出攝像頭采集的人臉圖像;
1.1.2 對于采集的人臉圖像進(jìn)行訓(xùn)練;
1.1.3 將現(xiàn)場采集的人臉與訓(xùn)練集的數(shù)據(jù)進(jìn)行對比,判斷被測對象的身份。
即人臉檢測 (facedetection)、特征提取 (featureextraction)和人臉識別 (facerecogni?tion)三個過程。
2 總體方案設(shè)計及系統(tǒng)方框圖
本系統(tǒng)包括無接觸溫度測量模塊、身份識別模塊、處理器模塊和電源等。
對于不同模塊采用不同的傳感器對所要求的信息進(jìn)行測量。無接觸溫度測量模塊選擇使用GY906傳感器,身份識別模塊選擇使用攝像頭傳感器,主控選擇STM32F103RET6。
3 理論分析與計算
溫度檢測模塊
GY906測溫的原理是利用測量物體自身發(fā)出的紅外輻射,準(zhǔn)確地確定其表面溫度。GY906模塊使用 81101熱電原件作為紅外感應(yīng)部分,理想情況下的輸出電壓由外部溫度和傳感器自身溫度決定,為:
U=(T4-T4)(1)
為元件的靈敏系數(shù),溫度單位為開爾文。
GY906傳感器使用了 SMBus協(xié)議將所測量數(shù)據(jù)傳回主控,在本裝置中即 STM32主控。通過芯片手冊所提供的 GY906時序圖,我們可以通過 HAL庫逐位數(shù)提取 GY906的數(shù)據(jù),并使用換算公式 T=0.2d–273.15 (2)
其中,T為實際測量的溫度,單位為攝氏度℃,d為傳感器逐位讀回的 16 位數(shù)據(jù)。
3.2人臉識別模塊
人臉識別算法方面,主要使用梯度直方圖(HOG,HistogramofGradient),梯度直方圖是一種解決人體目標(biāo)檢測的圖像描述方法,該方法使用梯度方向直方圖特征來表達(dá)人體,提取人體的外形信息和運動信息,形成豐富的特征集[2]。
為了減少運算量,方便后期的處理,將 RGB三種顏色化為灰度圖,根據(jù)人眼的成像感官,可以使用Grey=0.299R+0.587G+0.114B(3)
來進(jìn)行灰度處理。在后面的圖像處理過程中,需要進(jìn)行梯度的計算,雖然圖像可以是任意尺寸的,但是為了減少計算量,選擇壓縮圖片大小。
為了計算梯度方向,選擇使用Kernel算子計算方向 x、方向y 的梯度。再來計算梯度的幅值和方向,其中g(shù)x 是x方向的梯度,gv 是 y 方向的梯度。8 *8 子圖像中提取出來的代表梯度的數(shù)值,這些角度從 [0 180]度而不是 [0 360]度,這些被稱之為無符號梯度 (unsigned gradients)。無符號梯度的使用效果比有符號梯度優(yōu)秀,所以這里選擇無符號梯度。
為了掌握這個矩陣整體的梯度狀態(tài),得到這個子圖像的梯度方向,建立一個有 9位的梯度直方圖,通過在 8 *8 子圖像里面進(jìn)行 9 *1 歸一化的直方圖,可以可視化子圖像的 HOG 的描述子。
我們將每一個 HOG 臉部矩陣看作人臉的特征矩陣。在計算過程中需要用大量的樣本,重復(fù)訓(xùn)練卷積神經(jīng)網(wǎng)絡(luò)上百萬次,以得到一個最合適的人臉矩陣,使用了Opencv的開源訓(xùn)練結(jié)果,與攝像頭傳回圖像中的每個子圖像進(jìn)行比對,采用的對比方式是直接計算 8 *8 *2 的梯度矩陣中的歐式距離。距離足夠小也就是距離低于閾值時,即可認(rèn)為是人臉。
4 測試數(shù)據(jù)與結(jié)果分析
測試結(jié)果如表1所示。測量結(jié)果表明,溫度測量誤差可以控制在5%以內(nèi),但當(dāng)測溫距離較遠(yuǎn)時測溫效果不佳,主要是由于紅外測溫設(shè)備的距離有限,進(jìn)一步可考慮更換精度較高的測溫設(shè)備。
人臉識別成功率可控制在95%以上,在數(shù)據(jù)集很小的情況,即每人300張采集圖片時,可以實現(xiàn)人臉的有效識別。
參考文獻(xiàn):
[1]鐘君,蔡黎明,于涌.基于MLX90614的無線溫度采集系統(tǒng)設(shè)計[J].傳感器與微系統(tǒng),2015,34(03):87-89+93.
[2]慕春雷. 基于HOG特征的人臉識別系統(tǒng)研究[D].電子科技大學(xué),2013.
作者簡介:
楊步榮(2000—),男,漢族,河北邢臺人,石家莊鐵道大學(xué),電氣工程及其自動化專業(yè),本科生。