非接触式面部穴位温度检测系统的设计
The Design of Non-Contact Facial Temperature Detection System
DOI: 10.12677/CSA.2021.115147, PDF, HTML, XML, 下载: 416  浏览: 656  科研立项经费支持
作者: 马兴录, 夏 妤:青岛科技大学信息科学技术学院,山东 青岛
关键词: 非接触式测温UDP连接Dlib穴位Non-Contact Temperature Measurement UDP Connection Dlib Acupoint
摘要: 针对普通测温仪以检测整个面部的温度为主,继而引起测温准确度受限的问题,提出通过改进的Dlib人脸检测算法对面部穴位进行测温。本文采用KTVC3100SY红外无感快速人体测温筛查热像仪为实验平台,借助其可见光摄像头与红外摄像头采集的信息进行穴位温度检测。针对测温仪的红外图像与可见光图像无法建立联系,提出通过借助UDP协议传输实现坐标点和红外数据的对应得到温度值。通过在VS环境下进行python编程,对人脸进行测温实验。结果表明:采用改进的Dlib人脸检测算法进行穴位温度提高了测温的精确度,弥补了整体面部测温受自然环境影响的不足;并不是所有的穴位都具有这种优势,选择正确穴位提高穴位测温精确度。
Abstract: In view of the problem that the normal thermometer mainly detects the temperature of the whole face, and then causes the problem of limited temperature measurement accuracy, it is proposed to measure the temperature of the face acuity by the improved Dlib face detection algorithm. In this paper, the KTVC3100SY infrared nonsensitive fast human body temperature screening thermal imager was used as the experimental platform, and the temperature of acupoint was detected with the information collected by its visible light camera and infrared camera. In view of the failure to establish contact between infrared image and visible image of the thermometer, it is proposed that the coordinate point and infrared data can be obtained by using the UDP protocol transmission to obtain the temperature value. The face temperature was measured by python programming in the VS environment. The results show that the acuity temperature using the improved Dlib face detection algorithm improves the accuracy of temperature measurement and makes up for the lack of in-fluence of the overall facial temperature measurement by the natural environment. But not all acupoints have this advantage. Choosing the right acupoints can improve the accuracy of temperature measurement at acupoints.
文章引用:马兴录, 夏妤. 非接触式面部穴位温度检测系统的设计[J]. 计算机科学与应用, 2021, 11(5): 1436-1444. https://doi.org/10.12677/CSA.2021.115147

1. 引言

受疫情的影响,测温仪已经成为生活必备的一种设备。非接触式温度测温因为对测温者的束缚较小,测温方式简单快速而成为首选的测温设备,但是非接触测温仪也存在不足会受到目标体表面反射率、发射率、环境温度和仪器测温系统的影响 [1]。测量距离的不同和测温区域的不同像素点 [2] 测量的温度值也会引起误差。所以如何获得高精度测温结果 [3],是红外测温仪发展必须要解决的问题。魏鹏绪、辛随成写的经络和穴位的皮肤温度测量中提到穴位温度在中医学中反应“寒热”现象具有明显的优势 [4],法国J. Bor-Sarello通过红外热像图技术发现面部等温线与人体经络线存在相似 [5]。芹泽胜助发现穴位处温度比周围温度高0.5℃~1.0℃。西条一止提出温度差,在对5例健康人经络线及周围皮温进行检测后发现经络处温差点的出现频率比非经络处高5.2倍,这一结果与红外热成像相吻合。本山博 [6]、刘绍安 [7] 对使用液晶显示方式显示经络走行方式进行过研究。国内学者张栋在内脏疾病患者的背部用红外热像仪观察到背俞定部位出现高温区域,会比周围温度高0.5℃以上 [8]。李自双对40例肝实热患者太冲、肝俞穴进行过检测,结果显示患者穴位处温度同样高于健康者 [9]。蒋来等提出穴位注射后,发现对于出现循经感传的病例,其走行与经络走行基本吻合 [10]。陈振湘发现在红外热像图中人体部分经络与古典经络基本吻合。何广新 [11]、刘瑞庭 [12]、张栋 [13] 也提出过类似发现。上述研究不仅证明了穴位与五脏六腑之间的关系,更加表明,穴位有助于更好地分析疾病人病理以及解决方法,可以作为一种判断治疗效果的辅助指标来指导治疗。

本文提到的面部穴位的温度检测,基于红外成像仪的非接触式体温检测可以作为判断疫情的辅助手段。人体的红外图像除了提供基本的温度信息外,还蕴含了大量信息可以提取。测温仪以检测整个面部的温度为主,但中医学穴位可以更精准地呈现人体的身体状况,所以对基于面部各穴位的温度变化为人体健康状况的判断所提供的基础数据进行了研究。在非接触情况下得到客观的数据,相比较传统的中医方法,如舌诊、脉枕,得到的数据更加科学和成熟。因此,对穴位进行温度检测有效性更高并可以更好地提高与针灸等医学领域的结合度。

2. 非接触式面部穴位温度检测系统设计方案

2.1. 系统总体架构

本系统由客户端和服务端两部分组成,客户端对应于图像采集、显示温度信息、设备管理和参数配置。服务端应用于图像信息处理,检测人脸并测温。以VS为开发环境,具备支持测温仪运行的深度图像处理和TCP/UDP协议传输的能力。

体温检测界面有三部分,左上区域显示的是实时视频,左下区域显示正常的体温抓图,右侧区域显示异常体温抓拍,如图1所示。

Figure 1. System detection interface

图1. 系统检测界面

2.2. 系统运作流程

Figure 2. System operation flow chart

图2. 系统运作流程图

系统正常工作流程如下:首先可见光摄像头捕捉到人脸,系统将对可捕获到的视频帧进行预处理,使用回归算法预测每一个点在图像当中的位置,对检测到的框进行遍历,找到脸颊区域进行关键点定位进而确定额头区域。通过调用进程,将该帧额头左上角和右下角坐标在红外数据帧中取到额头区域温度并计算平均温度,最终返回温度显示在标记区域,如图2所示。

3. 算法研究与设计

与非接触式测温系统相比,进行了面部测温到穴位测温的改变。穴位温度检测主要从人脸捕捉、穴位标注方面入手,故本文基于Dlib人脸检测算法根据已有的目标检测模型以获取其在图像下的穴位坐标信息。

3.1. Dlib人脸检测算法

在人脸68个关键点检测的dat模型库结合patrikhuber的eos分支项目组成用于图像处理的开源库 [14],使用这个模型库可以很方便地进行人脸检测,并进行简单的应用,81个点最终以坐标的形式来返回。与人脸识别有区别的是,需要加上一个形状检测器shape_predictor_81_face_landmarks.dat,可以直接使用。基于dlib的shape_predictor_81_face_landmarks模型检测人脸的81个特征点,每个特征点指定一个特定的索引,由索引标来提取特定的脸部结构。用到的两个关键函数 [14]:dlib.get_frontal_face_detector()和dlib.shape_predictor(predictor_path)。第一个是使用HOG pyramid的一个内置人脸检测算法,得到人脸框。第二个是用来标记人脸关键点,返回人脸关键点预测值。使用开源模型shape_predictor_81_face_landmarks.dat,可以得到81个特征点位置的坐标。

3.1.1. 算法改进

1) 本文主要是使用人脸检测算法确定穴位坐标点,考虑到人脸的穴位数目过多选择了穴位比较集中的额头区域。本文对算法区域定位进行改进,使用回归算法预测每一个点在图像当中的位置,对检测到的框进行遍历,找到脸颊区域进行关键点定位,同时打印出左上角(索引76)和右下角(索引78)坐标位置。保留原算法对面部的定位,确定坐标点的输出让该算法更适合小区域的确定,额头坐标如表1所示。

Table 1. Multiple detection of the coordinates of the upper left and lower right corners of the forehead

表1. 多次检测额头左上角、右下角坐标

2) 在Dlib人脸检测实现穴位标注,类似于形成一个热成像单元,对应index值通过UDP协议在红外温度数据进行相应的转化 [15]。

3) 引用UDP协议,为了匹配仪器实现可见摄像头和红外摄像头信息转换。对温度值提出接收请求、接收和接收额头两个坐标的字符串。

4) 增加红外温度存放模块,完成16位二进制数据转换。改进的算法增加了与设备的契合度,保证了数据的正常传输,是温度检测精度提高的基础,温度数据转化如图3(a)、图3(b)所示。

(a)(b)

Figure 3. Temperature data

图3. 温度数据

3.1.2. 实验数据集

为了保证算法的可行性,本文使用的是81面部地表形状预测器,在给定任何图像的情况下可以找到81个面部特征界标。在68个面部地标外添加了13个覆盖额头区域的地标,额头的13点是参考了patrikhuber的eos分支项目,其他68个点是在300W和WFLW数据集上进行的实验。300 W是现在使用比较广泛的人脸关键点检测基准数据集,在数据集中每个图像上包含多张人脸,但只标注一张。包括 [14]:AFW (337),Helen (train 2000 + test 330),IBUG (135),LFPW (train 811 + test 224)。3148张图像,测试集是554 + 135 = 689张。室外环境搜集的数据集中表情、光照条件、姿态、遮挡导致脸部大小变化非常大。在该数据集中,每张人脸图像被标注了68个关键点如图4所示。

Figure 4. Different points marked by different data sets

图4. 不同的数据集标记不同的点

WFLW包含了10,000张脸部图片(7500张用于训练的图像和2500张用于测试)图b标注有98个关键点,关键点是对人脸形状的稀疏表示。除了地标标注外还包含丰富的属性标注,即遮挡、光照、姿态、模糊和现有的综合分析算法的表达 [16]。在使用的Dlib人脸检测开源数据中 [4],300W数据集平均误差为3.60%,WFLW数据集平均误差为5.50%,并且只有2.81M的参数量,减少了计算资源的消耗同时保证了高精度,具有很大的实用价值。

3.2. 数据传输

UDP协议是一种无连接的网络协议 [17]。数据传输之前,服务端和客户端不会建立连接,在需要它传输数据的时候直接简单的抓取来自应用程序的数据即可。UDP不属于连接型协议,不需要去维护连接状态,具有资源消耗小,处理速度快的特点而且一台服务集可以向多个客户机去传输相同的数据,具有较好的实用性。提供的是一种面对面的连接,是一种可靠的字节流服务。在正式进行通讯之前首先通过一些握手机制确认双方通讯意向并建立一条认为可以传输的概念通道。发送端只负责发送数据不会对字节数据做出任何解释,解释均由接收端来完成。在进行传输完毕之后还要断开连接。

UDP协议发送数据主要步骤 [18]:

1) 创建发送端的Socket对象;

2) 获取输出流,写数据;

3) 释放资源。

UDP协议接收数据 [17]:

1) 创建接收端的Socket对象;

2) 绑定套接字;

3) 获取输入流,读取数据显示在控制台。

3.3. 几种人脸检测算法对比

本文选取Haar级联人脸检测算法和Dlib人脸检测算法在本文自建的带有人脸的图片上进行目标检测任务的测试,其中检测速度测试在本文的测试结果选取平均检测人脸个数与检测速度两项指标进行对比分析评价,速度测试在计算机上进行。如表2中展示了单个人脸目标检测算法的对比实验结果。

Table 2. Comparison of single face detection algorithm results

表2. 单人脸检测算法结果对比

通过表2对比可以发现在检测速度方面Haar级联人脸检测在本文数据集下与其他算法相比精度最高,但是在平均检测人脸个数方面确不如Dlib人脸检测算法以及本文的改进版。考虑到若将面部测温准确到穴位测温,对算力有要求,所以更轻量化的Dlib人脸检测算法改进版具有更好的实用性。本文改进的算法相比原算法虽然速度有下降但是在人脸准确捕捉方面有了较大提升,可以保证其检测准确性。综合考虑,本文改进的算法在速度与精度方面取得一定平衡,为今后部署到嵌入式设备进行应用打下基础。

3.4. 测温方法对比

本文通过四种测温方式进行测温检测。主要有温度计、点阵式红外测温仪、非接触式测温仪、非接触面部穴位温度检测仪。实验结果从测温精度、测温距离和平均测温时间作为主要评价指标。实验测得各类测温设备准确率如表3所示。

Table 3. Comparison of single face detection algorithm results

表3. 单人脸检测算法结果对比

通过表3不同测温方式之间的测温准确率对比可以看出,在开源数据集的测试结果表明本文所用的方法识别速度相对效果最优。

点阵式红外测温系统

前期研究的测温系统基于树莓派4,利用摄像头、小喇叭、显示屏,并选用红外热像仪模块,构建了一种基于红外传感器的红外测温设备。红外测温模块思路:先对测温模块初始化设置无人状态进行20次循环计算背景温度。对获取到的后十次温度数据使用缓慢平均算法得到背景温度。当被测者出现在测量区域时,记录突变点个数(当前温度与背景温度差大于30),计算被测人员距离设备的位置得出体温,设备自动进行数据保存,若体温异常语音播报报警信息。使用的测温方式是点阵式红外测温,对热源逐点测温,测得的各点温度数据结合红外热成像模组温度数据指令重新计算排列后放在光学视场中,不再将黑体作为体温筛查的标准 [17]。因为只是在可见光图像进行温度的计算无法排除外界环境和温度对测温的干扰 [19],在后期研究中添加了红外摄像头,从可见光和红外两方面入手去进行温度的测量,增加了穴位测温,帮助测温更加准确。

3.5. 实验结果分析

本测试硬件设备,包括热像仪、PC机、网线。实验开始前已完成对热像仪可见光、红外摄像头的内外参数标定,热像仪与PC机完成链接,数据可以传递到PC机。实验场景温度检测如图5所示。

Figure 5. Experimental test

图5. 实验测试

实验对检测者多次进入摄像头范围进行重复测温,测温结果如表4所示。

Table 4. Temperature measurement results

表4. 测温结果

非接触式面部穴位温度检测系统通过UDP协议传输的Dlib人脸检测算法坐标点,进而获取红外数据库函数对数据转化,从而完成温度检测。但是通过在后续的实验中发现,存在导致个人整体体温升高的疾病,比如,气阴两虚型病人等,可能会导致穴位的温度略高或者略低。因为穴位的温度特性优势是相对的,并不是所有的穴位都具有这种优势,接下来的工作在于选择正确穴位提高穴位测温精确度。

4. 结论

本文提出了一种基于穴位温度的检测体温的方法,利用OpenCV实现了人脸融合技术,通过可见光图像结合红外数据检测温度,借助UDP协议和Dlib技术,改进人脸关键点算法,实现了坐标点和温度的对应,得到了温度值。实验能在单人条件下实现温度检测,下阶段需要完善算法实现多人同时检测,来提高测温检测效率。

基金项目

2017年山东省重点研发项目“基于多肽的抗污染肿瘤标志物检测仪的研制”(2017GSF218088)。

参考文献

[1] 陈红强. 非接触式红外热成像测温技术探析[J]. 中国安全防范技术与应用, 2020(4): 14-18.
[2] 刘雨薇, 龚仁蓉, 许瑞华, 李远霞, 李卡. 人体不同部位红外温度计体温测量值的比较研究[J]. 护理学杂志, 2020, 35(16): 59-62.
[3] 孙志远, 李清安, 乔彦峰, 朱玮. 提高红外测温系统测温精度的研究[J]. 仪器仪表学报, 2006(z1): 67-69.
[4] 魏鹏绪, 辛随成. 经络和穴位的皮肤温度测量[J]. 针灸临床杂志, 2005(7): 57-58.
[5] 中医研究院情报资料室. 红外线等温图描记术是否能测绘经络[J]. 中医药研究参考, 1974(6): 46.
[6] 王本显. 国外对经络问题的研究[M]. 北京: 人民卫生出版社, 1984: 28-40, 109-114.
[7] 陈振湘. 利用人体特异功能和红外热像仪研究经络的实验报告[J]. 浙江中医杂志, 1981, 16(9): 403-404.
[8] 张栋. 计算机化红外热像仪用于针灸原理和经络现象的研究[J]. 红外技术, 1992, 14(4): 28-32.
[9] 李自双, 黄兰, 王毅刚, 等. 智能化穴位温度检测仪的研制及实验研究[J]. 北京生物医学工程, 1996, 15(2): 83-87.
[10] 蒋来, 陈振湘, 宋贵美, 等. 循经感传红外成像的初步观察[J]. 中医杂志, 1980, 20(2): 46-49.
[11] 何广新. 经络客观化的研究: 以红外热像图显示经络现象的实验观察[J]. 中中国针灸, 1983, 3(5): 23-26.
[12] 刘瑞庭, 庄鼎, 杨秀珍, 等. 循经感传现象客观显示的研究——上肢经脉循行部位红外热像图的变化[J]. 针刺研究, 1990, 15(3): 239-243.
[13] 张栋, 付卫星, 王淑友, 等. 经脉温度特性的红外热像图显示[J]. 针刺研究, 1996, 21(3): 63-67.
[14] 侍新兰, 杜友福, 王同喜. 基于OpenCV的活体检测[J]. 电脑知识与技术, 2020, 16(15): 211-213.
[15] 晏敏, 颜永红, 曾云, 曾健平. 非接触式红外测温原理及误差分析[J]. 计量技术, 2005(1): 23-25.
[16] 刘绍安. 液晶显示“烧山火”“透天凉”的反应和经络感传[C]//针灸论文摘要选编——献给世界针灸学会联合会成立暨第一届世界针灸学会大会. 北京: 中国针灸学会, 1987: 140.
[17] 傅玥, 蔡兴富. Socket网络编程——基于TCP协议或UDP协议[J]. 中国新通信, 2020, 22(8): 57-58.
[18] 许坤, 赵亮. 基于UDP协议的可靠数据传输的实现[J]. 科技创新导报, 2019, 16(17): 7-8.
[19] 胡少聪. 基于深度学习的人脸识别方法研究[J]. 电子科技, 2019, 32(6): 82-86.