1.本发明属于图神经网络技术领域,具体涉及一种基于
图像图表示与图神经网络的
骨关节健康状态评估方法及系统。
背景技术:
2.膝关节骨性关节炎(oa)是最常见的肌肉骨骼疾病。膝关节在全球残疾因子中排名第11位,从而给社会造成了很大的经济负担。据报道,估计每个患者的oa总费用达到19000欧元/年,甚至更多。膝关节骨性关节的健康也越来越受到人们的关注,对于骨关节健康的评估目前主要是通过问答以及x射线影像进行评估,其评估过程存在一定的主观性。
3.从目前来看,已经提出了基于卷积神经网络图像分类的解决方案来评估膝关节骨性关节炎的严重程度。并且图神经网络(gnn)是图上机器学习的一个强大工具。gnn已经成功的运用于图分类、语义分割以及机器翻译等方面。同时在gnn基础上发展了许多变体网络,如图卷积网络(gcn)、图注意力网络(gat),其中gat对每个
节点的邻居节点进行注意力运算有效的解决了gcn无法处理动态图的问题。图神经网络也存在了许多问题,如:深层的图神经网络存在梯度消失、过平滑和过拟合问题。这些挑战限制了gcn在大规模图上的表示能力,后来有研究发现通过残差、密集连接模块能够有效的解决这些问题。
4.图卷积神经网络和图注意网络等图神经网络通过沿输入图的边缘递归传递神经消息,将节点特征信息与图结构相结合,同时结合图结构和特征信息会导致复杂的模型。深度学习模型的可解释性为其预测提供了人类可以理解的推理。如果不解释预测背后的原因,深度学习算法就像黑匣子,对于一些场景说是无法被信任的。通过合理的解释器,能使得更好的理解模型背后如何工作的。
技术实现要素:
5.针对现有技术存在的不足,本发明提出了一种基于图像图表示与图神经网络的骨关节健康状态评估方法及系统,该方法包括:获取骨关节图像并对其进行图表示,得到骨关节图像的节点信息、边信息和邻接矩阵;将骨关节图像的节点信息、边信息和邻接矩阵输入到训练好的基于图神经网络的骨关节健康状态评估模型中,得到最佳骨关节健康状态评估结果;采用训练好的模型对骨关节图像进行评估时,可视化图神经网络对骨关节图像关注区域的热力图;
6.对基于图神经网络的骨关节健康状态评估模型进行训练的过程包括:
7.s1:获取带有标签的骨关节图像,其中标签为对骨关节健康等级的描述标记;将带有标签的骨关节图像划分为训练集和测试集;
8.s2:对骨关节图像中的膝盖部位进行定位,将每张图像均切分为右膝盖图像和右膝盖图像,切分后的图像均带有一个标签;
9.s3:对每张图像进行图表示,得到图结构信息,包括节点信息、边信息以及邻接矩
阵;
10.s4:将训练集中骨关节图像的图结构信息输入到图神经网络进行训练;将测试集中骨关节图像的图结构信息输入到模型中进行评估,得到最佳的骨关节健康状态评估结果和最佳骨关节健康状态评估模型。
11.优选的,对每张图像进行图表示的过程包括:
12.采用图像
像素聚类算法将图像聚类成大小不一的矩形结构,将每个矩形均表示为图的节点,若两个矩形有相交部分则表示两个节点存在相连接的边;
13.计算每张图像中所有节点的节点信息;节点信息包括:中心坐标、宽度、平均像素、最大像素、最小像素值、像素方差和中心点梯度;
14.计算每张图像中的边信息;边信息包括两个矩形的像素总和以及两个矩形的重叠像素占总和像素的比例;
15.根据每张图像中每个节点的入度和出度计算每张图像的邻接矩阵。
16.进一步的,采用图像像素聚类算法将图像聚类成大小不一的矩形结构的过程包括:
17.步骤a:设置像素阈值t、纯度阈值p和方差阈值v;
18.步骤b:在图像中随机选取一个像素点作为中心像素点,计算中心像素点与其周围像素点的像素差值t,若t小于t,则将该点作为异类点;
19.步骤c:根据异类点与周围像素点的比值并根据该比值计算中心像素点与周围像素点组成区域的纯度p;计算中心像素点与其周围像素点的像素方差v;
20.步骤d:若p小于p以及v大于v,将当前区域划分为一个矩形并返回步骤b;否则,区域四周扩张,重复步骤c;
21.步骤e:判断是否存在一个矩阵包含所有像素点,若是,则聚类完成,否则,返回步骤b。
22.进一步的,计算中心像素点与周围像素点组成区域的纯度的公式为:
[0023][0024]
其中,p表示纯度,s表示异类点数量,n表示周围像素点数量。
[0025]
优选的,得到最佳的骨关节健康状态评估结果的过程包括:
[0026]
将骨关节图像的节点信息和边信息通过一个线性层映射到256维度,得到映射矩阵;
[0027]
将映射矩阵和邻接矩阵输入到六层的带残差结构的图注意力网络中得到图中每个节点的特征表示,根据每个节点的特征表示计算图的特征表示;最后对该图进行分类,得到最佳的骨关节健康状态评估结果。
[0028]
优选的,可视化图神经网络对骨关节图像关注区域的热力图的过程包括:
[0029]
对骨关节图像进行图表示,得到骨关节图像的图结构信息;
[0030]
将图结构信息输入到最佳的模型中进行评估,得到热力图信息,根据热力图信息在原图上画出注意力热力图;其中,热力图信息包括每个节点的注意力分数、原图像上的区域信息、节点的位置坐标以及矩形框大小。
[0031]
一种基于图像图表示与图神经网络的骨关节健康状态评估系统,包括:骨关节图
像采集模块、图表示模块、评估模块和解释模块;
[0032]
所述骨关节图像采集模块用于采集待评估的骨关节图像;
[0033]
所述图表示模块用于将骨关节图像进行图表示,获得图结构信息;
[0034]
所述评估模块用于根据图结构信息进行骨关节健康状态评估,得到骨关节健康状态评估结果;
[0035]
所述解释模块用于对骨关节图像进行解释,可视化骨关节图像关注区域的热力图。
[0036]
本发明的有益效果为:本发明设计了一种新颖的图像表示方法,其将骨关节图像转换为图结构,并使用图神经网络实现对图像进行分类,与现有技术相比,本发明通过像素值聚类的图表示方法,能提前获取图像中部分语义信息;与直接将像数值作为节点,相邻节点存在边的方法相比,该方法能减少节点数量以及减小计算的复杂度。在评估阶段,本发明不受限于输入图片的大小并且所需网络模型更小,计算速度快,评估精度高,且能更好的理解模型背后如何工作,可解释性好,评估结果可信度高。
附图说明
[0037]
图1为本发明中基于图像图表示与图神经网络的骨关节健康状态评估方法流程图;
[0038]
图2为本发明中基于图像图表示与图神经网络的骨关节健康状态评估方法结构示意图;
[0039]
图3为本发明中残差结构的图注意力网络结构图。
具体实施方式
[0040]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0041]
本发明提出了一种基于图像图表示与图神经网络的骨关节健康状态评估方法及系统,如图1、图2所示,所述方法包括:获取待评估的骨关节图像并对其进行图表示,得到骨关节图像的节点信息、边信息和邻接矩阵;将骨关节图像的节点信息、边信息和邻接矩阵输入到训练好的基于图神经网络的骨关节健康状态评估模型中,得到最佳骨关节健康状态评估结果;采用训练好的模型对骨关节图像进行评估时,可视化图神经网络对骨关节图像关注区域的热力图;
[0042]
对基于图神经网络的骨关节健康状态评估模型进行训练的过程包括以下内容:
[0043]
s1:获取带有标签的骨关节图像,其中标签为对骨关节健康等级的描述标记;将带有标签的骨关节图像划分为训练集和测试集;
[0044]
获取带有标签的骨关节图像,骨关节图像可为从骨关节数据库中下载的膝关节x射线图片,标签为对骨关节健康等级的描述标记;根据骨关节健康等级对骨关节图像添加标签,一张图像中带有两个标签,分别为左膝盖标签和右膝盖标签;优选的,可将骨关节健康等级分为5个等级,分别为“0,1,2,3,4”,数字越小代表骨关节越健康;将所有图像按照8:
2的比例划分为训练集和测试集。
[0045]
s2:对骨关节图像中的膝盖部位进行定位,将每张图像均切分为右膝盖图像和右膝盖图像,切分后的图像均带有一个标签。
[0046]
通过bonefinder软件对图像中的膝盖部位进行定位,对于软件不能定位或定位效果较差的膝盖,通过手动方式调整定位,通过定位可将一张图像切分为左膝盖图像和右膝盖图像,切分后的图像均各自对应的一个标签。
[0047]
s3:对每张图像进行图表示,得到图结构信息,包括节点信息、边信息以及邻接矩阵。
[0048]
采用图像像素聚类算法将图像聚类成大小不一的矩形结构,将每个矩形均表示为图的节点,若两个矩形有相交部分则表示两个节点存在相连接的边,得到矩形结构抽象成的图;采用图像像素聚类算法将图像聚类成大小不一的矩形结构的过程包括:
[0049]
步骤a:设置像素阈值t、纯度阈值p和方差阈值v;
[0050]
步骤b:在图像中随机选取一个像素点作为中心像素点,计算中心像素点与其周围像素点的像素差值t,若t小于t,则将该点作为异类点;
[0051]
步骤c:根据异类点与周围像素点的比值并根据该比值计算中心像素点与周围像素点组成区域的纯度p;计算中心像素点与其周围像素点的像素方差v;
[0052]
计算中心像素点与周围像素点组成区域的纯度的公式为:
[0053][0054]
其中,p表示纯度,s表示异类点数量,n表示周围像素点数量。
[0055]
步骤d:若p小于p以及v大于v,将当前区域划分为一个矩形并返回步骤b;否则,区域四周扩张,重复步骤c;
[0056]
步骤e:判断是否存在一个矩阵包含所有像素点,若是,则聚类完成,否则,返回步骤b。
[0057]
计算每张图像中所有节点的节点信息;节点信息包括:中心坐标、宽度、平均像素、最大像素、最小像素值、像素方差和中心点梯度;其中计算中心点梯度的过程包括:采用sobel算子分别计算图像中心点x,y方向的梯度图,然后计算x方向和y方向的梯度图上对应位置的梯度均值作为该图像中心的梯度图。
[0058]
计算每张图像中的边信息;边信息包括两个矩形的像素总和以及两个矩形的重叠像素占总和像素的比例;将边信息保存,每张图的边信息维度为(k,2),k表示边的个数。
[0059]
通过计算每张图像中每个节点的入度和出度即可得到每张图像的邻接矩阵。将图的邻接矩阵转化为coo数据格式,其维度为(2,2*n),其将存在相连关系的节点对应保存起来,n表示图中节点个数。
[0060]
s4:将训练集中骨关节图像的图结构信息输入到图神经网络进行训练;将测试集中骨关节图像的图结构信息输入到模型中进行评估,得到最佳的骨关节健康状态评估结果和最佳骨关节健康状态评估模型。
[0061]
将每张图像进行图表示后得到的节点信息、边信息和邻接矩阵输入到基于图神经网络的骨关节健康状态评估模型进行训练。首先,将训练集中的骨关节图像的节点信息和边信息通过一个线性层映射到256维度,得到映射矩阵;
[0062]
如图3所示,将映射矩阵和邻接矩阵输入到六层的带残差结构的图注意力网络中得到图中每个节点的特征表示,根据每个节点的特征表示计算图的特征表示,具体的,使用一种基于全局注意力机制的方法计算图中所有节点特征,得到该图的特征表示。最后对该图进行分类,可得到最佳的骨关节健康状态评估结果。
[0063]
将测试集中骨关节图像的图结构信息输入到模型中进行评估,若当前评估结果最好,则保存当前模型;否则,继续训练,直到得到最佳骨关节健康状态评估模型。
[0064]
采用训练好的模型对骨关节图像进行评估时,可视化图神经网络对骨关节图像关注区域的热力图,其过程包括:
[0065]
通过模型的训练可获得一个最好的评估模型,使用该模型对骨关节图像的图结构信息进行推理预测,可得到热力图信息,包括图的每一个节点的注意力分数,每个节点在原图上的区域信息、节点的位置坐标以及矩形框大小,最终可根据热力图信息在原图上画出注意力热力图。注意力热力图上颜越红表示该区域在是模型在推理过程中最关注的位置区域,反之,颜越蓝,则表示该区域不被模型所关注。通过注意力热力图可对模型进行解释,增加模型的可靠性。
[0066]
利用x光机获取待评估的骨关节图像,将骨关节图像进行上述图表示处理后,将图表示得到的图结构信息即节点信息和边信息输入到训练好的基于图神经网络的骨关节健康状态评估模型中,可得到该待评估的骨关节图像的骨关节健康状态评估结果,同时,通过注意力热力图可观察到模型对图像最关注的区域,可根据注意力热力图判断骨关节健康状态评估结果的可靠性。
[0067]
利用本发明可检测人们的骨关节健康状态,同时,根据从本发明获得的骨关节健康状态评估结果,也可进行相应的骨关节健康管理。
[0068]
本发明还提出了一种基于图像图表示与图神经网络的骨关节健康状态评估系统,该系统用于执行上述一种基于图像图表示与图神经网络的骨关节健康状态评估方法,包括:骨关节图像采集模块、图表示模块、评估模块和解释模块;
[0069]
所述骨关节图像采集模块用于采集待评估的骨关节图像;优选的,骨关节图像采集模块利用x光机采集待评估的骨关节图像;
[0070]
所述图表示模块用于将骨关节图像进行图表示,获得图结构信息;
[0071]
所述评估模块用于根据图结构信息进行骨关节健康状态评估,得到骨关节健康状态评估结果;
[0072]
所述解释模块用于对骨关节图像进行解释,可视化骨关节图像关注区域的热力图。
[0073]
以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种基于图像图表示与图神经网络的骨关节健康状态评估方法,其特征在于,包括:获取骨关节图像并对其进行图表示,得到骨关节图像的节点信息、边信息和邻接矩阵;将骨关节图像的节点信息、边信息和邻接矩阵输入到训练好的基于图神经网络的骨关节健康状态评估模型中,得到最佳骨关节健康状态评估结果;采用训练好的模型对骨关节图像进行评估时,可视化图神经网络对骨关节图像关注区域的热力图;对基于图神经网络的骨关节健康状态评估模型进行训练的过程包括:s1:获取带有标签的骨关节图像,其中标签为对骨关节健康等级的描述标记;将带有标签的骨关节图像划分为训练集和测试集;s2:对骨关节图像中的膝盖部位进行定位,将每张图像均切分为右膝盖图像和右膝盖图像,切分后的图像均带有一个标签;s3:对每张图像进行图表示,得到图结构信息,包括节点信息、边信息以及邻接矩阵;s4:将训练集中骨关节图像的图结构信息输入到图神经网络进行训练;将测试集中骨关节图像的图结构信息输入到模型中进行评估,得到最佳的骨关节健康状态评估结果和最佳骨关节健康状态评估模型。2.根据权利要求1所述的一种基于图像图表示与图神经网络的骨关节健康状态评估方法,其特征在于,对每张图像进行图表示的过程包括:采用图像像素聚类算法将图像聚类成大小不一的矩形结构,将每个矩形均表示为图的节点,若两个矩形有相交部分则表示两个节点存在相连接的边;计算每张图像中所有节点的节点信息;节点信息包括:中心坐标、宽度、平均像素、最大像素、最小像素值、像素方差和中心点梯度;计算每张图像中的边信息;边信息包括两个矩形的像素总和以及两个矩形的重叠像素占总和像素的比例;根据每张图像中每个节点的入度和出度计算每张图像的邻接矩阵。3.根据权利要求2所述的一种基于图像图表示与图神经网络的骨关节健康状态评估方法,其特征在于,采用图像像素聚类算法将图像聚类成大小不一的矩形结构的过程包括:步骤a:设置像素阈值t、纯度阈值p和方差阈值v;步骤b:在图像中随机选取一个像素点作为中心像素点,计算中心像素点与其周围像素点的像素差值t,若t小于t,则将该点作为异类点;步骤c:根据异类点与周围像素点的比值并根据该比值计算中心像素点与周围像素点组成区域的纯度p;计算中心像素点与其周围像素点的像素方差v;步骤d:若p小于p以及v大于v,将当前区域划分为一个矩形并返回步骤b;否则,区域四周扩张,重复步骤c;步骤e:判断是否存在一个矩阵包含所有像素点,若是,则聚类完成,否则,返回步骤b。4.根据权利要求3所述的一种基于图像图表示与图神经网络的骨关节健康状态评估方法,其特征在于,计算中心像素点与周围像素点组成区域的纯度的公式为:其中,p表示纯度,s表示异类点数量,n表示周围像素点数量。5.根据权利要求1所述的一种基于图像图表示与图神经网络的骨关节健康状态评估方
法,其特征在于,得到最佳的骨关节健康状态评估结果的过程包括:将骨关节图像的节点信息和边信息通过一个线性层映射到256维度,得到映射矩阵;将映射矩阵和邻接矩阵输入到六层的带残差结构的图注意力网络中得到图中每个节点的特征表示,根据每个节点的特征表示计算图的特征表示;最后对该图进行分类,得到最佳的骨关节健康状态评估结果。6.根据权利要求1所述的一种基于图像图表示与图神经网络的骨关节健康状态评估方法,其特征在于,可视化图神经网络对骨关节图像关注区域的热力图的过程包括:对骨关节图像进行图表示,得到骨关节图像的图结构信息;将图结构信息输入到最佳的模型中进行评估,得到热力图信息,根据热力图信息在原图上画出注意力热力图;其中,热力图信息包括每个节点的注意力分数、原图像上的区域信息、节点的位置坐标以及矩形框大小。7.一种基于图像图表示与图神经网络的骨关节健康状态评估系统,其特征在于,包括:骨关节图像采集模块、图表示模块、评估模块和解释模块;所述骨关节图像采集模块用于采集待评估的骨关节图像;所述图表示模块用于将骨关节图像进行图表示,获得图结构信息;所述评估模块用于根据图结构信息进行骨关节健康状态评估,得到骨关节健康状态评估结果;所述解释模块用于对骨关节图像进行解释,可视化骨关节图像关注区域的热力图。
技术总结
本发明属于图神经网络技术领域,具体涉及一种基于图像图表示与图神经网络的骨关节健康状态评估方法及系统;该方法包括:获取带有标签的骨关节图像;对骨关节图像中的膝盖部位进行定位,将每张图像均切分为左膝盖图像和右膝盖图像;对每张图像进行图表示,得到骨关节图像的节点信息、边信息和邻接矩阵;将训练集输入到基于图神经网络的骨关节健康状态评估模型中进行训练,并且对测试集骨关节健康等级进行评估,得到最佳评估结果和模型;使用该模型评估骨关节健康等级,可视化图神经网络在评估过程中对图像关注区域的热力图;本发明评估精度高,可解释性好,实用性高,具有良好的应用前景。前景。前景。
技术研发人员:
戴大伟 徐涛 兰丹凤 夏书银 王国胤
受保护的技术使用者:
重庆邮电大学
技术研发日:
2022.10.17
技术公布日:
2022/12/26