基于BP神经网络的人体表面皮肤温度场测量方法与流程

文档序号:13456927阅读:422来源:国知局
基于BP神经网络的人体表面皮肤温度场测量方法与流程

本发明涉及一种人体温度场计算方法,特别是涉及一种基于bp神经网络的人体表面皮肤温度场测量方法。



背景技术:

体温可以反映出当前的身体健康状况并且可以对人体未来的健康状况做出预警。尤其当人体部分器官组织发生病变时人体表现为局部温度升高或降低。因此,对人体尤其是临床病人的全身温度场进行实时监测就变得尤为重要。

现有技术中,对人体温度场的测量多集中于有限元分析和红外测温方面。其中有限元分析的方法主要是对人体进行节段划分,根据各节段人体生理参数,建立人体温度场模型,如文章《lumpedversusdistributedthermoregulatorycontrol:resultsfromathree-dimensionaldynamicmodel》中建立了人体三维热传导模型可实现4×105个节点的动态人体分布计算,所需的计算时间大约为实际模拟时间的4倍。有限元分析方法通常具有计算量大,需时长,运行物理内存大等缺点。

在红外测温方面,通过使用红外热像仪对人体进行测量,得到红外灰度图像,对图像进行处理可以得到人体表面皮肤温度分布形式。文章《非制冷红外热像仪人体表面温度场测量及误差修正》提出了一种利用非制冷红外热像仪得到人体表面不同温度点的灰度值的方法,并对灰度图像进行处理后得到人体表面温度场;专利号cn105769130a《一种测量人体体温的装置和方法》提出了一种通过红外温度传感器实现人体m×n个采样点的温度采集,其中m>3,n>3,并将落入温度有效区间的温度进行平均的方法,得到人体平均温度。但该方法受测温原理的限制,测温精度普遍不高;专利号cn10191319a《基于光纤布拉格光栅的智能服装人体测温模型》基于光纤传感测量原理,提出了一种将fbg光栅运用到人体体温测量中,实现人体局部点温度的测量,并建立人体温度加权模型。但该模型只是实现了人体单点或有限点体温计算,无法实现人体温度场的大规模计算。



技术实现要素:

为解决上述技术存在的测量精度低、计算量大、对人体体温只能单点测量等问题,本专利提出了一种基于bp神经网络的人体表面皮肤温度场测量方法。bp神经网络具有很强的非线性映射能力,因此能模拟任意的非线性输入输出关系。普通位置点(即仅在网络建立中涉及到的测试点)的坐标值、关键位置点(即在网络建立中及获得人体温度场所必须的测试点)的温度值和人体所处的环境温度值作为bp神经网络的输入向量,普通位置点的温度值作为网络输出向量,通过bp神经网路算法计算出关键位置点温度值和普通位置点温度值的关系来建立人体温度场模型,从而可计算出人体皮肤表面温度值。

为了解决上述技术问题,本发明提出的一种基于bp神经网络的人体表面皮肤温度场计算方法,包括以下步骤:

步骤一、测试点位置的确定:将多个光纤光栅温度传感器布置在人体表面皮肤上,将多个光纤光栅温度传感器的位置划分为第一测试点和第二测试点,并将1个光纤光栅温度传感器布置在被测人体所处的环境中作为环境测试点;

所述第一测试点的位置包括被测人体的颈前、右胸、左胸、腹部、右外上臂、左外上臂、右外下臂、左外下臂、右手背、左手背;左背、右背、颈后、后腰、右后上臂、左后上臂、右后下臂、左后下臂;右大腿前、左大腿前、左小腿前、右小腿前、右脚面、左脚面;左大腿后、右大腿后、左小腿后和右小腿后;第二测试点的位置包括多个位于被测人体表面的且不同于上述第一测试点的位置;

步骤二、训练样本数据的提取:提取所有第二测试点的坐标值及与各第二测试点坐标位置对应的温度值和所有第一测试点的温度值及环境测试点的温度值;

步骤三、网络训练:构建一个bp神经网络,所述bp神经网络包括输入层、中间层和输出层;bp神经网络输入层至中间层的传递函数采用s型正弦函数;中间层至输出层的传递函数采用s型对数函数;

将步骤二获得的第二测试点的坐标值、第一测试点的温度值和环境测试点的温度值作为该bp神经网络的输入值,将第二测试点的温度值作为该bp神经网络的输出值,用步骤二提取的训练样本数据对该bp神经网络进行训练,从而获得训练好的bp神经网络;

步骤四、人体温度场获取:按照步骤一确定被测人体的第一测试点、第二测试点及环境测试点;将第二测试点的坐标值和第一测试点的温度值及环境测试点的温度值输入步骤三训练好的bp神经网络,从而得到人体表面皮肤温度场分布。

进一步讲,本发明的步骤三中,对bp神经网络进行训练包括以下步骤:

步骤1、将人体按照四肢、躯干前半身和躯干后半身分为六个区域,在每个区域建立二维坐标系;对于第二测试点,不同时刻下布置位置不同;对于每个区域均进行如下处理:

在不同时刻,通过区域内布置的光纤光栅温度传感器和布置在被测人体所处环境中的光纤光栅温度传感器测得该区域内所包含的第一测试点及人体所处环境的温度值;记录第二测试点的当前坐标,采用温度标准测量仪器测出第二测试点的温度值;从而在一定时间内测得多组该区域内所包含的第一测试点、第二测试点及人体所处环境的温度值和第二测试点的坐标;

步骤2、bp神经网络的输入层为第二测试点的坐标值、第一测试点的温度值和人体所处环境的温度值;bp神经网络的输出层为第二测试点的温度值;bp神经网络的中间层的节点个数j由式(1)所示的lippmann经验公式确定:

式(1)中,round()为取整,p为输入层的节点数,q为输出层的节点数;

利用式(2)分别对输入向量和输出向量进行归一化处理,

式(2)中,xi'为样本经归一化处理之后的值,xi为原数据;xmin、xmax分别为原数据的最小值和最大值;然后将输入向量和输出向量提供给bp神经网络的输入层和输出层;

步骤3、对bp神经网络的输入层至中间层连接权值w、中间层至输出层连接权值v、中间层各单元输出阈值θ及输出层各单元输出阈值γ赋予(-1,1)间的随机值;

步骤4、利用输入层的输入坐标数据、连接权值w、阈值θ和输入层至中间层的传递函数,计算中间层各单元的输入值、输出值;再利用中间层的输出值和连接权值v、阈值γ和中间层至输出层的传递函数,计算输出层的输出值;然后利用输出层各单元的输出值和实际测量值所产生的误差去调整权值w,v和阈值θ,γ;重复该步骤直至所得的网络全局误差函数e≤ε,其中,ε为网络性能目标误差;从而获得训练好的bp神经网络。

与现有技术相比,本发明的有益效果是:

利用bp神经网络算法实现了人体全身温度场的测量,其方法简单精确。

附图说明

图1为本发明中各测试点的布局及所用装置的示意图;

图2为本发明实施例中人体躯干前半身的温度场计算示意图;

图3为本发明实施例的bp神经网络基本框架图;

图4为本发明方法的系统流程图。

具体实施方式

下面结合附图和具体实施例对本发明技术方案作进一步详细描述,所描述的具体实施例仅对本发明进行解释说明,并不用以限制本发明。

本发明提出的一种基于bp神经网络的人体表面皮肤温度场测量方法,其设计思路是:根据基于bp神经网络方法建立的人体温度场模型建立人体表面皮肤的温度分布图。将人体躯干前半身,人体躯干后半身,四肢六部分利用人体关键测温点(即第一测试点)所布置的光纤传感器分别建立如人体躯干前半身等区域的人体温度场模型。建立所述bp神经网络模型需要大量的数据对模型进行训练。训练和检验所述bp神经网络,选用s型函数作为激发函数;设置初始学习速度和动量项;网络中权值、阈值随机生成;设置网络训练结束条件(误差达到要求)。利用bp神经网络良好的非线性映射能力,训练完成后的网络模型可用于人体皮肤表面温度场模型的建立。在网络训练时,提取的数据量越大则人体皮肤表面温度场模型的误差越小。

如图4所示,本发明基于bp神经网络的人体表面皮肤温度场测量方法,步骤如下:

步骤一、测试点位置的确定:将多个光纤光栅温度传感器布置在人体表面皮肤上,将多个光纤光栅温度传感器的位置划分为第一测试点和第二测试点,并将1个光纤光栅温度传感器布置在被测人体所处的环境中作为环境测试点;

如图1所示,所述第一测试点的位置包括被测人体的颈前、右胸、左胸、腹部、右外上臂、左外上臂、右外下臂、左外下臂、右手背、左手背;左背、右背、颈后、后腰、右后上臂、左后上臂、右后下臂、左后下臂;右大腿前、左大腿前、左小腿前、右小腿前、右脚面、左脚面;左大腿后、右大腿后、左小腿后和右小腿后;第二测试点的位置包括多个位于被测人体表面的且不同于上述第一测试点的位置;

步骤二、训练样本数据的提取:本实施例中,通过测量分别布置于被测者颈前、右胸、左胸、腹部、右外上臂、左外上臂、右外下臂、左外下臂、右手背、左手背;左背、右背、颈后、后腰、右后上臂、左后上臂、右后下臂、左后下臂;右大腿前、左大腿前、左小腿前、右小腿前、右脚面、左脚面;左大腿后、右大腿后、左小腿后、右小腿后及环境中的29个光纤光栅温度传感器的波长值,并通过传输光纤21、22、23和24连接耦合器3、光环形器4、由稳压电源驱动的宽带光源5、光纤解调仪6和计算机7实现用于关键位置点和人体所处环境温度的采集,即提取所有第二测试点的坐标值及与各第二测试点坐标位置对应的温度值和所有第一测试点的温度值及环境测试点的温度值;

步骤三、网络训练:构建一个bp神经网络,所述bp神经网络包括输入层、中间层和输出层;bp神经网络输入层至中间层的传递函数采用s型正弦函数;中间层至输出层的传递函数采用s型对数函数;将步骤二获得的第二测试点的坐标值、第一测试点的温度值和环境测试点的温度值作为该bp神经网络的输入值,将第二测试点的温度值作为该bp神经网络的输出值,用步骤二提取的训练样本数据对该bp神经网络进行训练,从而获得训练好的bp神经网络;具体步骤包括:

步骤1、将人体按照四肢、躯干前半身和躯干后半身分为六个区域,在每个区域建立二维坐标系;对于第二测试点,不同时刻下布置位置不同;对于每个区域均进行如下处理:

在不同时刻,通过区域内布置的光纤光栅温度传感器和布置在被测人体所处环境中的光纤光栅温度传感器测得该区域内所包含的第一测试点及人体所处环境的温度值;记录第二测试点的当前坐标,采用温度标准测量仪器测出第二测试点的温度值;从而在一定时间内测得多组该区域内所包含的第一测试点、第二测试点及人体所处环境的温度值和第二测试点的坐标;

步骤2、bp神经网络的输入层为第二测试点的坐标值、第一测试点的温度值和人体所处环境的温度值;bp神经网络的输出层为第二测试点的温度值;bp神经网络的中间层的节点个数j由式(1)所示的lippmann经验公式确定:

式(1)中,round()为取整,p为输入层的节点数,q为输出层的节点数;

利用式(2)分别对输入向量和输出向量进行归一化处理,

式(2)中,xi'为样本经归一化处理之后的值,xi为原数据;xmin、xmax分别为原数据的最小值和最大值;然后将输入向量和输出向量提供给bp神经网络的输入层和输出层;

步骤3、对bp神经网络的输入层至中间层连接权值w、中间层至输出层连接权值v、中间层各单元输出阈值θ及输出层各单元输出阈值γ赋予(-1,1)间的随机值;

步骤4、利用输入层的输入坐标数据、连接权值w、阈值θ和输入层至中间层的传递函数,计算中间层各单元的输入值、输出值;再利用中间层的输出值和连接权值v、阈值γ和中间层至输出层的传递函数,计算输出层的输出值;然后利用输出层各单元的输出值和实际测量值所产生的误差去调整权值w,v和阈值θ,γ;重复该步骤直至所得的网络全局误差函数e≤ε,其中,ε为网络性能目标误差;从而获得训练好的bp神经网络。

步骤四、人体温度场获取:按照步骤一确定被测人体的第一测试点、第二测试点及环境测试点;将第二测试点的坐标值和第一测试点的温度值及环境测试点的温度值输入步骤三训练好的bp神经网络,从而得到人体表面皮肤温度场分布。

以人体躯干前半身为例描述本发明的实现过程。建立二维坐标系如图2所示,通过光纤光栅温度传感器测得图中颈后测试点p1,左胸测试点p2,右胸测试点p3,腹部测试点p4点(即4个第一测试点)及测试点p5(即环境测试点)的不同时刻的系列温度t1、t2、t3、t4和t5。同时采用温度标准测量仪器测出第二测试点p6的系列温度t6,并记录该第二测试点6当前时刻的坐标值(每一时刻下,该第二测试点p6的位置是变化的)。将测得的上述数据t1、t2、t3、t4、t5、t6及第二测试点p6当前时刻的坐标值输入到pc机,利用式(2)进行数据归一化处理,将归一化处理后的数据作为网络的输入输出数据,并对网络进行训练。

bp神经网络由输入层、中间层和输出层之间互连,拓扑结构如图3所示。输入层为第二测试点的坐标值、第一测试点的温度值和环境测试点的温度值;中间层的节点个数由式(1)确定,本实施例中,输入层节点数为7,输出层节点数为1时,代入式(1)得到中间层的节点个数为5;输出层为第二测试点的温度值。

对该bp神经网络的输入层至中间层连接权值w、中间层至输出层连接权值v、中间层各单元输出阈值θ及输出层各单元输出阈值γ赋予(-1,1)间的随机值。利用输入层的输入坐标数据、连接权值w、阈值θ和输入层至中间层的传递函数,计算中间层各单元的输入值和输出值。再利用中间层的输出值和连接权值v、阈值γ和中间层至输出层的传递函数,计算输出层的输出值。然后利用输出层各单元的输出值和实际测量值所产生的误差去调整权值w,v和阈值θ,γ。重复该步骤直至所得的网络全局误差函数e≤ε。其中ε为网络性能目标误差,如图4所示。

总之,本发明主要是利用多组输入输出数据对网络模型进行训练,最终得到关键位置点与人体普通位置点温度的关系,可用于预测人体皮肤表面普通位置点的温度。

尽管上面结合附图对本发明进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨的情况下,还可以做出很多变形,这些均属于本发明的保护之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1