张芸凡,徐学军,周赛明,杨 刚
(长沙理工大学 物理与电子科学学院,湖南 长沙 410114)
古人称舌诊为“舌鉴”,将舌象比喻成人体健康的一面镜子,时刻显示着人体的健康和疾病状态,是因为人舌体的各个部位均与腑脏各部位相对应,且通过经络运行相连通。其主要的规律为:舌尖主心肺,舌中部主脾胃,舌两侧主肝胆,舌根部主肾。舌诊主要观察舌质和舌苔的变化,舌质反映五脏精气的盛衰,舌苔反映病邪的性质和病位的深浅。对于健康人群,舌质较舌苔在可见光条件下更不容易被观察到。因此,为了更加清晰地观察到舌质以及舌体的分区,提出了一种舌体红外信息提取技术,来确保舌象信息的完整性和舌体分区的准确性,为中医舌诊的现代化提供有效方案。
现有图像分割方法大约可以分为:传统分割方法[1]、集合特定工具的图像分割方法[2-4]、基于深度学习的分割方法[5-6]等。传统分割方法中的图像阈值分割方法[7]是现代图像技术中最常用、最简单的分割方法,它特别适用于目标和背景占据不同灰度级范围的图像[8],在一定区域、范围内能够实施有效的分割。除此之外,学者杨晓倩通过结合遗传算法的全局搜索性能和区域生长法优化了snake模型[9]研究全局信息对图像分割的影响,解决了传统snake模型依赖初始点选取的问题,但计算过程有些复杂,而且收敛效果不太好。深度学习网络(Visual Geometry Group Network,VGG)[10]、GoogLeNet[11-12]以及残差网络(Residual Network,ResNet)[13]的提出,证明了深度学习在图像识别的能力都已接近甚至是超越了人类。2015年全卷积网络(Fully Convolutional Networks,FCN)[14]开创了语义分割的先河,实现了像素级别的分类。但训练一个网络需要的数据库非常庞大,同时网络对目标物分割的准确性与获得的训练数据集的准确性有密切联系。
1989年,天津中医学院中医研究所的张伯礼研究团队[15]将热物理现代测试技术与中医研究相结合,建立了人体正常舌热像图及其温度分布规律,发现舌体五个区域之间的平均温度差异较为明显。在这之后,上海中医药大学的李果刚等人[16]利用体表温度信息、湿度以及舌中的温度信息变化来探讨慢性胃炎脾胃虚寒证与胃阴亏虚证患者的关系;山东中医药大学的刘黎青等人[17]研究了不同舌象糖尿病患者的红外舌图变化。这些方法都凸显了热红外线能够检测到人眼不可视的信息,但没能将舌体的区域温度信息可视化。
基于训练数据集的准确性和脏腑所对应舌体的区域温度信息的划分两点问题的提出,该文改进了一种红外感兴趣区域(Region Of Interest,ROI)提取技术。首先,对载有温度信息的舌体精准提取出来,并借助U-Net分割网络将提取出的温度信息进行训练与学习,从而做到批量处理舌体温度信息,再对模型截取出的舌体进行评价指标验证,准确度可以达到0.991 1,验证了算法的可靠性。最后,利用HSV色彩模型进行3D可视化,发现舌体不同区域的温度差异很大,对比中医舌诊的脏腑分区发现,与之基本吻合,进而证明该提取技术不仅最大限度地避免曝光过度和密闭光暗环境的影响,使提取出的温度信息具有更好的呈现性和稳定性,而且还将载有温度信息的舌体精准同嘴唇、声带、牙床等干扰部位区分、割离,为中医舌诊的客观化提供有利前提。
一幅图像可以定义为一个二维函数,每一个像素点都会对应一组(x,y)。而像素是用来定义数字图像元素的术语,同时,这些元素可以组成一个矩阵,计算机对矩阵中的数值进行分析和计算,从而达到对数字图像的处理。由于ROI算法简单且快速,因此决定先利用多边形ROI对图片感兴趣的区域进行提取,是在指定范围内将颜色分类。首先要计算图像像素矩阵的均值、标准差和协方差,如式1~式3所示。
(1)
(2)
(3)
其中,式1均值描述的是样本集合的中间点,式2标准差描述的是样本集合的各个样本点到均值的距离的平均值,式3协方差是用来衡量两个变量关系的统计量。
然后,使用欧几里德距离进行彩色分割。式4表示欧几里德距离的计算公式。
(4)
其中,z表示图像空间中的任意一点,如果两个点之间的距离小于指定阈值T,则z相似于m。z表示所选取的初始点,将选取的所有点连接起来,点所包含的范围就是感兴趣区域,点未包含的区域令其彩色值为黑色。从而达到将感兴趣的部分提取出来的目的。
但是,经过简单多边形ROI提取的图像,其边缘会出现毛刺和锯齿或信息缺失等问题,为解决这些问题,该文结合Bezier曲线和Graham's scan算法对建立的多边形ROI模型进行改进。改进后的ROI模型能够在不丢失图像信息的条件下,令图片提取部分的边缘更加圆滑,为U-Net分割网络学习的准确性提供保障。
Graham's scan算法是凸包算法中的一种。该算法表示在一个平面内有N个点,以其中一点为顶点记作P0,可以组成一个凸状的多边形,且这个多边形恰好能够包围所有的点,如图1(a)凸包检测所示。
图1 Graham's scan算法与Bezier曲线
Bezier曲线又称为贝兹曲线或贝济埃曲线,它由线段与节点组成,节点是可拖动的支点,可以依据n个位置任意的点坐标绘制出的一条光滑曲线,式5展示了Bezier曲线还具有递归性,可以看出只要移动一个控制点,整条的曲线都会发生变化,体现了算法本身的整体性。
(5)
Bezier曲线始终在包含了所有控制点的最小凸边形中对其边缘进行平滑处理,这样处理图片可能会出现信息丢失的情况,因此Graham's scan操作一定要在Bezier曲线平滑前面进行扫描。实验发现,初始点选取的越多,对于Bezier曲线平滑的收敛性越好。
图1(b)为Bezier曲线平滑的结果。
为了更加高效、快速、批量地分割图片,决定采用深度学习网络来训练通过改进ROI模型得到的图片。
U-Net网络结构如图2所示。U-Net网络是现存深度学习网络中,最多被应用于医学图像处理方面的网络。其具体的运作方式是:输入一幅待处理的图片,首先对图片进行卷积操作;然后进行下采样,在这个过程中,网络对图片中的重要信息进行提取、输出,输出的结果作为下一层的输入,本次实验构建的U-Net网络对输入图片共进行四次下采样操作;之后对经过下采样的图片进行反卷积操作;最后进行上采样,此过程中,网络对与之对称的下采样提取到的重要信息进行融合输出,输出的结果作为下一次上采样的输入。四次上采样后,输出最终的分割效果图。
图2 U-Net网络结构
在构建神经网络的过程中,由于神经网络中每一层输出都与上一层输入呈线性关系,因此,为了给神经元引入非线性元素,常使用激活函数,使得神经网络可以任意逼近任何非线性函数,从而应用到更多的非线性模型中。由于该文进行的研究只需要分离舌体和除舌体以外的其他部分,因此采用ReLU函数作为激活函数。该函数可以更加有效地处理梯度下降以及反向传播过程,既避免了梯度爆炸和梯度消失问题,还可以大幅度地简化计算过程。同时,因为过拟合的模型在进行分割后会出现信息丢失的问题,所以要保证构建的模型不要太复杂。
HSV色彩空间模式是通过色调H、饱和度S、明度V三个颜色参数描述图片颜色。色调H是描述颜色色彩的参数,其度量单位为角度,取值范围为0°到360°,从红色开始按逆时针方向计算,红色为0°,绿色为120°,蓝色为240°。它们的补色分别为:黄色60°,青色180°,品红300°;饱和度S表示颜色接近光谱色的程度。一种颜色可以看成是某种光谱色与白色混合的结果。其中光谱色所占的比例越大,颜色接近光谱色的程度越高,颜色的饱和度也越高。所以,饱和度越高,颜色越深。其中,光谱色的白光成分为0,此时饱和度处于最高值。通常取值范围为0%到100%,S的值越大,颜色越饱和。明度V表示颜色明亮的程度,对于光源色,明度值与发光体的光亮度有关;对于物体色,V的值与物体的透射比、反射比有关。通常取值范围为0%的黑色到100%的白色。
颜色空间模型如图3所示。
图3 颜色空间模型
图3(a)是常见的RGB颜色空间模型,它是基于三原色混合得到的颜色模型。图3(b)是HSV色彩空间模型,该结构在几何形态上呈现椎体结构。式6~式8分别为RGB颜色空间转化为HSV色彩空间的表达式。
(6)
(7)
v=max
(8)
其中,r,g,b分别表示在RGB色彩空间模型下红色、绿色和蓝色分量的坐标值,取值范围在0到1之间。max表示r,g,b分量值中的最大值;min表示r,g,b分量值中的最小值。
图4(a)是海康威视H10可视热像仪自带图像处理软件iVMS-4800中的RGB温度梯度图,可以看出温度分层偏暗,且颜色跨度较大,这样设置的梯度图,会使舌体各区域温度之间的色差过小,舌象温度分区不明显,无法明确区分舌象的对应区域。图4(b)在HSV色彩空间的基础上,将温度梯度图的颜色增亮、颜色跨度缩小,从而提高了温度对比度,利用此温度梯度设计得到的舌象3D可视化效果图观察到的舌象分区更加突出。
图4 伪彩色编码温度梯度图
舌体表面温度信息提取流程如图5所示。实验使用的红外采集设备是海康威视H10可视热像仪,该热像仪自带图像处理的软件iVMS-4800一定程度上为后续的分割提供了便利。对经过软件简化处理后的舌象温度图进行阈值分割、多边形ROI提取,再借助U-Net分割网络模型进行训练学习,分离出只包含舌体表面温度信息的部分,然后将其结果进行可视化。文章在最后利用评价指标对该分割方法的精确度进行了评估,并与分割后的图像交互验证,证明该分割模型的准确性符合医学要求。
图5 舌体表面温度信息提取流程
为消除舌苔对观察舌质的影响,利用红外线的热效应和强穿透力来采集舌象能够避免其带来的局部影响,以便更直观地观察舌象温度信息。图6(a)、图6(b)和图6(c)分别代表25℃室温条件下,同一时间段内弱光照、适当光照、强光照下的普通RGB舌象图;图6(d)、图6(e)和图6(f)分别代表25℃室温条件下,同一时刻弱光照、适当光照、强光照下利用可视热像仪在距离舌体25 cm~30 cm的位置处检测得到的舌象温度图。对比其相应的灰度图发现,同一温度条件下,光照强度会对RGB舌象彩图的像素信息影响非常大,而对舌象温度图则几乎没有影响,基本保留了舌象上完整的温度信息。
图6 不同光照强度下的舌象图
观察图7(a)发现,边缘处温度过低的绿色信息和牙床的白色信息是图片中最为明显的噪声,为了去除这两种主要干扰信息,利用阈值分割方法对图像进行简单的预处理,通过对阈值选取的不断测试,选定(0,255,127)作为分割阈值对牙床部分进行初步处理,从而使牙床和舌体的差异性增强,同时将边缘的绿色噪声信息也一并抑制了。图7(b)是经过阈值分割处理后的舌象温度图,可以观察到,阈值分割方法将牙床部分的白色噪声和边缘处的绿色噪声进行了阈值为(0,0,0)的染色处理,令其染色后的黑色信息部分与温度图片中原本的红黄色信息部分产生了鲜明的色差,该预处理为之后的ROI特征提取提供了有力的前提。
图7 阈值分割预处理
由于实验对图片预处理所选用的阈值分割方法是基于全局的,该方法只考虑到了直方图供给的灰度信息,会忽略一些图片空间上的位置细节。因此,在对图像进行分割的阈值一定要选取的准确,根据图片的差异性也要选取不同的阈值。这样做在一定程度上避免了:相同直方图下,不同图像的问题。同时,对图片没有进行灰度值均衡化等操作,最大程度上保留了原图像中的温度信息,为研究舌象表面的温度信息提供保障。
先将2.2中预处理后的舌象温度图放入改进ROI模型中进行舌体提取,然后对舌体选择(255,255,255)进行染色,其他部分则选择(0,0,0)进行染色。如图8(b),改进的ROI提取图为最终的处理图。
图8 改进的ROI提取舌象标签图
如图8所示,是利用Bezier曲线和Graham's scan算法相结合的方法,对舌象温度信息提取技术训练数据集的采集标签图。图8(a)为普通多边形ROI提取的舌象标签分割图,图8(b)是采用该文改进过的多边形ROI提取技术的对比图。明显观察到,改进后的ROI提取技术对于舌象的边缘提取更加平滑,且没有信息缺失。
实验采集设备为海康威视H10可视热像仪,其响应频率在7 μm~14 μm之间,其检测范围为-20 ℃~550 ℃;图片的预处理软件为iVMS-4800;实验设备为Win10系统,GPU为GeForce RTX 3050,主机内存为16 GB;文中训练U-Net分割网络的环境为anaconda3。
舌象数据集中有927张为自己采集的舌象处理后的结果,280张为临床适用舌像图普[18]一书中的图片,共计1 207张。图9为部分数据集样本。
图9 数据集样本
为了验证改进ROI分割模型的可视化效果,采用了交并比(Intersection Over Union,IOU)、错误分类误差MisE(Misclassification Error,MisE)以及准确率(precision)等对其进行评估。
计算公式如下所示:
(9)
(10)
(11)
其中,TP表示将正样本预测为正样本,属于正确的预测;FN表示将正样本预测为负样本,属于错误的预测;FP表示将负样本预测为正样本,属于错误的预测;TN表示将负样本预测为负样本,属于正确的预测。其中,IOU与precision数值越高,证明网络训练的图像分割效果越好;而MisE则是数值越小,网络的训练效果越好。
为测试改进模型分割效果的准确度,使用326张舌象测试图片,借助评价网络对福建中医药大学钟振学者[19]处理得到的舌象数据、厦门大学杨大生学者改进的Snake方法[20]得到的舌象分割图、中国科学院大学的马龙祥[21]通过高分辨率特征分割到的舌像图以及该文通过改进ROI模型分割得到的数据结果进行评估,利用指标评价,计算IOU、MisE和precision,比较所得结果如表1所示。
从表1对比中可以看出,通过该文改进的ROI提取方法所标记整理出的数据结果,准确率达到0.99,而错误分类误差只有0.10,和常见的Snake分割方法相比较为准确,但与大量的医学数据库相比还有一些不足。通过评价指标的数据发现:将新采集到的舌象温度图输入到训练后的U-Net分割网络中,其输出对于舌体部分的提取效果准确度高,可视效果极佳。并且,此网络对不同图像进行分割训练也具有较强的鲁棒性。
从图10直观分析得到:U-Net网络在通过改进ROI模型分割出的1 207张数据集的训练之后,在新的分割处理任务中,能够精准定位图片中舌体的位置,并且有效地提取到只含有舌体温度信息的部分。处理得到的舌象图与中医舌诊要求下的舌象图展现出较强的符合性。其中,图10(a)为25℃室温条件下,健康青年早上九时所采集到的舌象温度图;图10(b)为训练后的U-Net分割网络进行处理后的舌象分割标签图;图10(c)表示U-Net网络分割之后的二维舌象信息可视化效果图。
图10 舌象分割的可视化效果
将图10(c)舌象温度信息可视化图中的RGB分量转化到改进后的HSV空间模型中进行3D可视化,令舌象上不同位置的温度信息对比更加明显,观察更加直观,效果如图11所示。
图11 舌象温度信息3D可视效果图
从图11中可以明确地观察到,舌尖部分、舌中部分、舌两边和舌根部的温度信息有明显差异,其各区域之间的温度差异与天津中医药大学姜智浩等学者[22]实验所得到的舌体温度数据相符。而该舌体温度信息的3D可视效果图比图10的二维舌象温度分割图更容易观察到舌体表面各个部分的温度差异,并且,其每个具有明显温度差异的部分与中医中舌象的脏腑分区理论相符合。
根据舌象分割的可视化效果和舌象温度信息3D可视化效果得出如下结论:改进后的ROI分割技术在经过U-Net网络学习之后,对提取的舌体温度信息具备准确度高,信息完整,可视化强,边界清晰,不受可见光影响等特点。通过与传统中医诊疗手段的配合和分析,该技术能够完整地为中医舌诊的舌形、舌质与舌苔问题的一体化处理提供理论支持和数据库构建。能够较好地实现中医问题望诊的数据化、现代化和科学化,应用前景广泛,意义重大。