APP下载

基于人脸识别和红外测温技术的智能门禁系统

2022-11-22张宏伟

大庆师范学院学报 2022年6期
关键词:子程序测温串口

张宏伟

(大庆师范学院 机电工程学院,黑龙江 大庆 163712)

0 引言

人的体温是反映人体健康状况的重要指标,体温非正常升高通常与某些疾病有着密切联系,体温数据是诊断疾病的重要表征依据。新型冠状病毒肺炎流行期间,从防疫筛查的角度出发,公共场合人流体温监测已经成为筛查潜在病毒感染者的重要手段。目前,各企事业单位的楼宇场所一般均设有测温登记处,依靠人工测温和人员信息登记掌握出入楼宇的人员情况。但是,仅靠人工登记测温的方式效率低下,尤其在早晚高峰时间严重拖慢人员进出速度。另外人工测温时,人员的操作方式不同导致测得的体温数据准确度无法保证。智能化、高精度的无人值守测温及身份识别门禁管理系统亟待取代现有的楼宇人员流动监控方式。

1 研究现状

1.1 红外测温技术现状

红外测温技术利用黑体辐射定律,经过多年的发展和改进,已经是非常成熟的非接触式温度测量技术。(1)参见郑思聪:《基于红外测温原理的非接触式体温计的设计与实现》,《电子世界》2020年第18期。目前,随着中国材料及传感器技术的发展,红外测温传感技术已经非常成熟,红外测温传感器正在向着小型化、高精度、功能丰富和低成本不断发展。国产高性能红外测温传感器的集成化水平不断提高,一般均带有I2C、UART或者I2S数据通信接口,通过直接数字量输出大大降低了测温系统的开发难度,使得红外测温传感器在很多场合均有应用。

目前红外测温传感器技术的主要瓶颈在于:当被测物体超出或接近一定距离范围后,测量精度会有很大变化。

1.2 人脸识别技术现状

人脸识别技术是计算机视觉技术的一个分支,主要指使用各种数字图像或视频采集设备,获取人脸图像数据信息后,采用特定的人脸特征提取及识别算法实现对特定人脸特征的识别认证。(2)参见闫瑜、李枫、李雅西等:《基于人脸识别的智能化综合布线系统》,《山东电力高等专科学校学报》2021年第24期。人脸识别的理论算法发展较早,但是因为局限于计算机硬件条件,人脸识别的具体应用到近20年才逐步兴起。随着半导体微处理器技术的快速发展,使得人脸识别算法已经可以在大多数32位嵌入式处理器平台实现,现有高端微处理器的计算能力可以保证前期人脸识别理论算法的成功应用。

从人脸识别算法上看,目前识别理论研究主要集中在以下四个方面。

1)几何特征人脸识别算法。这种算法通过基础向量描述人脸五官,之后通过五官基础向量构建特征向量,再通过特定的分类算法将特征向量进行比对,从而实现人脸特征的识别。

2)模式匹配人脸识别算法。该算法实施的前提是已存在大量采集到的人脸特征数据,然后使用这些数据对识别分类器进行训练,使分类器能够根据训练数据实现特定人脸特征模式的分类。

3)特征降维人脸识别算法。一张人脸图像中往往包含大量的数据信息(包括人脸特征数据信息),这导致提取到的人脸特征向量空间的维度很高,数据运算处理有很大的难度,反而影响人脸特征识别的准确度。因此,很多研究者提出采用特定的数据降维处理算法,将人脸特征向量降维处理,仅保留强相关特征数据信息,使现有人脸识别算法能够更容易在嵌入式处理器平台运行。

4)人工神经元网络人脸识别算法。由于人工神经元网络在非线性模式匹配上的优势,被广泛应用于人脸图像特征识别。目前应用频率较高的主要有卷积人工神经元网络和康恩(Kohoen)自组织映射网络。(3)参见叶继华、郭祺玥、江爱文等:《基于特征子空间直和的跨年龄人脸识别方法》,《郑州大学学报》(工学版)2021年第5期。但是,神经网络模式识别需要有大量样本数据来训练网络,这使得算法非常消耗硬件计算资源,往往计算机硬件运行压力较大,且实时效果稍差。人工神经元网络人脸识别更适合海量数据信息挖掘场合,属于特定的人脸特征分类应用。

2 门禁系统硬件设计

2.1 系统硬件功能概述

系统硬件由六个部分组成。(4)参见王兴、宋琦、杨帆等:《疫情下的智能身份识别及消毒预警门禁系统研究》,《测试技术学报》2020年第34期。

1)红外温度传感器。本系统采用了集成化红外温度传感器模块,传感器可以通过异步串行接口与处理器进行通信,将红外测温数据发送至处理器处理。

2)摄像头模块。带有FIFO功能的OV7725摄像头模块负责采集人脸图像,并将图像转换为对应数字图像数据。

3)OpenCV模块。为了更方便实现人脸识别应用,本文设计中采用了集成了OpenCV图像处理开源函数库的硬件模块。OV7725摄像头模块与OpenCV模块通过串行接口通信,中央处理器可通过通信接口调用OpenCV模块内的识别库函数,之后模块将识别结果发送至中央处理器。

4)中央处理器。中央处理器负责门禁系统的整个控制功能。

5)按键控制电路。该部分主要实现系统功能设定等功能。

6)显示驱动。该部分负责显示测温数据和人脸识别图像及识别结果。

2.2 处理器最小系统电路设计

中央处理器选用意法半导体推出的ARM处理器,设计中实际采用144引脚增强型号,SRAM达128KB,FLASH空间达512KB。

1)供电及复位电路设计

主控制器要求采用+3.3V稳压供电,设计中选用了AMS1117三端稳压芯片产生稳定的+3.3V电压输出,然后经过1个10欧姆电阻R1产生系统模拟电源电压AVDD。AMS1117采用+5V电源作为输入。

为了最大程度地降低电源纹波,采用C5~C15共11只104陶瓷电容进行电源滤波,电路图如图1所示。最小系统复位电路图如图2所示。

图1 处理器最小系统供电电路图

2)启动模式切换电路设计

系统一般通过JTAG下载调试程序代码,但是由于仿真器版本问题,特殊情况下还需要使用串口下载程序。本文在设计最小系统时,采用了2个拨码开关来选择不同的启动模式,以完成程序下载方式的切换。

启动模式切换电路如图3所示。当使用串口下载代码时,将BOOT0设置为1,BOOT1设置为0;当需要使用仿真器下载程序到SRAM进行调试时,BOOT0和BOOT1均设置为0。

图2 处理器最小系统复位电路图

图3 启动模式切换电路图

3)JTAG接口电路设计

最小系统采用了标准的JTAG接口设计,可以与ULink、STLink或者JLink仿真器接口。接口电路如图4所示。

4)USB串口接口电路设计

为了方便进行串口调试和USB接口程序代码下载,最小系统上设计了一个USB串口下载电路。电路围绕南京沁恒公司的CH340G接口芯片设计,可实现通过USART1进行程序下载或串口通信调试。USB串口接口电路设计如图5所示。

图4 JTAG下载电路图

图5 USB接口电路图

5)处理器时钟晶振电路设计

最小系统电路中包含两个外接时钟晶振,为处理器系统提供外部高频、低频时钟信号。低频、高频时钟晶振电路分别如图6和图7所示。

图6 处理器低频外部时钟晶振电路

图7 处理器高频外部时钟晶振电路

2.3 红外测温传感器接口电路设计

本文的设计中选用了GY-MCU90614型红外测温传感器,该传感器工作电压在3~5V内,功耗低、体积小;传感器能够通过TTL电平标准的异步串口将温度数据输出,串口通信波特率可选为9600bps或115200bps,可设定为连续数据输出或者命令查询输出两种方式。(5)参见李敏:《无线红外测温系统的设计》,《电子测试》2020年第19期。GY-MCU90614型红外测温传感器与ARM处理器接口电路如图8所示。该传感器与USART2异步串口连接,用来传输采集得到的温度数据。

图8 GY-MCU90614型红外测温传感器接口电路图

2.4 OpenMV模块接口电路设计

本文的设计中使用了OpenMV模块来处理人脸图像的识别。OpenMV是一款可编程摄像头模块,内置了丰富的数字图像处理算法库函数,使用单片机处理器与其接口可以非常容易调用内部库函数。其在红外数字成像、人脸识别、人脸追踪和颜色图形识别等方面均有非常成功的应用。模块与ARM处理器接口电路如图9所示。

图9 OpenMV接口电路图

OpenMV的UART1与USART3进行异步串行通信,可以通过发送特定命令控制OpenMV启动拍摄和识别,OpenMV模块同样通过异步串口将识别结果返回中央处理器。

2.5 按键控制电路设计

设计中设置了少数按键,用来控制门禁系统工作,按键控制电路如图10所示。按键S2按下后,系统开始测温并采集人脸图像数据进行识别;按键S3按下后,门禁自动打开;按键S4按下后,门禁自动关闭。

图10 按键控制电路图

2.6 液晶显示接口电路设计

门禁系统采用了一块4.3英寸彩色TFT液晶屏来显示测温数据、人脸图像以及提示识别结果和门禁开启状态。液晶显示接口电路如图11所示。LCD接口连接在FSMC总线上,可以显著提高LCD的刷新速度。

图11 液晶显示接口电路图

3 门禁系统软件设计

3.1 系统软件框架

门禁系统启动后主程序会调用按键处理子程序、红外测温子程序、图像采集及人脸识别子程序、LCD显示子程序和门禁控制子程序,框架图如图12所示。

图12 系统软件框架图

各子程序的主要功能概述如下:

1)按键处理子程序。按键处理子程序用来扫描S2、S3、S4这三个按键是否被按下,对应进入到不同的I/O中断中处理。当S2按下则调用红外测温、LCD显示和图像采集人脸识别子程序;当S3按下则调用门禁控制子程序将门禁开启;当S4按下则调用门禁控制子程序将门禁关闭。

2)红外测温子程序。红外测温子程序用来读取红外测温传感器的温度数据,并通过多次采样外加排序均值滤波的方式处理温度数据。除此之外,测温子程序会判断测温距离是否合乎要求,当人脸超出测温范围时,红外测温子程序会调用LCD显示子程序,通过TFT液晶屏幕提示测温失败、需要重新测温。

图13 主程序流程图

3)图像采集及人脸识别子程序。(6)参见王佳颖、黄章红、马万钧等:《基于百度AI人脸识别的考勤系统设计与实现》,《电脑编程技巧与维护》2021年第4期。调用图像采集人脸识别子程序时,首先通过对应的异步串口向OpenMV模块发送命令,再由OpenMV模块调取内部的图像采集和人脸识别库函数完成采集识别。OpenMV模块会将识别结果发送至处理器,然后由处理器调用LCD显示子程序给出识别结果提示。

4)LCD显示子程序。LCD显示子程序负责显示红外测温数据、人脸图像、识别结果及给出相应的状态提示。

5)门禁控制子程序。该子程序负责控制对应的I/O产生门禁开关信号。

3.2 主程序

主程序流程图如图13所示。系统上电之后首先完成LCD显示初始化、测温传感器初始化、OpenMV模块初始化。然后调用按键扫描,判断是否有按键按下。当有按键按下时,调用按键处理子程序启动相应的按键处理功能。

3.3 按键处理子程序

按键处理子程序流程图如图14所示。该子程序功能如下:

1)S2按下:首先启动红外测温子程序,之后调用图像采集及人脸识别子程序,最后调用LCD显示子程序显示测温结果和识别结果。当判断体温正常及人员具备通过权限时,门禁开启。

2)S3按下:S3按下后,门禁自动开启。

3)S4按下:S4按下后,门禁自动关闭。

图14 按键扫描子程序流程图

3.4 红外测温子程序

通过异步串口与GY-MCU90614型红外测温传感器通信,可以读取温度数据。该测温传感器数据传输波特率2种可选:分别为9600bps和115200bps,本文设计时选用115200bps通信波特率。(7)参见高泽锋、李晓斌、黄淳梓:《基于GPRS技术的变电站红外测温及告警系统的实现》,《现代工业经济和信息化》2020年第10期。

红外传感器测温子程序流程图如图15所示。首先会发送查询输出温度命令,之后等待温度传感器返回1帧合计10字节的数据;完整收到10字节数据后,存储本次的测温值;对某个人连续完成10次温度测量后,采用排序均值滤波的方式处理这10次的测温数据,得到最终的人体额头温度值。

图15 红外测温子程序流程图

图16 图像采集与人脸识别子程序流程图

3.5 图像采集与人脸识别子程序

图像采集与人脸识别子程序流程图如图16所示。首先子程序会向OpenMV模块发送图像采集命令,之后OpenMV模块采集人脸图像,并将图像数据经串口发送至ARM处理器,处理器接收完成图像数据后,调用LCD显示子程序将图像显示在TFT液晶屏幕上面,然后发送图像识别命令,OpenMV模块启动人脸识别库函数调用;ARM处理器等待OpenMV模块的识别结果,当收到识别结果后,将识别结果发送至LCD液晶屏显示,同时根据识别结果产生门禁开启或关闭的控制信号。

3.6 门禁控制子程序

门禁控制子程序流程图如图17所示。首先读取门禁状态,如果允许门禁开启,则打开门禁,否则,继续等待。

图17 图像采集与人脸识别子程序流程图

4 系统功能测试

4.1 红外测温测试

以鱼跃红外测温枪的测温数据为参照,对门禁系统的红外测温功能进行测试,形成数据如表1所示。经过10组量程内数据对比发现,门禁系统的测温精度达到比较满意的设计要求。

表1 测温数据

4.2 人脸识别测试

提前拍摄同一人的不同表情人脸图像合计10张存储于OpenMV的存储卡上,使用门禁系统测试人脸识别效果,经过测试,当采集人脸与测试样本为同一人时,可以成功识别出身份匹配;当采集人脸与测试样本为不同人时,系统给出身份无权限的提示,测试结果见表2。门禁系统的人脸识别功能达到设计要求。

表2 人脸识别结果

5 结论

本文设计了一套基于红外测温技术和人脸识别技术的门禁系统,系统硬件主控芯片选用ARM处理器,使用GY-MCU90614型红外温度传感器采集温度,ARM处理器经异步串口读取温度数据。硬件系统添加OpenMV模块完成人脸图像信息数据的采集和识别,ARM处理器可以通过异步串口向OpenMV模块发送命令启动人脸识别。系统软件主要由主程序、按键子程序、测温子程序、LCD显示子程序和人脸图像采集识别子程序构成。所设计的门禁系统经过功能测试和验证,红外测温精度稳定且达到功能要求,人脸识别可以准确无误地判断采集图像是否与样本人脸数据匹配。系统结合红外无线测温技术和人脸识别技术可以解决当前人员流动监控的以下问题:首先是无人值守,通过智能终端设备自动采集人体体温、自动识别人员身份,后台程序自动判别是否开启闸机,可以实现无人值守监控,大大提高门禁管理运行的效率。其次,系统测温准确,设备测温有一套成熟的技术流程,可以很好地规避人为操作失误带来的测温失准。同时,温度数据可长期保存,当出现疑似感染人员时,可以方便调取其一段时间内的体温数据进行分析。最后,人脸特征身份识别准确度高,采用人脸特征识别来判断人员进入楼宇场所的权限,可以大大提高身份认证流程的效率,准确度相较于人工识别大大提高。

猜你喜欢

子程序测温串口
基于NPORT的地面综合气象观测系统通信测试方法及故障处理
浅谈AB PLC串口跟RFID传感器的通讯应用
疫情期间红外测温枪检测的基础理论和实验研究
基于EM9000工控板高性能双串口通信模型设计与实现
船舶电子设备串口数据的软件共享方法
变压器光纤测温探头的安装固定
基于DS18B20的单片机测温系统
浅谈子程序在数控车编程中的应用
子程序在数控车加工槽中的应用探索
西门子840D系统JOG模式下PLC调用并执行NC程序