CN111862123B - 一种基于深度学习的ct腹部动脉血管分级识别方法 - Google Patents
一种基于深度学习的ct腹部动脉血管分级识别方法 Download PDFInfo
- Publication number
- CN111862123B CN111862123B CN202010740903.9A CN202010740903A CN111862123B CN 111862123 B CN111862123 B CN 111862123B CN 202010740903 A CN202010740903 A CN 202010740903A CN 111862123 B CN111862123 B CN 111862123B
- Authority
- CN
- China
- Prior art keywords
- image
- matrix
- points
- blood vessel
- point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000013135 deep learning Methods 0.000 title claims abstract description 19
- 230000003187 abdominal effect Effects 0.000 title claims abstract description 17
- 210000001367 artery Anatomy 0.000 title claims abstract description 11
- 210000004204 blood vessel Anatomy 0.000 claims abstract description 58
- 238000012549 training Methods 0.000 claims abstract description 18
- 230000011218 segmentation Effects 0.000 claims abstract description 11
- 238000005520 cutting process Methods 0.000 claims abstract description 7
- 238000007781 pre-processing Methods 0.000 claims abstract description 6
- 239000011159 matrix material Substances 0.000 claims description 70
- 230000009466 transformation Effects 0.000 claims description 18
- 229910052720 vanadium Inorganic materials 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 230000006870 function Effects 0.000 claims description 8
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 238000013507 mapping Methods 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 6
- 238000013528 artificial neural network Methods 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 3
- 238000003708 edge detection Methods 0.000 claims description 3
- 238000005315 distribution function Methods 0.000 claims description 2
- 238000013461 design Methods 0.000 abstract description 3
- 230000000694 effects Effects 0.000 description 4
- 230000007547 defect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 241000282414 Homo sapiens Species 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 238000009401 outcrossing Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 210000000813 small intestine Anatomy 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 229910052715 tantalum Inorganic materials 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration using histogram techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0012—Biomedical image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10072—Tomographic images
- G06T2207/10081—Computed x-ray tomography [CT]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
- G06T2207/30028—Colon; Small intestine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
- G06T2207/30101—Blood vessel; Artery; Vein; Vascular
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Radiology & Medical Imaging (AREA)
- Quality & Reliability (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于深度学习的CT腹部动脉血管分级识别方法,包括如下步骤:步骤1:图像预处理,得到训练集;步骤2:对训练集进行图像块剪裁操作,得到数据集;步骤3:通过深度学习进行血管分割;步骤4:骨骼化处理;步骤5:寻找交叉点;步骤6:累加交叉点。本发明设计了一种血管分级的方法,基于先分割后分级的思路,较为准确的实现腹部动脉血管的分级。
Description
技术领域
本发明涉及血管图像技术领域,具体为一种基于深度学习的CT腹部动脉血管分级识别方法。
背景技术
腹部动脉血管是人类最重要的器官之一,设计一套系统的分级方法,可以方便研究腹部动脉血管的结构。传统血管分级方法存在弊端,腹部动脉血管错综复杂,动脉血管与静脉血管分离和动脉血管分级需要专业人士操作,耗时久效率低,会存在一定的操作误差,为了解决传统血管分级的不足,已有方法是利用血管的管径信息来实现血管的分级,但是此方法存在缺陷,当血管的管径近似相等时,会将选取到不需要的血管。本发明提出一种全自动化方法通过计算机深度学习进行腹部动脉血管分割,然后进行数字图像处理,非常方便的进行腹部动脉血管分级。
发明内容
本发明的目的在于提供一种基于深度学习的CT腹部动脉血管分级识别方法,该方法首先对血管图像进行预处理,接着通过深度学习进行血管分割,再对分割结果进行骨骼化处理,最后在处理后的图像中找到交叉点并沿着血管生长方向对交叉点计数进而实现血管的分级,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种基于深度学习的CT腹部动脉血管分级识别方法,包括如下步骤:
步骤1:图像预处理,得到训练集;
步骤2:对训练集进行图像块剪裁操作,得到数据集;
步骤3:通过深度学习进行血管分割;
步骤4:骨骼化处理;
步骤5:寻找交叉点;
步骤6:累加交叉点。
优选的,所述步骤1包括以下步骤:
步骤1.1:采用CLAHE算法对图像进行直方图均衡化;
步骤1.2:采用伽马变换调整图像整体灰度;
步骤1.3:归一化图像像素值在0到1之间。
优选的,所述步骤1.1包括:在CLAHE算法中,对于像素邻域,对比度是通过变换函数的斜率计算得到的,变换函数的斜率与该像素邻域的累积分布函数CDF斜率成正比,在计算该像素邻域的CDF之前,CLAHE算法根据指定的阈值对直方图进行裁剪,并将裁剪部分均匀地分布到直方图中。
优选的,所述步骤1.2包括:伽马变换通过对灰度值进行非线性操作,使处理后图像的灰度值IOUT与处理前图像的灰度值Iin之间呈现非线胜指数关系,实现灰度拉伸;
伽马变换公式如下:
Iout=cIin γ
其中Iin为处理前图像的灰度值,IOUT为处理后图像的灰度值,c为灰度缩放系数,γ为变换指数。
当γ取不同值时,输入灰度值取0到255并对输入输出灰度值都做归一化为0到1之间,当γ小于1时,伽马变换提高图像的灰度值,图像视觉上变亮;当γ大于1时,伽马变换拉低图像灰度值,图像视觉上变暗;当γ等于1时,整体亮度与原图一致,取γ值为0.5。
优选的,所述步骤1.3包括:像素的归一化通过将所有像素值除以最大像素值来实现,最大像素值为255;
计算公式如下:
x'=(x-X_min)/(X_max-X_min)
其中,x'为归一化结果,x为输入像素值,X_min为所有输入图像像素中的最小值,X_max为所有输入图像像素中的最大值。
优选的,所述步骤2包括:对于训练集,裁剪时生成一组随机坐标,以随机坐标作为中心点,裁剪大小为48*48的图像块,得到数据集。
优选的,所述步骤3包括:在Unet中加入R2模块与AttentionAugment模块;
其中,Unet结构总体呈对称的U型结构,包含12个单元F1-F12,其中左侧F1-F6为收缩路径,右侧F6-F12为扩张路径。
其中R2模块包括了残差学习单元和递归卷积;
残差学习单元:设定一个神经网络单元的输入是x,期望输出是H(x),定义一个残差映射F(x)=H(x)-x,把x直接传递给输出,该神经网络单元学习的目标为残差映射F(x)=H(x)-x,残差学习单元由一系列卷积层和一个捷径组成,输入x通过捷径传递给残差学习单元的输出,则残差学习单元的输出z=F(x)+x;
递归卷积:设定输入为x,对输入x进行连续的卷积,且每一次的卷积输出加上当前的输入作为下一次的卷积的输入;
R2模块即将残差学习单元中的普通卷积替换为递归卷积;
AttentionAugment为通过查询得到一系列键-值对的映射Attention Augment模块的实现步骤包括以下:
通过对输入大小为(w,h,cin)的特征图进行1*1卷积输出QKV矩阵,QKV矩阵的大小为(w,h,2*dk+dv),其中w、h、2*dk+dV分别表示了矩阵的宽、长与深度;
从深度通道上对QKV矩阵进行分割,得到Q、K、V三个矩阵,Q、K、V三个矩阵的深度通道大小分别为dk、dk、dv;
采用多头注意力机制的结构,将Q、K、V三个矩阵分别从深度通道上分割为N个相等的矩阵;
对分割好的Q、K、V矩阵进行扁平化处理生成Flat_Q、Flat_K、Flat_V三个矩阵,即对Q、K、V矩阵保持深度通道不变,从长宽方向对其压缩到1维,其中Flat_Q、Flat_K两个矩阵的大小为(w*h,dk),Flat_V矩阵大小为(w*h,dv);
Attention Augment使用Flat_Q、Flat_K两矩阵进行矩阵乘法运算,计算出权重矩阵,且在此基础上添加相对位置嵌入的计算,通过对Q矩阵进行长宽两方向的权重计算得到特征图上每个点的相对位置信息;
长宽两方向的相关位置信息分别通过Q矩阵与权重矩阵H和W内积得到,记为SH和SW,其中权重矩阵和通过模型的训练得出,大小为(wh,wh,1);
将得到的三个矩阵相加并乘以尺度系数
用softmax函数进行处理,即得到特征权重矩阵;
将特征权重矩阵与V矩阵相乘并将结果reshape到原始长宽大小,再进行1*1的卷积操作,即得到最终的注意力特征矩阵;
将注意力特征矩阵O和正常的卷积过程按深度方向进行拼接即得到AttentionAugment的结果;
注意力特征矩阵O的计算公式如下:
其中,Q为输入图像数据的查询矩阵,K为输入图像数据的目标矩阵,V为输入图像数据的数值矩阵,SH和SW分别是图像沿着长和宽维数的相对位置对数矩阵,为尺度标度。
优选的,所述步骤4包括:
步骤4.1:循环所有边界点,对于每一个边界点,记为中心P1,其邻域的8个点顺时针绕中心点从P1的上方开始分别记为P2,P3...P9;
标记下来同时满足下列的边界点:
--2≤N(P1)≤6;
--S(P1)=1;
--P2*P4*P6=0;
--P4*P6*P8=0;
其中N(P1)是P1的相邻点中非零的数量,S(P1)为按照P2,P3...P9排序后像素点的值从0到1变化的次数;
步骤4.2:循环所有边界点,对于每一个边界点,记为中心P1,其邻域的8个点顺时针绕中心点从P1的上方开始分别记为P2,P3...P9;
标记下来同时满足下列的边界点:
--2≤N(P1)≤6;
--S(P1)=1;
--P2*P4*P8=0;
--P2*P6*P8=0;
当对图像中的边界点都执行完后,把标记的点置为背景点;
将步骤4.1和步骤4.2进行迭代,直至没有点满足步骤4.1和步骤4.2中边界点的选取条件,得到的图像即为骨骼化后的骨架图。
优选的,所述步骤5包括:进行初始化,分析每一种分叉点和交叉点的情况,根据预设规则遍历整个图像,根据像素值建立数组表,每次遍历取3*3像素,记录黑白像素变化情况,与数组表中内容进行对照,如果得到的值为分叉点数组Ta或者交叉点数组Tb中的某一个时,便将它中间点位置标记为分叉点或者交叉点,将所有交叉点和分叉点位置记录到一个指定的数组中,遍历完成后,从上至下标记交叉点。
优选的,所述步骤6包括:根据血管生长特性从上到下扫描,通过边缘检测,沿着血管对分叉点计数,计数从0开始扫描到一个加1,同根血管中遇到分叉点不加1,并在血管图上标记数字,其中利用霍夫变换将血管图像直线化处理判断是否为同根血管;
根据输出的图片识别包括:0以上为一级血管,0、1之间为二级血管,1、2之间为三级血管。
与现有技术相比,本发明的有益效果是:
本发明设计了一种血管分级的方法,基于先分割后分级的思路,先利用深度学习方法将动脉血管和静脉血管分割出来,再在动脉血管基础上,利用通道关联思想较为准确地实现了动脉血管的分级。
附图说明
图1为本发明实施例提供的血管分级流程图;
图2为本发明中AA Res-U-Net模型的结构图;
图3为本发明中寻找交叉点算法流程图;
图4为本发明中根据交叉点血管分级流程图;
图5为分叉图案和交叉图案结构图;
图6为选取的CT小肠造影图像;
图7为分割处理后的分割结果图;
图8为骨骼化效果图;
图9为分级处理后效果图;
图10为输出的灰度级与输入灰度级的关系图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1~图10,本发明提供一种技术方案:一种基于深度学习的CT腹部动脉血管分级识别方法,该方法包含如下几个步骤:
步骤一:图像预处理;
在预处理方面对血管图像做了如下操作:
采用CLAHE算法对图像进行直方图均衡化;
CLAHE是AHE的改进,其改进主要体现在对局部对比度做了限制,有效降低了噪声被放大的程度。在CLAHE算法中,对于某个像素邻域,对比度是通过变换函数的斜率计算得到的,而这个斜率与该邻域的CDF斜率成正比。在计算该邻域的CDF之前,CLAHE会根据指定的阈值对直方图进行裁剪,并将裁剪部分均匀地分布到直方图中。
采用伽马变换调整图像整体灰度;
伽马变换(Gamma Transform)是图像处理中常见的幂律变换操作。伽马变换通过对灰度值进行非线性操作,使处理后图像的灰度值与处理前图像的灰度值之间呈现非线胜指数关系,实现灰度拉伸。
伽马变换公式如下:
IOUT=CIIN γ
当γ取不同值时,输出的灰度级与输入灰度级的关系如图10所示,输入灰度级取0到255并对输入输出灰度级都做归一化为0到1之间,当γ较小时,图像的整体亮度得到非线性提高,当γ较大时,图像的整体亮度会被非线性降低。这里我们取γ值为0.5。
归一化图像像素值在0到1之间;
首先,需要知道的是,对于大多数图像数据,像素值是介于0和255之间的整数。
在深度神经网络训练时一般使用较小的权重值来进行拟合,而当训练数据的值是较大整数值时,可能会减慢模型训练的过程。因此,一般需要对图像的像素进行归一化,使得图像的每个像素值都是在0到1之间。当图像的像素处于0-1范围时,由于仍然介于0-255之间,所以图像依旧是有效的,并且可以正常查看图像。
像素的归一化可以通过将所有像素值除以最大像素值来实现,最大像素值一般为255。需要注意的是,不管图片是单通道的黑白图片还是多通道的彩色图片,都可以使用这种方法;不管图片的最大像素值是否有255,都除以255。
计算公式如下:
x'=(x-X_min)/(X_max-X_min)
其中,x'为归一化结果,x为输入像素值,X_min为所有输入图像像素中的最小值,X_max为所有输入图像像素中的最大值。
经过以上算法处理后,血管整体对比度得到增强,保证之后的实验模型训练能更好的拟合血管,实现更好的分割效果。
步骤二:图像块剪裁操作;
由于血管图像数据量不够充足,所以进行图像块剪裁,以扩充训练数据集。对于训练集,裁剪时生成一组随机坐标,以这些坐标作为中心点,裁剪大小为48*48的图像块,从得到大量的数据集。当然对应的标准图也采用同样的方法进行剪裁,以保证原图剪裁图与标准图剪裁图一一对应,确保之后的模型训练的准确率。
步骤三:通过深度学习进行血管分割;
这里深度学习的网络可以自主选择,这里提供一种方案,但不是唯一,血管分割越准确,血管分级自然也越准确。
在Unet中加入了R2模块与Attention Augment模块;其中,Unet结构总体呈对称的U型结构,在设计时共包含12个单元(F1-F12),其中左侧F1-F6为收缩路径,用于特征的提取;右侧F6-F12为扩张路径,用于细节的恢复实现精准预测;R2模块包括了残差学习单元和递归卷积。
本发明中,Attention Augment本质为通过查询得到一系列键-值对的映射;首先,通过对输入大小为(w,h,cin)的特征图进行1×1卷积输出QKV矩阵,其大小为(w,h,2*dk+dv),其中w、h、2*dk+dV分别表示了矩阵的宽、长与深度;再从深度通道上对QKV矩阵进行分割,得到Q、K、V三个矩阵其深度通道大小分别为dk、dk、dv;接着,采用了多头注意力机制的结构,将Q、K、V三个矩阵分别从深度通道上分割为N个相等的矩阵进行后续的计算,这种多头注意力机制将原本单一的attention计算,扩展为较小且并行独立的多个计算,使得模型可以在不同的子空间内学习特征信息;
对于分割好的Q、K、V矩阵在进行扁平化处理生成Flat_Q、Flat_K、Flat_V三个矩阵,即对Q、K、V保持深度通道不变,从长宽方向对其进行压缩到1维,其中前两个矩阵的大小为(w*h,dk),后一个矩阵大小为(w*h,dv);接着,Attention Augment保存了原先Self-Attention的做法使用Flat_Q、Flat_K两矩阵进行矩阵乘法运算,计算出权重矩阵,且在此基础上添加了相对位置嵌入(Relative positional embedding)的计算,通过对Q矩阵进行长宽两方向的权重计算得到特征图上每个点的相对位置信息,防止特征位置的变换而降低模型的最终效果;长宽两方向的相关位置信息分别通过Q矩阵与权重矩阵H和W内积得到,记为SH和SW,其中权重矩阵H和W通过模型的训练得出,大小为(wh,wh,1);然后,将得到的三个矩阵相加并乘以尺度系数以防止计算结果过大;随后用softmax函数进行处理,即得到了最终的特征权重矩阵;最后,将该权重矩阵与V矩阵相乘并将结果reshape到原始长宽大小,再进行1*1的卷积操作,即可得到最终的注意力特征矩阵O;
将注意力特征矩阵O和正常的卷积过程按深度方向进行拼接(concat)即可得到Attention Augment的结果。注意力特征矩阵O的计算公式如下:
其中,Q为输入图像数据的查询矩阵,K为输入图像数据的目标矩阵,V为输入图像数据的数值矩阵,SH和SW分别是图像沿着长和宽维数的相对位置对数矩阵,为尺度标度;
步骤四:骨骼化处理;
骨骼化处理能够将宽度减小到一个像素而不改变血管方向、形状和连通性等核心属性。对血管图像进行骨骼化操作,会大大提高检测效率、简化结点的检测复杂度。具体步骤如下:
循环所有边界点,对于每一个边界点,记为中心P1,其邻域的8个点顺时针绕中心点从P1的上方开始分别记为P2,P3...P9,首先标记下来同时满足下列的边界点:(1)2≤N(P1)≤6;(2)S(P1)=1;(3)P2*P4*P6=0;(4)P4*P6*P8=0;其中N(P1)是P1的相邻点中非零的数量,S(P1)为按照P2,P3...P9排序后像素点的值从0到1变化的次数。
同第一步,仅将前面的条件(3)改为:P2*P4*P8=0;条件(4)改为P2*P6*P8=0,当对图像中的边界点都执行完后,把标记的点置为背景点。
最后将上面两个步骤作为一次迭代,直至没有点再满足这些要求,这时所得到的图像即为骨骼化后的骨架图。
步骤五:寻找交叉点;
首先进行初始化,分析每一种分叉点和交叉点的情况,如图5所示,显示了眼底图像中所有的分叉图案和交叉图案,总共有18种,分叉点图案共有16种,交叉点图案共有2种。最后两种图案对应的是交叉点,其余图案是分叉点。
从左到右从上到下遍历,根据像素值建立数组表Ta=[[255,0,255,0,0,255,255,0,255],[255,0,255,255,0,0,255,0,255],[255,0,255,0,0,0,255,255,255],[255,255,255,0,0,0,255,0,255],[255,0,255,0,0,255,255,255,0],[0,255,255,255,0,0,255,0,255],[255,255,0,255,0,255,0,255,0][0,255,0,255,0,255,0,255,255],[0,255,255,255,0,255,0,255,0],[0,255,0,255,0,255,255,255,0],[255,0,255,255,0,0,0,255,255],[255,255,0,0,0,255,255,0,255],[255,0,255,255,0,255,0,255,0],[0,255,0,255,0,255,255,0,255],[255,255,0,0,0,255,255,255,0],[0,255,255,255,0,0,0,255,255]];Tb=[[255,0,255,0,0,0,255,0,255],[0,255,0,255,0,255,0,255,0]]分叉点数组为Ta,交叉点数组为Tb。
从图像的第二列,第一行开始遍历整个图,每次遍历取3*3像素,记录黑白像素变化情况,与数组表中内容进行对照,如果得到的值为Ta或者Tb中的某一个时,便将它中间点位置标记为分叉点或者交叉点;
将所有交叉点和分叉点位置记录到一个指定的数组中,遍历完成后,从上至下标记交叉点。
步骤六:累加交叉点。
根据血管生长特性从上到下扫描,通过边缘检测,沿着血管对分叉点计数,计数从0开始扫描到一个加1,但同根血管中遇到分叉点不加1,并在血管图上标记数字。
其中利用霍夫变换将血管图像直线化处理判断是否为同根血管,这样最后输出的图片很容易识别出是几级血管,比如0以上为一级血管,0、1之间为二级血管,1、2之间为三级血管,以此类推。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (4)
1.一种基于深度学习的CT腹部动脉血管分级识别方法,其特征在于,包括如下步骤:
步骤1:图像预处理,得到训练集;
步骤2:对训练集进行图像块剪裁操作,得到数据集;
步骤3:通过深度学习进行血管分割;
步骤4:骨骼化处理;
步骤5:寻找交叉点;
步骤6:累加交叉点;
所述步骤1包括以下步骤:
步骤1.1:采用CLAHE算法对图像进行直方图均衡化;
步骤1.2:采用伽马变换调整图像整体灰度;
步骤1.3:归一化图像像素值在0到1之间;
所述步骤1.1包括:在CLAHE算法中,对于像素邻域,对比度是通过变换函数的斜率计算得到的,变换函数的斜率与该像素邻域的累积分布函数CDF斜率成正比,在计算该像素邻域的CDF之前,CLAHE算法根据指定的阈值对直方图进行裁剪,并将裁剪部分均匀地分布到直方图中;
所述步骤1.2包括:伽马变换通过对灰度值进行非线性操作,使处理后图像的灰度值IOUT与处理前图像的灰度值Iin之间呈现非线胜指数关系,实现灰度拉伸;
伽马变换公式如下:
Iout=cIin γ
其中Iin为处理前图像的灰度值,IOUT为处理后图像的灰度值,c为灰度缩放系数,γ为变换指数;
当γ取不同值时,输入灰度值取0到255并对输入输出灰度值都做归一化为0到1之间,当γ小于1时,伽马变换提高图像的灰度值,图像视觉上变亮;当γ大于1时,伽马变换拉低图像灰度值,图像视觉上变暗;当γ等于1时,整体亮度与原图一致,取γ值为0.5;
所述步骤1.3包括:像素的归一化通过将所有像素值除以最大像素值来实现,最大像素值为255;
计算公式如下:
x'=(x-X_min)/(X_max-X_min)
其中,x'为归一化结果,x为输入像素值,X_min为所有输入图像像素中的最小值,X_max为所有输入图像像素中的最大值;
所述步骤2包括:对于训练集,裁剪时生成一组随机坐标,以随机坐标作为中心点,裁剪大小为48*48的图像块,得到数据集;
所述步骤3包括:在Unet中加入R2模块与Attention Augment模块;
其中,Unet结构总体呈对称的U型结构,包含12个单元F1-F12,其中左侧F1-F6为收缩路径,右侧F6-F12为扩张路径;
其中R2模块包括了残差学习单元和递归卷积;
残差学习单元:设定一个神经网络单元的输入是x,期望输出是H(x),定义一个残差映射F(x)=H(x)-x,把x直接传递给输出,该神经网络单元学习的目标为残差映射F(x)=H(x)-x,残差学习单元由一系列卷积层和一个捷径组成,输入x通过捷径传递给残差学习单元的输出,则残差学习单元的输出z=F(x)+x;
递归卷积:设定输入为x,对输入x进行连续的卷积,且每一次的卷积输出加上当前的输入作为下一次的卷积的输入;
R2模块即将残差学习单元中的普通卷积替换为递归卷积;
AttentionAugment为通过查询得到一系列键-值对的映射Attention Augment模块的实现步骤包括以下:
通过对输入大小为(w,h,cin)的特征图进行1*1卷积输出QKV矩阵,QKV矩阵的大小为(w,h,2*dk+dv),其中w、h、2*dk+dV分别表示了矩阵的宽、长与深度,Cin为输入图像序列;
从深度通道上对QKV矩阵进行分割,得到Q、K、V三个矩阵,Q、K、V三个矩阵的深度通道大小分别为dk、dk、dv;
采用多头注意力机制的结构,将Q、K、V三个矩阵分别从深度通道上分割为N个相等的矩阵;
对分割好的Q、K、V矩阵进行扁平化处理生成Flat_Q、Flat_K、Flat_V三个矩阵,即对Q、K、V矩阵保持深度通道不变,从长宽方向对其压缩到1维,其中Flat_Q、Flat_K两个矩阵的大小为(w*h,dk),Flat_V矩阵大小为(w*h,dv);
Attention Augment使用Flat_Q、Flat_K两矩阵进行矩阵乘法运算,计算出权重矩阵,且在此基础上添加相对位置嵌入的计算,通过对Q矩阵进行长宽两方向的权重计算得到特征图上每个点的相对位置信息;
长宽两方向的相关位置信息分别通过Q矩阵与权重矩阵H和W内积得到,记为SH和SW,其中权重矩阵和通过模型的训练得出,大小为(wh,wh,1);
将得到的三个矩阵相加并乘以尺度系数
用softmax函数进行处理,即得到特征权重矩阵;
将特征权重矩阵与V矩阵相乘并将结果reshape到原始长宽大小,再进行1*1的卷积操作,即得到最终的注意力特征矩阵;
将注意力特征矩阵O和正常的卷积过程按深度方向进行拼接即得到AttentionAugment的结果;
注意力特征矩阵O的计算公式如下:
其中,Q为输入图像数据的查询矩阵,K为输入图像数据的目标矩阵,V为输入图像数据的数值矩阵,SH和SW分别是图像沿着长和宽维数的相对位置对数矩阵,为尺度标度。
2.根据权利要求1所述的一种基于深度学习的CT腹部动脉血管分级识别方法,其特征在于,所述步骤4包括:
步骤4.1:循环所有边界点,对于每一个边界点,记为中心P1,其邻域的8个点顺时针绕中心点从P1的上方开始分别记为P2,P3...P9;
标记下来同时满足下列的边界点:
--2≤N(P1)≤6;
--S(P1)=1;
--P2*P4*P6=0;
--P4*P6*P8=0;
其中N(P1)是P1的相邻点中非零的数量,S(P1)为按照P2,P3...P9排序后像素点的值从0到1变化的次数;
步骤4.2:循环所有边界点,对于每一个边界点,记为中心P1,其邻域的8个点顺时针绕中心点从P1的上方开始分别记为P2,P3...P9;
标记下来同时满足下列的边界点:
--2≤N(P1)≤6;
--S(P1)=1;
--P2*P4*P8=0;
--P2*P6*P8=0;
当对图像中的边界点都执行完后,把标记的点置为背景点;
将步骤4.1和步骤4.2进行迭代,直至没有点满足步骤4.1和步骤4.2中边界点的选取条件,得到的图像即为骨骼化后的骨架图。
3.根据权利要求2所述的一种基于深度学习的CT腹部动脉血管分级识别方法,其特征在于,所述步骤5包括:进行初始化,分析每一种分叉点和交叉点的情况,根据预设规则遍历整个图像,根据像素值建立数组表,每次遍历取3*3像素,记录黑白像素变化情况,与数组表中内容进行对照,如果得到的值为分叉点数组Ta或者交叉点数组Tb中的某一个时,便将它中间点位置标记为分叉点或者交叉点,将所有交叉点和分叉点位置记录到一个指定的数组中,遍历完成后,从上至下标记交叉点。
4.根据权利要求3所述的一种基于深度学习的CT腹部动脉血管分级识别方法,其特征在于,所述步骤6包括:根据血管生长特性从上到下扫描,通过边缘检测,沿着血管对分叉点计数,计数从0开始扫描到一个加1,同根血管中遇到分叉点不加1,并在血管图上标记数字,其中利用霍夫变换将血管图像直线化处理判断是否为同根血管;
根据输出的图片识别包括:0以上为一级血管,0、1之间为二级血管,1、2之间为三级血管。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010740903.9A CN111862123B (zh) | 2020-07-29 | 2020-07-29 | 一种基于深度学习的ct腹部动脉血管分级识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010740903.9A CN111862123B (zh) | 2020-07-29 | 2020-07-29 | 一种基于深度学习的ct腹部动脉血管分级识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111862123A CN111862123A (zh) | 2020-10-30 |
CN111862123B true CN111862123B (zh) | 2024-01-23 |
Family
ID=72948194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010740903.9A Active CN111862123B (zh) | 2020-07-29 | 2020-07-29 | 一种基于深度学习的ct腹部动脉血管分级识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111862123B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113506308B (zh) * | 2021-07-06 | 2023-03-28 | 同济大学 | 一种医学图像中基于深度学习的椎骨定位与脊柱分割方法 |
CN116071373A (zh) * | 2023-03-01 | 2023-05-05 | 南通大学 | 一种基于融合PCA的U-net模型舌体自动分割方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103810709A (zh) * | 2014-02-25 | 2014-05-21 | 南京理工大学 | 基于血管的眼底图像与sd-oct投影图像配准方法 |
CN107564048A (zh) * | 2017-09-25 | 2018-01-09 | 南通大学 | 基于分叉点特征配准方法 |
CN108764286A (zh) * | 2018-04-24 | 2018-11-06 | 电子科技大学 | 一种基于迁移学习的血管图像中特征点的分类识别方法 |
CN109191446A (zh) * | 2018-08-30 | 2019-01-11 | 北京深睿博联科技有限责任公司 | 用于肺结节分割的图像处理方法及装置 |
CN109448006A (zh) * | 2018-11-01 | 2019-03-08 | 江西理工大学 | 一种注意力机制u型密集连接视网膜血管分割方法 |
CN109993735A (zh) * | 2019-03-29 | 2019-07-09 | 成都信息工程大学 | 基于级联卷积的图像分割方法 |
CN111028306A (zh) * | 2019-11-06 | 2020-04-17 | 杭州电子科技大学 | 基于AR2 U-Net神经网络的快速磁共振成像方法 |
-
2020
- 2020-07-29 CN CN202010740903.9A patent/CN111862123B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103810709A (zh) * | 2014-02-25 | 2014-05-21 | 南京理工大学 | 基于血管的眼底图像与sd-oct投影图像配准方法 |
CN107564048A (zh) * | 2017-09-25 | 2018-01-09 | 南通大学 | 基于分叉点特征配准方法 |
CN108764286A (zh) * | 2018-04-24 | 2018-11-06 | 电子科技大学 | 一种基于迁移学习的血管图像中特征点的分类识别方法 |
CN109191446A (zh) * | 2018-08-30 | 2019-01-11 | 北京深睿博联科技有限责任公司 | 用于肺结节分割的图像处理方法及装置 |
CN109448006A (zh) * | 2018-11-01 | 2019-03-08 | 江西理工大学 | 一种注意力机制u型密集连接视网膜血管分割方法 |
CN109993735A (zh) * | 2019-03-29 | 2019-07-09 | 成都信息工程大学 | 基于级联卷积的图像分割方法 |
CN111028306A (zh) * | 2019-11-06 | 2020-04-17 | 杭州电子科技大学 | 基于AR2 U-Net神经网络的快速磁共振成像方法 |
Non-Patent Citations (3)
Title |
---|
Attention Augmented Convolutional Networks;Irwan Bello;ICCV_2019;1-10 * |
Recurrent Residual Convolutional Neural Network based on U-Net (R2U-Net) for Medical Image Segmentation;Md Zahangir Alom1*,;arixv;1-12 * |
Residual Attention U-Net for Automated Multi-Class Segmentation of COVID-19 Chest CT Images;Xiaocong Chen,;arXiv:2004.05645v1;1-7 * |
Also Published As
Publication number | Publication date |
---|---|
CN111862123A (zh) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110097554B (zh) | 基于密集卷积和深度可分离卷积的视网膜血管分割方法 | |
CN112258488A (zh) | 一种医疗影像病灶分割方法 | |
CN111862123B (zh) | 一种基于深度学习的ct腹部动脉血管分级识别方法 | |
CN110751636B (zh) | 一种基于改进型编解码网络的眼底图像视网膜动脉硬化检测方法 | |
CN112614133B (zh) | 一种无锚点框的三维肺结节检测模型训练方法及装置 | |
CN113223005B (zh) | 一种甲状腺结节自动分割及分级的智能系统 | |
CN110648331B (zh) | 用于医学图像分割的检测方法、医学图像分割方法及装置 | |
CN113192076B (zh) | 联合分类预测和多尺度特征提取的mri脑肿瘤图像分割方法 | |
CN111401380A (zh) | 一种基于深度特征增强和边缘优化的rgb-d图像语义分割方法 | |
CN111340816A (zh) | 一种基于双u型网络框架的图像分割方法 | |
CN115294075A (zh) | 一种基于注意力机制的octa图像视网膜血管分割方法 | |
CN112750137B (zh) | 基于深度学习的肝脏肿瘤分割方法及系统 | |
CN113344933A (zh) | 一种基于多层次特征融合网络的腺体细胞分割方法 | |
CN114565628B (zh) | 一种基于边界感知注意的图像分割方法及系统 | |
CN114170212A (zh) | 一种基于ct影像中肺小结节假阳检测方法及系统 | |
CN115881265A (zh) | 电子病历智能病案质控方法、系统、设备及存储介质 | |
CN118334336A (zh) | 阴道镜图像分割模型构建方法、图像分类方法和装置 | |
CN117392153B (zh) | 一种基于局部补偿和多尺度自适应变形的胰腺分割方法 | |
CN112634308B (zh) | 基于不同感受野的鼻咽癌靶区和危及器官的勾画方法 | |
CN112200809A (zh) | 基于骨架分割与关键点检测的粘连染色体分离方法及装置 | |
CN111862071A (zh) | 一种基于ct图像测量腰1椎体ct值的方法 | |
CN115937590A (zh) | 一种并联融合CNN和Transformer的皮肤病图像分类方法 | |
CN115719414A (zh) | 基于任意四边形回归的目标检测与精确定位方法 | |
CN115578400A (zh) | 图像处理方法、图像分割网络的训练方法及装置 | |
CN114092481A (zh) | 一种基于U-Net的红外图像语义分割方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |