周飞 李峥 高万明
摘 要:设计一种嵌入式防疫识别系统,利用红外测温传感器实现无接触人体测温和人脸佩戴口罩识别.系统选用STM32F103RCT6为控制核心,OPENMV4机器视觉模块,非接触式红外温度传感器MLX90614.该系统具有无接触检测和口罩识别的功能,能有效预防接触和呼吸传播,具有工作稳定、智能化、安全化等优势.
关键词:嵌入式;无接触测温;摄像头模块;人脸识别;口罩识别
[中图分类号]TP274.2 [文献标志码]A
Design of Embedded Epidemic Prevention Identification System
ZHOU Fei,LI Zheng*,GAO Wanming
(School of Physics and Electric Information Technology,Huaibei Normal University,Huaibei 235000,China)
Abstract:An embedded anti-epidemic recognition system is designed,which uses infrared temperature sensor to realize non-contact body temperature measurement and face mask recognition.The system uses STM32F103RCT6 as the control core,OPENMV4 machine vision module,non-contact infrared temperature sensor MLX90614.The system has the functions of non-contact detection and mask recognition,can effectively prevent contact and inhalation transmission,work stability,intelligence, security and other advantages.
Key words:embedded;contactless temperature measurement;camera module;face recognition;mask recognition
全国人民抗"疫"过程中,科技发挥了重要作用.为了提高防疫效率,有效预防疫情进一步传播,设计了一种嵌入式防疫识别系统.系统利用无接触测试技术和面部识别技术,以微处理器为核心,有效控制了疫情进一步传播.
1 系统的硬件设计
系统包括四个模块:主控模块,摄像头模块,测温模块,液晶屏模块,电源模块.摄像头模块用于采集人脸信息,采集的人脸信息作为训练样本.液晶屏模块显示识别的信息,无接触测温模块测量人体体温,电源模块提供能量.
1.1 主控模块
主控模块选用STM32F103RCT6为控制核心,主要功能是和其他模块建立联系,指挥其他模块运行,使各个模块有序配合工作.STM32F103RCT6具有Cortex-M3内核[1],速度是72 MHz,RAM和ROM容量大,方便數据的存储,可外接许多外设,功耗低,稳定性高.
1.2 摄像头模块
摄像头模块采用OPENMV4机器视觉模块,模块引脚如图1所示.采用STM32H7处理器,OV7725摄像头模组,主频480 MHz,RAM为1 MB,Flash为2 MB,存储空间大,运行速度较快.OPENMV4使用python语言编写[2],在编写相关机器视觉算法中可以处理图像数据,通过算法的结果控制IO引脚.OPENMV4也可以在嵌入式上快速运行,具有操作简单、功耗低等优点.
1.3 测温模块
测温模块选用非接触式红外温度传感器MLX90614.该模块可以直接输出16位数字信号,具有非接触性、体积小、精度高等优点.在红外能量传送到传感器这一过程中信号会发生损失,主要因素是测温距离以及环境温度的影响.
在MLX90614传感器的主轴线17时接收到红外辐射信号峰值较好,也就是说此传感器的视场是35时测温较准确.[3]2-7 cm测量时温度误差最小.
1.4 显示模块
使用两种液晶显示屏:一个是1.7寸液晶屏结合OPENMV4配合使用,用以设置人脸框,显示摄像头当前捕获到的人脸是否在设置范围内.[4]另一个是七寸液晶屏显示系统相关信息,通过指令对屏幕操作,用液晶屏的触摸按键代替传统的机械按键,用液晶屏设计数字键盘和拼音键盘界面,输入新用户的信息、预设温度值.
2 系统软件设计
2.1 程序设计
软件流程框图见图2.
(1)利用Haar特征分类器检测人脸.Haar是一些矩形特征的模板,可以根据Haar判断人脸和非人脸.[5]根据积分图计算图像中所有区域像素和,利用Adaboost算法构建分类器.
(2)利用LBP算法进行人脸识别.先采集人脸样本,计算所采集样本的特征[6]值.本设计采用改进的LBP算法:圆形LBP算子[7-8],以中心像素为圆心,以R为半径画圆,在圆的边界均匀采集n个点作为采样点.圆形LBP数学公式为:
L
式中,(XC,YC)是邻域中心点,(XP,YP)是一个采样点,计算出采样点的坐标.也可以通过双线性插值得到该采样点的像素值:
得出来圆形的LBP特征图像,如图4所示.
利用LBP的旋转不变性计算LBP的值,把计算出来的最小值作为该邻域的LBP值,提高其准确性和执行速度.
计算出来LBP值,然后进行编码并做循环移位,最终取其中的最小值.图6是利用LBP旋转不变性得出的LBP特征图像.
进行人脸识别时,利用OPENMV4采集正在识别的人脸信息.采集完成后,计算出采集的图像特征值,对比已经训练好的数据,当两者的差值最小的时候,即为被测者.
图3 样本图图4 圆形LBP值图像图5 样本图LBP值图像图6 旋转不变性的LBP形式显示图形式显示图值图像形式显示图
3 系统的调试
口罩识别测试 先录入十人未戴口罩及戴口罩的多组照片,分别比对100次,记录识别成功的次数并计算成功率,结果见表1.
人脸识别测试 先录入十人的多组照片分别比对100次,记录识别成功的次数并计算成功率,结果见表2.
由表1和表2分析可知,在对10人的测试中,虽然背景环境及光线强弱会对比对结果造成影响,但不管是对身份的检测还是对口罩佩戴情况的检测,识别成功率较高,识别效果可以满足测试要求.
在4 cm处放置手腕,利用测温枪作为体温的标准,测量10次.测试结果和利用MLX90614红外测温传感器测量结果对比,其误差绝对值均≤2 ℃.
4 结语
本文设计并一款嵌入式识别系统,系统选用STM32F103RCT6为控制核心,OPENMV4机器视觉模块,非接触式红外温度传感器MLX90614.嵌入式识别系统利用摄像头采集信息,非接触温度传感器测温,七寸屏显示和报警,实现了非接触测温,人脸识别和口罩识别一体化.识别成功率较高,能有效预防接触和呼吸传播,具有工作稳定、智能化、安全化等优势.
参考文献
[1]周瑛,杨盛国,林亮.基于ARM的心电接收机的设计与实现[J].牡丹江师范学院学报:自然科学版,2013(4):21-22.
[2]陈璨.基于OpenMV的螺旋埋弧焊钢管焊缝跟踪系统研究[D].荆州:长江大学,2019.
[3]胡家骏.红外非接触测温系统设计与实现[D].哈尔滨:黑龙江大学,2016.
[4]裴彧,蔡维由,程远楚,等基于单片机系统的液晶汉字界面制作[J].三峡大学学报:自然科学版,2001(1):51-53.
[5]曹洁,唐瑞萍,李伟.基于扩展的Haar-Like特征和LBP特征的人脸压缩跟踪算法[J].传感器与微系统,2019,38(11):125-128.
[6]曹萍萍,刘升.Android平台人脸识别方法研究[J].牡丹江师范学院学报:自然科学版,2018(4):27-30.
[7]刘晓妍.基于改进局部二值模式算子与蚁群优化的图像边缘提取算法[J].西南师范大学学报:自然科学版,2019,44(7):69-76.
[8]Rangkuti Abdul Haris,Harjoko Agus,Putra Agfianto.A Novel Reliable Approach For Image Batik Classification That Invariant With Scale And Rotation Using MU2ECS-LBP Algorithm[J].Procedia Computer Science,2021,179.
編辑:琳莉
收稿日期:2020-12-28
基金项目:国家自然科学基金项目(61572224);安徽省高校自然科学研究重点项目(kj2019A0955);淮北师范大学课程团队建设项目(kctd19049);淮北师范大学研究生教育精品课程项目(2019jpkc02)
作者简介:周飞(1995-),男,安徽亳州人.硕士研究生,主要从事嵌入式控制研究;李峥(1980-),男,安徽淮北人.副教授,博士,硕士生导师,主要从事嵌入式控制研究;高万明(1996-),男,安徽安庆人.硕士研究生,主要从事嵌入式控制研究.
通讯作者:李 峥