非接触式检测装置综合实验设计
2022-07-11何翔
何翔
(中国计量大学 浙江省杭州市 310018)
随着电子电路技术、传感器技术的快速发展,越来越多的传感器模块被研制并且应用在人们的生产、生活中,从简单的单信号传感器到复杂的多融合传感器,各式各样的传感器作为装置的检测元件,在为人们提供便利的同时,也进一步保证了人们的安全。
当今,生活中需要检测的对象越来越多,便捷、有效且安全的进行各项检测是当前检测技术发展的重要手段,非接触式智能检测的问题越发的受到人们的关注,越来越多的传感器被用于智能识别,自动化检测中。其中,一些由传感器、处理单元等搭建的产品通过对人体的体温、人脸、口罩等特征的检测识别,可快速有效的对适应人群进行筛选,满足生活中对人群筛选要求,实现无接触式的检测功能。
为了让学生学习传感器的工作方式和使用方法,将当前实际需求与实验教学相结合,设计了非接触式检测装置综合实验项目。旨在让学生熟悉电子信息与图像处理互相结合的开发技术;掌握电子电路中信号采集、处理并存储的方法;熟悉当下应用范围较广的OpenMV 机器视觉模块的原理与使用方法;了解机器视觉人脸检测的技术实现方法。通过硬件搭建、软件编写以及算法应用的实验过程,让学生在实验中更好的巩固学习知识,培养学生的自主思考能力和项目处理能力,提高实验教学质量。
1 系统设计
1.1 系统原理与硬件选择
非接触式检测装置是通过传感器获取被测者的特征信息,并通过人为制定的人群筛选规则需求,进而判断被测者是否满足筛选标准。为了满足上述功能需求,所设计搭建的非接触式检测装置需满足人脸识别、身份比对、体温测量等基础要求,因此,需要对整体系统组件进行选择。
处理单元是所有电子设备不可或缺的部分,本文实验装置以STM32F4 系列单片机作为主处理器,如图1(c)所示;STM32F4 采用Crotex M4 内核,最高主频168MHz,提供140 个GPIO 口,最高时钟速度达到37.5MHz;并且,其具有增强的DSP 指令集,有备份域SPAM,可通过Vbat 供电保持数据等功能,足以满足本文非接触式检测装置设计所需。采用数字式热电堆传感器MLX90614 作为温度传感元件;如图1(a)所示;MLX90614 具有体积小、易于集成、精度高、抗干扰能力强等特点;并且,出厂完成的基本配置以及校准使其温度解码方式较为简单、使用方便,满足非接触式温度测量的基本需求。采用OpenMV 作为本装置的视觉识别感知模块,如图1(b)所示;OpenMV 提供完善的Python 接口,可使用Python 进行编程,具有低成本、多功能、编程简易等特点,并且与STM32 联合使用方式简单,资源丰富,满足人脸识别和身份比对的要求。
图1:硬件模块
1.2 系统总体方案设计
非接触式检测装置以STM32F4 单片机作为主控制器,通过MLX90614 热电堆传感器采集人体温度信号并与单片机通过I/O 相连,如图2 所示。可见,MLX90614 模块由SCL 与SDA 与STM32F4 的I/O 进行数据传输,并通过两个上拉电阻进行高电平锁定,保证数据交互的稳定性。
图2:MLX90614 与STM32 连接图
在主控制器上装备OpenMV 视觉模块,通过其采集被测者的视觉图像信息,以进行人脸身份、面部口罩佩戴的识别。另外,装载可触控式的LCD 屏幕,实现交互式的可视化界面,系统总体框图如图3 所示。
图3:总体设计流程图
2 体温测量与身份识别
2.1 非接触式体温测量
为减少检测过程中的人为介入以及人为接触,减少耗费的人力资源,非接触式智能体温测量尤为重要。物体红外辐射能量的大小和波长的分布与其表面温度密切相关;红外测温是根据物体的红外辐射能量来确定物体的温度,不与被测物体接触,具有温度分辨率高、响应速度快、稳定性好等特点。
本文实验装置采用MLX90614 传感器结合单片机测量人体体温。MLX90614 传感器输出的温度信号经过内部低噪声、低失调的运算放大器放大后经过A/D 转换器转换为17 位数字信号通过可编程FIR 及IIR 低通数字滤波器处理后输出,配置为10 位的PWM 输出格式用于连续传送温度范围为20~120°C 的物体温度,其分辨率为0.14°C,输出结果存储在其内部RAM 存储单元中。且该模块在出厂前已进行校验线性化,可通过适当的解码方式计算其测量的温度。故在程序设计中,使用IIC 协议连接MLX90614 传感器与STM32F4 单片机,并将获取的数据进行解码,以获得实际的数据。
2.2 人脸识别
人脸识别技术是根据人体的面部特征,在一张输入的图像中首先找到人脸的位置,然后再识别被测者的身份的一种新型的图像处理手段。由于面部特征总存在一定的规律,近年来提出了很多图像特征算子来对这一特征进行描述。
本文基于局部二值模式(Local Binary Pattern, LBP)对人脸进行检测。LBP 时用于描述图像局部特征的算子,具有灰度不变性何旋转不变性即不受光照强度即图像旋转变化的影响。LBP 的原理是通过比较判断图像中某点八联通的领域与当前点的灰度值大小,简化局部特征,并通过转编码的方式存储,如图4 所示。由此,可以将复杂的图像数据转换成简单的二进制数据模式来进行存储,以保存图像中某个局部的边界特征。
图4:LBP 特征算子原理
因此,使用LBP 算子进行图像中的人脸识别,首先,需要先使用摄像头拍摄被测试者的人脸照片存入SD 卡中;其次,计算新捕获的被测者图片计算的局部特征算子;然后,抽取图像样本库中的人脸特征,得到每个人人脸特征的平均值,将平均值与被测试者的人脸特征进行比对;最后,计算样本中的人脸与被测试者的人脸的差异度,将所有差异度进行比对,得到识别的结果。具体流程如图5 所示。
图5:人脸识别流程图
通过上述方法,可以简单实现本地少量存储的人脸识别。基于以上方法,还可将计算计算每个局部LBP 特征算子的直方图,即每个数字出现的频率,并且对该直方图进行归一化处理,然后,将计算可到的各局部统计直方图连接成一个特征向量,也就是构成整幅图的LBP 纹理特征向量,然后便可以用SVM 或者其他机器学习算法进行分类了,以实现规模更大,准确度更高的人脸识别。
2.3 口罩检测
在对人脸识别的要求后,本文设计的非接触式检测装置可一步检测面部佩戴的口罩,本文采用色块识别的方法对人脸口罩检测进行求解。
色块识别是图像处理中依据颜色或是灰度值来筛选ROI区域的常用算法,其具有使用简单,计算量小,判断方便的优点。故本文使用色块识别算法结合最小外接矩形来对口罩进行检测。首先,使用Find_Blobs 函数根据图片中的颜色、边界大小、像素数量获取图像中所有满足要求的色块区域;然后根据得到色块区域,在进行最小外接矩形来确定口罩的范围,最后绘制出满足要求的口罩,如图6 所示。在实际应用中,还可将色块识别计算的结果与人脸识别的区域结果相结合,通过对两者的重叠区间进行计算,以减少误检概率,提高口罩识别的准确率。
图6:口罩识别效果
2.4 可视化触控交互界面
可视化交互是装置中不可缺少的部分,在完成上述识别检测功能程序后,需进一步在非接触式检测装置中加入便于可视化的交互模块。设计采用在STM32F4 主控上装载可触控式LCD 显示屏的方式来显示识别测量后的输出内容。在STM32F4 中有完整的LCD 显示开发工具包,且LCD 显示功能完善,信息输出能力强,方便在后续装置调试与使用中对输出结果进行观察。
另外,为了更好的进行检测报警,满足装置在检测到不满足条件的观测人群进行提示的功能,增加了蜂鸣器用于装置警报。同时,为优化MLX90614 测量部位的指示,进一步的增加了激光电路。
3 实验结果及分析
对上述所描述的装置组件进行搭建,并且在OpenMV中编写图像处理的Python 脚本,完成上述在STTM32 单片机中的功能程序的编写、调试,并组合软硬件结构后,学生搭建所完成的非接触式检测装置如图7 所示。
图7:非接触式检测装置实物图
接着,对所搭建非接触式检测装置进行功能验证,主要由体温测量功能实验、身份识别功能实验以及戴口罩检测功能实验三部分组成。
通过非接触式检测装置与标准仪器测得的温度进行对比,以验证本实验装置的体温测量功能。在实验中,分别使用精度为0.1℃的额温枪与本实验装置多次采集不同被测者的体温,并求其平均值比较其误差。温度测量统计结果如表1 所示,可以看出,本文实验装置的温度测量值与温度实际值之间的误差不大于0.8℃,并且对高低温也具有一定的适配能力,证明本文温度测量方法具有一定的真实性。
表1:体温测量
分别采集10 位被测者共100 张人脸图片,并将其中5位被测者的人脸信息录入识别装置中,通过对采集的被测者照片进行判定,计算人脸识别的准确率,统计结果如表2 所示;通过对识别通过照片以及识别准确率分析可知,在总测试图片中,有48 张已录入且判定正确图片通过,存在3 张误检的人脸图像,总体识别准确率为94.12%,具有较高的可信度。
表2:人脸识别结果统计
采集戴口罩与不戴口罩各50 张照片,将其混合打乱后使用检测装置依次对其进行戴口罩结果的判定,检测结果如表3 所示;可以看出,在总测试图片中,有49 张正确佩戴口罩通过,存在1 张误检的图像,本文设计的非接触式检测装置对口罩识别有较高的准确率。
表3:口罩检测结果统计
通过上述实验结果可知,所设计的非接触式检测装置具有体温测量、身份信息识别以及口罩识别的功能,且其温度测量误差不大于0.8℃,人脸识别准确率为94.12%,口罩检测准确率为98.04%,具有较高的检测识别能力;设计的可触控显示界面能边界有效的输出消息,具有较强的交互性。
4 总结
结合工程实际,以非接触式检测应用为主要背景,本文设计了非接触式检测装置,并应用于电子设计综合创新实验教学中。实验以STM32F4 单片机为主控芯片,结合传感器测量模块、单片机软件开发、图像处理技术、特征算子等知识点,拓展学生在实验训练中的自主设计发挥的能力,锻炼学生的工程实践能力。本实验可拓展能力强,通过对系统的软件设计可产生不同的结果,进一步发挥学生的主观能动性,并让学生自主的参与自己设计的系统中,提升学生的参与度与获得感。实验紧跟时下潮流热点,让学生在实验中巩固专业知识,学习时下热门技术,培养开发与实践能力。