本发明涉及图像处理,特别是涉及一种基于x光片的脊柱关键点检测和cobb角计算方法、系统。
背景技术:
1、青少年特发性脊柱侧弯(ais)是指发生在青春期左右儿童脊柱的轴向旋转或者横向偏移,早期发现并进行支撑治疗会减小后续进行手术的可能性,而cobb角被临床医生作为评估脊柱侧弯的黄金标准。由于脊柱侧弯的x光片具有模糊性和可变性,故基于x光片的cobb角的计算具有挑战性,一般情况下,需要临床医生手动选取和测量脊柱关键点,进一步选择最倾斜的椎体来计算cobb角,但上述人工测量方式往往会因医生不同而导致计算结果不同,引起计算偏差。随着青少年脊柱侧弯问题的普遍性及危害性,自动化检测愈发成为一个医学领域较为关注的话题,考虑到脊柱侧弯的cobb角的人工测量方式在临床实践中既费时又不可靠,所以需要开发自动化方法去准确计算脊柱x光片中的cobb角。
技术实现思路
1、本发明的目的是提供一种脊柱关键点检测和cobb角计算方法、系统,可自动检测脊柱关键点,以进一步准确计算得到cobb角。
2、为实现上述目的,本发明提供了如下方案:
3、一种脊柱关键点检测方法,所述检测方法包括:
4、获取待检测脊柱的x光片;
5、将所述x光片输入至训练好的关键点检测模型,得到所述待检测脊柱的关键点坐标;所述关键点坐标包括所述待检测脊柱中每一椎体的中心点坐标和角点坐标;
6、其中,所述训练好的关键点检测模型包括依次连接的热图预测模块、热图加权模块和坐标转换模块;
7、所述热图预测模块用于以所述x光片为输入,预测得到所述待检测脊柱中每一椎体的椎体中心点初始热图和椎体角点热图;所述椎体中心点初始热图包括所述椎体中心点初始热图中每一像素点为椎体中心点的概率值;所述椎体角点热图包括所述椎体角点热图中每一像素点为椎体角点的概率值;
8、所述热图加权模块用于对于每一待预测椎体,利用目标椎体的椎体中心点初始热图预测所述待预测椎体的椎体中心点预测热图,并对所述待预测椎体的椎体中心点初始热图和所有所述椎体中心点预测热图进行加权求和,得到所述待预测椎体的椎体中心点最终热图;所述待预测椎体为所述待检测脊柱中的任一椎体,所述目标椎体为所述待检测脊柱中除所述待预测椎体之外的其他椎体;
9、所述坐标转换模块用于对每一椎体的椎体中心点最终热图和椎体角点热图进行坐标转换,得到所述待检测脊柱的关键点坐标。
10、在一些实施例中,所述利用目标椎体的椎体中心点初始热图预测所述待预测椎体的椎体中心点预测热图具体包括:
11、根据预设的偏移角度最大值和预设的间距最大值确定卷积核大小;偏移角度为所述待预测椎体的中心点与所述目标椎体的中心点的连线与图像坐标系中u轴之间的夹角;间距为所述待预测椎体的中心点与所述目标椎体的中心点之间的距离;
12、对于所述目标椎体的每一目标像素点,根据预设的间距占比均值和预设的间距占比方差确定所述目标像素点的间距占比概率分布公式,根据预设的偏移角度均值和预设的偏移角度方差确定所述目标像素点的偏移角度概率分布公式,根据所述间距占比概率分布公式和所述偏移角度概率分布公式确定所述目标像素点的卷积核模板;间距占比为所述待预测椎体的中心点与所述目标椎体的中心点之间的距离占总距离的比例;所述总距离为所述待检测脊柱中所有相邻椎体的间距的和;
13、利用所述卷积核大小和每一所述目标像素点的卷积核模板对所述目标椎体的椎体中心点初始热图进行卷积,得到所述待预测椎体的椎体中心点预测热图。
14、在一些实施例中,所述卷积核大小为w*h,w为卷积核的宽度,h为卷积核的长度;w=h=2*max(dmax(k1,k2)*cos(|θmax(k1,k2)-90°|),dmax(k1,k2)*sin(|θmax(k1,k2)-90°|));其中,k1为目标椎体;k2为待预测椎体;dmax(k1,k2)为预设的间距最大值;|θmax(k1,k2)-90°|为预设的偏移角度最大值。
15、在一些实施例中,所述间距占比概率分布公式为:
16、
17、其中,g(p)为间距占比概率分布公式;p为间距占比变量;μdis为预设的间距占比均值;σdis为预设的间距占比方差;
18、
19、其中,(u,v)为目标像素点的坐标;(x2,y2)为待预测椎体的中心点坐标;dsum为总距离计算值;
20、所述偏移角度概率分布公式为:
21、
22、其中,f(θ)为偏移角度概率分布公式;θ为偏移角度变量;μdeg为预设的偏移角度均值;σdeg为预设的偏移角度方差;
23、
24、所述卷积核模板为:
25、hk1(u-x2,v-y2)=f(θ)*g(p);
26、其中,hk1(u-x2,v-y2)为卷积核模板。
27、在一些实施例中,在将所述x光片输入至训练好的关键点检测模型,得到所述待检测脊柱的关键点坐标之前,所述检测方法还包括:利用样本集对初始关键点检测模型进行训练,得到训练好的关键点检测模型;所述样本集包括多个样本;所述样本包括样本x光片和所述样本x光片的脊柱中每一椎体的中心点坐标真实值和角点坐标真实值;
28、其中,所述样本集的构建方法包括:获取多个样本,组成初始集;对所述初始集进行数据增强,得到样本集;所述数据增强的方式包括随机水平翻转、随机水平旋转和多视角距离拍摄。
29、在一些实施例中,所述多视角距离拍摄具体包括:
30、对所述样本x光片进行padding扩充,并在扩充区域内设置多个位置标记点,得到扩充后图像;
31、利用手机以不同角度、不同距离对所述扩充后图像进行多次拍摄,得到多张拍摄图像;
32、对于每一所述拍摄图像,根据每一所述位置标记点在所述扩充后图像中的第一坐标和在所述拍摄图像中的第二坐标确定外参矩阵;利用所述外参矩阵确定所述拍摄图像的脊柱中每一椎体的中心点坐标真实值和角点坐标真实值;所述拍摄图像和所述拍摄图像的脊柱中每一椎体的中心点坐标真实值和角点坐标真实值构成一新的样本。
33、在一些实施例中,所述预设的偏移角度最大值、所述预设的间距最大值、所述预设的间距占比均值、所述预设的间距占比方差、所述预设的偏移角度均值和所述预设的偏移角度方差基于所述样本集预先计算得到。
34、一种脊柱关键点检测系统,所述检测系统包括:
35、图像获取单元,用于获取待检测脊柱的x光片;
36、关键点检测单元,用于将所述x光片输入至训练好的关键点检测模型,得到所述待检测脊柱的关键点坐标;所述关键点坐标包括所述待检测脊柱中每一椎体的中心点坐标和角点坐标;
37、其中,所述训练好的关键点检测模型包括依次连接的热图预测模块、热图加权模块和坐标转换模块;
38、所述热图预测模块用于以所述x光片为输入,预测得到所述待检测脊柱中每一椎体的椎体中心点初始热图和椎体角点热图;所述椎体中心点初始热图包括所述椎体中心点初始热图中每一像素点为椎体中心点的概率值;所述椎体角点热图包括所述椎体角点热图中每一像素点为椎体角点的概率值;
39、所述热图加权模块用于对于每一待预测椎体,利用目标椎体的椎体中心点初始热图预测所述待预测椎体的椎体中心点预测热图,并对所述待预测椎体的椎体中心点初始热图和所有所述椎体中心点预测热图进行加权求和,得到所述待预测椎体的椎体中心点最终热图;所述待预测椎体为所述待检测脊柱中的任一椎体,所述目标椎体为所述待检测脊柱中除所述待预测椎体之外的其他椎体;
40、所述坐标转换模块用于对每一椎体的椎体中心点最终热图和椎体角点热图进行坐标转换,得到所述待检测脊柱的关键点坐标。
41、一种cobb角计算方法,所述计算方法包括:
42、获取待检测脊柱的x光片;
43、将所述x光片输入至训练好的关键点检测模型,得到所述待检测脊柱的关键点坐标;所述关键点坐标包括所述待检测脊柱中每一椎体的中心点坐标和角点坐标;
44、对所有所述椎体的中心点坐标进行拟合,得到由所有所述椎体的中心点所组成的中心点曲线的拟合方程;
45、对于每一所述椎体,基于所述椎体的角点坐标计算所述椎体的上边缘线的第一方程和下边缘线的第二方程;基于所述拟合方程和所述第一方程计算所述中心点曲线与所述上边缘线的第一交点的第一坐标,基于所述拟合方程和所述第二方程计算所述中心点曲线与所述下边缘线的第二交点的第二坐标;基于所述拟合方程和所述第一坐标计算过所述第一交点且与所述中心点曲线相切的切线的第一垂线的第三方程,基于所述拟合方程和所述第二坐标计算过所述第二交点且与所述中心点曲线相切的切线的第二垂线的第四方程;
46、对于每一所述椎体,基于所述椎体的第三方程和近邻椎体的第三方程计算所述椎体的第一垂线和所述近邻椎体的第一垂线之间的夹角,基于所述椎体的第三方程和所述近邻椎体的第四方程计算所述椎体的第一垂线和所述近邻椎体的第二垂线之间的夹角,基于所述椎体的第四方程和所述近邻椎体的第三方程计算所述椎体的第二垂线和所述近邻椎体的第一垂线之间的夹角,基于所述椎体的第四方程和所述近邻椎体的第四方程计算所述椎体的第二垂线和所述近邻椎体的第二垂线之间的夹角,选取所有所述夹角的最大值作为所述椎体对应的最大夹角;所述近邻椎体为所述待检测脊柱中除所述椎体之外的其他椎体;
47、选取所有所述椎体的最大夹角的最大值作为cobb角;
48、其中,所述训练好的关键点检测模型包括依次连接的热图预测模块、热图加权模块和坐标转换模块;
49、所述热图预测模块用于以所述x光片为输入,预测得到所述待检测脊柱中每一椎体的椎体中心点初始热图和椎体角点热图;所述椎体中心点初始热图包括所述椎体中心点初始热图中每一像素点为椎体中心点的概率值;所述椎体角点热图包括所述椎体角点热图中每一像素点为椎体角点的概率值;
50、所述热图加权模块用于对于每一待预测椎体,利用目标椎体的椎体中心点初始热图预测所述待预测椎体的椎体中心点预测热图,并对所述待预测椎体的椎体中心点初始热图和所有所述椎体中心点预测热图进行加权求和,得到所述待预测椎体的椎体中心点最终热图;所述待预测椎体为所述待检测脊柱中的任一椎体,所述目标椎体为所述待检测脊柱中除所述待预测椎体之外的其他椎体;
51、所述坐标转换模块用于对每一椎体的椎体中心点最终热图和椎体角点热图进行坐标转换,得到所述待检测脊柱的关键点坐标。
52、一种cobb角计算系统,所述计算系统包括:
53、图像获取单元,用于获取待检测脊柱的x光片;
54、关键点检测单元,用于将所述x光片输入至训练好的关键点检测模型,得到所述待检测脊柱的关键点坐标;所述关键点坐标包括所述待检测脊柱中每一椎体的中心点坐标和角点坐标;
55、中心点拟合单元,用于对所有所述椎体的中心点坐标进行拟合,得到由所有所述椎体的中心点所组成的中心点曲线的拟合方程;
56、角点拟合单元,用于对于每一所述椎体,基于所述椎体的角点坐标计算所述椎体的上边缘线的第一方程和下边缘线的第二方程;基于所述拟合方程和所述第一方程计算所述中心点曲线与所述上边缘线的第一交点的第一坐标,基于所述拟合方程和所述第二方程计算所述中心点曲线与所述下边缘线的第二交点的第二坐标;基于所述拟合方程和所述第一坐标计算过所述第一交点且与所述中心点曲线相切的切线的第一垂线的第三方程,基于所述拟合方程和所述第二坐标计算过所述第二交点且与所述中心点曲线相切的切线的第二垂线的第四方程;
57、夹角计算单元,用于对于每一所述椎体,基于所述椎体的第三方程和近邻椎体的第三方程计算所述椎体的第一垂线和所述近邻椎体的第一垂线之间的夹角,基于所述椎体的第三方程和所述近邻椎体的第四方程计算所述椎体的第一垂线和所述近邻椎体的第二垂线之间的夹角,基于所述椎体的第四方程和所述近邻椎体的第三方程计算所述椎体的第二垂线和所述近邻椎体的第一垂线之间的夹角,基于所述椎体的第四方程和所述近邻椎体的第四方程计算所述椎体的第二垂线和所述近邻椎体的第二垂线之间的夹角,选取所有所述夹角的最大值作为所述椎体对应的最大夹角;所述近邻椎体为所述待检测脊柱中除所述椎体之外的其他椎体;
58、cobb角计算单元,用于选取所有所述椎体的最大夹角的最大值作为cobb角;
59、其中,所述训练好的关键点检测模型包括依次连接的热图预测模块、热图加权模块和坐标转换模块;
60、所述热图预测模块用于以所述x光片为输入,预测得到所述待检测脊柱中每一椎体的椎体中心点初始热图和椎体角点热图;所述椎体中心点初始热图包括所述椎体中心点初始热图中每一像素点为椎体中心点的概率值;所述椎体角点热图包括所述椎体角点热图中每一像素点为椎体角点的概率值;
61、所述热图加权模块用于对于每一待预测椎体,利用目标椎体的椎体中心点初始热图预测所述待预测椎体的椎体中心点预测热图,并对所述待预测椎体的椎体中心点初始热图和所有所述椎体中心点预测热图进行加权求和,得到所述待预测椎体的椎体中心点最终热图;所述待预测椎体为所述待检测脊柱中的任一椎体,所述目标椎体为所述待检测脊柱中除所述待预测椎体之外的其他椎体;
62、所述坐标转换模块用于对每一椎体的椎体中心点最终热图和椎体角点热图进行坐标转换,得到所述待检测脊柱的关键点坐标。
63、根据本发明提供的具体实施例,本发明公开了以下技术效果:
64、本发明用于提供一种脊柱关键点检测和cobb角计算方法、系统,通过构建包括依次连接的热图预测模块、热图加权模块和坐标转换模块的训练好的关键点检测模型,在获取待检测脊柱的x光片之后,便可直接将x光片输入至训练好的关键点检测模型,即可自动得到待检测脊柱的关键点坐标,从而可自动检测脊柱关键点,后续可进一步依据自动检测得到的脊柱关键点坐标来自动计算cobb角,从而实现cobb角的自动计算,相较于人工测量方式,大大提高了计算精度。