本发明涉及人工智能领域,特别涉及一种舌头区域识别的方法、装置及计算机存储介质。
背景技术:
舌诊是中医望诊中的一个重点观测指标,舌头也被中医称为心之苗,脾之外候,苔由肺气所生。在中医中又有舌尖属心肺,舌边属肝胆,舌中属脾胃,舌根属肾。因此通过观察舌面苔迹、舌质相关属性,包括颜色、形态等可以了解人的身体状况。在舌诊检测过程中也有通过计算机识别进行辅助判断,但是现有的识别方式通常仅能识别整个舌体部分,对于摄图各区域的识别正确率不高,无法用于辅助舌诊。
技术实现要素:
本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提供了一种舌头区域识别的方法、装置以及计算机存储介质,可以提升舌头区域的识别的准确性。
根据本发明第一方面实施例的一种舌头区域识别的方法,包括如下步骤:
采集舌头图像;
通过目标检测算法对所述舌头图像进行图像识别,获取目标舌头信息;
将所述目标舌头信息输入已训练好的unet分割网络进行区域分割,得到舌根信息、舌中信息、舌尖信息、舌边信息,其中,所述unet分割网络采用全尺度跳跃连接,且在所述unet分割网络的每一层设置有1*1卷积核;
将所述舌根信息、所述舌中信息、所述舌尖信息、所述舌边信息以及所述目标舌头信息输入到已训练好的深度学习网络进行分类处理,得到舌头属性、舌根属性、舌中属性、舌尖属性以及舌边属性。
根据本发明的上述实施例,至少具有如下有益效果:通过建立有深度监督机制以及全尺度跳跃连接的unet分割网络,提升舌头不同区域的识别的准确性。同时,通过深度学习网络对分割后的目标舌头信息进行学习以获得舌头不同区域的信息,从而提供进行舌诊的数据。因此,通过上述实施例,可以提升舌头区域的识别的准确性。
根据本发明第一方面的一些实施例,所述舌头区域识别的方法还包括如下的步骤:
获取所述目标舌头信息的置信度;
将所述置信度与预设的置信度值进行比较,并根据比较结果选择是否进行舌头图像重采集以得到满足条件的所述目标舌头信息。
因此,通过获取置信度大于等于预设的置信度值的目标舌头信息,从而可以保证输入unet分割网络、以及深度学习网络的图像质量符合要求,提升后续特征识别的准确率。
根据本发明第一方面的一些实施例,所述unet分割网络包括像素级特征图、块级特征图以及图像级特征图;所述unet分割网络通过指数损失函数对所述像素级特征图进行评估,以确定unet分割网络的优化方向;所述unet分割网络通过focalloss损失函数对所述块级特征图进行评估,以确定unet分割网络的优化方向;所述unet分割网络通过交并比损失函数对所述图像级特征图进行评估,以确定unet分割网络的优化方向。通过在unet的不同的层次特征图选用不同的损失函数,可以对图像的特征提取在不同层次进行优化,以使分割的图像与的所需的图像更加接近,从而可以提升舌头区域的识别的准确率。
根据本发明第一方面的一些实施例,所述深度学习网络通过深度学习骨干网络与assp(atrousspatialpyramidpooling)结构相结合得到。通过assp可以将具有多尺度的图像进行更好的融合,从而提升舌头区域的识别的准确率。
根据本发明第一方面的一些实施例,所述深度学习网络通过vgg16、vgg19、inceptionv3、xception、mobilenet、alexnet、lenet、zf_net、resnet18、resnet34、resnet50、resnet_152或efficientnet中的至少一种算法建立所述深度学习骨干网络。
在本发明第一方面的一些实施例中,所述深度学习网络通过xception建立所述深度学习骨干网络,其中,所述xception采用深度可分离卷积以及空洞分离卷积对任意分辨率的图像进行特征图提取,以得到所述深度学习骨干网络。通过采用xception可以更加充分的提取目标舌头信息的特征。
根据本发明第一方面的一些实施例,所述深度学习网络以及所述unet分割网络中进行训练的图像为经过属性标注的图像。
根据本发明第一方面的一些实施例,所述舌头区域识别的方法还包括:
根据所述舌头属性、所述舌根属性、所述舌中属性、所述舌尖属性以及所述舌边属性获取用户参数;
将所述用户参数与预设的建议调理方案进行匹配,并将所述用户参数以及所述建议调理方案进行展示。
根据本发明第二方面提供的一种舌头区域识别的装置,所述舌头区域识别的装置包括:
数据采集模块,用于采集舌头图像数据;
目标识别模块,用于通过定目标检测算法获取目标舌头信息;
区域分割模块,用于通过unet分割网络,得到舌根信息、舌中信息、舌尖信息、舌边信息;
属性确定模块,用于通过深度学习网络,得到舌根属性、舌中属性、舌边属性、舌尖属性。
由于第二方面的舌头区域识别的装置应用第一方面任一项的舌头区域识别的方法,因此具有本发明第一方面的所有有益效果。
根据本发明第三方面提供的一种计算机存储介质,包括存储有计算机可执行指令,所述计算机可执行指令用于执行第一方面任一项所述舌头区域识别的方法。
由于第三方面的计算机存储介质执行的指令可以执行第一方面任一项的舌头区域识别的方法,因此具有本发明第一方面的所有有益效果。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是本发明实施例的舌头区域识别的方法的主要步骤图;
图2是本发明实施例的unet分割网络示意图;
图3是本发明实施例的舌头区域识别的装置的结构示意图。
附图标记:
数据采集模块100、目标识别模块200、区域分割模块300、属性确定模块400、展示模块500。
具体实施方式
本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。此外,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
下面参照图1至图3描述本发明的舌头区域识别的方法、装置及计算机存储介质。
根据本发明第一方面实施例的一种舌头区域识别的方法,如图1所示,包括如下步骤:
步骤s100、采集舌头图像。
应理解的是,舌头图像可以来源于用户用手机实时拍摄或者从历史相册中上传的包含舌头的图片。
步骤s200、通过目标检测算法对舌头图像进行图像识别,获取目标舌头信息。
应理解的是,目标检测算法可以采用如下之一:yolov4目标检测算法、r-cnn、fastr-cnn、fasterr-cnn、ssd、yolov1、yolov2、yolov3、yolov4、yolov5或efficientdet。
步骤s300、将目标舌头信息输入到已训练好的unet分割网络进行区域分割,得到舌根信息、舌中信息、舌尖信息、舌边信息,其中,unet分割网络采用全尺度跳跃连接,且在unet分割网络的每一层设置有1*1卷积核。
应理解的是,在unet中进入全尺度跳跃连接后,每个unet的解码层都融合了来字编码器的小尺度(较底层)、同尺度以及大尺度(较上层)的特征图,可以获得细粒度语义和粗粒度语义。同时,通过1*1卷积核监督每个层次的网络输出,以得到更好的训练效果。此时,unet分割网络如图2所示。
步骤s400、将舌根信息、舌中信息、舌尖信息、舌边信息以及目标舌头信息输入到已训练好的深度学习网络进行分类处理,得到舌头属性、舌根属性、舌中属性、舌尖属性以及舌边属性。
因此,通过建立有深度监督机制以及全尺度跳跃连接的unet分割网络,提升舌头不同区域的识别的准确性。同时,通过深度学习网络对分割后的目标舌头信息进行学习以获得舌头不同区域的信息,从而提供进行舌诊的数据。因此,通过上述实施例,可以提升舌头区域的识别的准确性。
在本发明第一方面的一些实施例中,步骤s200后,步骤s300前,还包括如下的步骤:
获取目标舌头信息的置信度。
应理解的是,在实际的应用过程中,采集到的原始舌头图像数据可能存在不能完全覆盖舌头等问题,因此,需要进行置信度判断。
将置信度与预设的置信度值进行比较,并根据比较结果选择是否进行舌头图像重采集以得到满足条件的目标舌头信息。
应理解的是,预设的置信度值可以根据经验值进行设置,在一些实施例中,预设的置信度值为0.8。
应理解的是,当置信度值大于预设的置信度值时,将获取的目标舌头信息输入unet分割网络进行分割。
应理解的是,在一些实施例中,还会对原始舌头图像进行图像质量检测,如像素点,以保证上传的图像质量足够好,从而使得后续的获取的舌头属性、舌根属性、舌中属性、舌尖属性以及舌边属性更加准确。
因此,通过获取置信度大于等于预设的置信度值的目标舌头信息,从而可以保证输入unet分割网络、以及深度学习网络的图像质量符合要求,提升后续特征识别的准确率。
在本发明第一方面的一些实施例中,unet分割网络包括像素级特征图、块级特征图以及图像级特征图;unet分割网络通过指数损失函数对像素级特征图进行评估,以确定unet分割网络的优化方向;unet分割网络通过focalloss损失函数对块级特征图进行评估,以确定unet分割网络的优化方向;unet分割网络通过交并比损失函数对图像级特征图进行评估,以确定unet分割网络的优化方向。通过在unet的不同的层次特征图选用不同的损失函数,可以对图像的特征提取在不同层次进行优化,以使分割的图像与的所需的图像更加接近,从而可以提升舌头区域的识别的准确率。
在本发明第一方面的一些实施例中,深度学习网络通过深度学习骨干网络与assp(atrousspatialpyramidpooling)结构相结合得到。通过assp可以将具有多尺度的图像进行更好的融合,从而提升舌头区域的识别的准确率。
在本发明第一方面的一些实施例中,深度学习网络通过vgg16、vgg19、inceptionv3、xception、mobilenet、alexnet、lenet、zf_net、resnet18、resnet34、resnet50、resnet_152或efficientnet中的至少一种算法建立深度学习骨干网络。
在本发明第一方面的一些实施例中,深度学习网络通过xception建立深度学习骨干网络,其中xception采用深度可分离卷积以及空洞分离卷积对任意分辨率图像进行特征图提取,以得到深度学习骨干网络。通过采用xception可以更加充分的提取目标舌头信息的特征。
在本发明第一方面的一些实施例中,深度学习网络以及unet分割网络中进行训练的图像为经过属性标注的图像。
应理解的是,在实际训练中,是将整张舌头图像输入进行训练,将舌头图像的各区域进行属性标注,可以使得深度学习网络以及unet分割网络在训练时能够知道进行训练时,知道舌头图像各部分的属性。
在本发明第一方面的一些实施例中,舌头区域识别的方法还包括:
根据舌头属性、舌根属性、舌中属性、舌尖属性以及舌边属性获取用户参数。
应理解的是,以舌根属性为例,舌根的属性包括颜色,不同的颜色对应不同的心肺的情况,因此通过舌头属性、舌根属性、舌中属性、舌尖属性以及舌边属性得到对应的身体器官的情况。
将用户参数与预设的建议调理方案进行匹配,并将用户参数以及建议调理方案进行展示。
根据本发明第二方面提供的一种舌头区域识别的装置,如图3所示,舌头区域识别的装置包括:
数据采集模块100,用于采集舌头图像。
目标识别模块200,用于通过目标检测算法获取目标舌头信息。
区域分割模块300,用于通过unet分割网络,得到舌根信息、舌中信息、舌尖信息、舌边信息。
属性确定模块400,用于通过深度学习网络,得到舌根属性、舌中属性、舌边属性、舌尖属性。
由于第二方面的舌头区域识别的装置应用第一方面任一项的舌头区域识别的方法,因此具有本发明第一方面的所有有益效果。
应理解的是,上文中装置可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。
根据本发明第三方面提供的一种计算机存储介质,包括存储有计算机可执行指令,计算机可执行指令用于执行第一方面任一项舌头区域识别的方法。
由于第三方面的计算机存储介质执行的指令可以执行第一方面任一项的舌头区域识别的方法,因此具有本发明第一方面的所有有益效果。
应理解的是,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。
下面参考图1至图3以一个具体的实施例详细描述根据本发明实施例应用舌头区域识别的方法的装置。值得理解的是,下述描述仅是示例性说明,而不是对发明的具体限制。
如图3所示,数据采集模块100,用于采集舌头图像数据。
如图3所示,目标识别模块200,用于通过定目标检测算法获取目标舌头信息。
如图3所示,区域分割模块300,用于通过unet分割网络,得到舌根信息、舌中信息、舌尖信息、舌边信息。
如图3所示,属性确定模块400,用于通过深度学习网络,得到舌根属性、舌中属性、舌边属性、舌尖属性。
具体的,如图1步骤s100,数据采集模块100获取用户用手机实时拍摄的舌头图像。
进一步,如步骤s200,目标识别模块200通过目标检测算法对舌头图像进行图像识别,获取目标舌头信息。
进一步,目标识别模块200获取目标舌头信息的置信度。
进一步,目标识别模块200将置信度与预设的置信度值进行比较,当置信度大于或者等于预设的置信度值时,继续执行下面的步骤;否则重复步骤s100~步骤s230直至置信度值满足条件。具体的,预设的置信度值为0.8。
进一步,如图1中步骤s300,区域分割模块300将目标舌头信息输入到已训练好的unet分割网络进行区域分割,得到舌根信息、舌中信息、舌尖信息、舌边信息。
进一步,如步骤s400,属性确定模块400将舌根信息、舌中信息、舌尖信息、舌边信息以及目标舌头信息输入到已训练好的深度学习网络进行分类处理,得到舌头属性、舌根属性、舌中属性、舌尖属性以及舌边属性。
进一步,舌头区域识别的装置还包括展示模块500。
进一步,展示模块500根据舌头属性、舌根属性、舌中属性、舌尖属性以及舌边属性获取用户参数。
进一步,展示模块500将用户参数与预设的建议调理方案进行匹配,并将用户参数以及建议调理方案进行展示。
具体的,区域分割模块300中通过如下步骤建立如图2所示的unet分割网络以及训练unet分割网络。
首先,unet分割网络采用全尺度跳跃连接,且在unet分割网络的每一层设置有1*1卷积核。具体的,如图2所示,x0,1、x0,2、x0,3、x0,4的特征图接入一个1×1的卷积核(即图示conv1×1)。
进一步,unet分割网络建立包括像素级特征图、块级特征图以及图像级特征图的网络结构。
进一步,unet分割网络通过指数损失函数对像素级特征图进行评估,以unet分割网络的优化方向。
进一步,unet分割网络通过focalloss损失函数对块级特征图进行评估,以确定unet分割网络的优化方向。
进一步,unet分割网络通过交并比损失函数对所述图像级特征图进行评估,以确定unet分割网络的优化方向。
进一步,在unet分割网络训练时,将舌头图像数据进行区域属性的标注后输入unet分割网络进行训练;此时,通过上述方式完成unet分割网络的训练。
进一步,深度学习网络通过深度学习骨干网络与assp(atrousspatialpyramidpooling)结构相结合得到。具体的,深度学习骨干网络通过xception建立,具体的,xception采用深度可分离卷积以及空洞分离卷积对任意分辨率的图像进行特征图提取,以得到深度学习骨干网络。
进一步,将标注了属性的舌头图像数据输入深度学习网络进行训练,最终得到训练好的深度学习网络。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。