晶状体分割方法、装置及存储介质与流程

文档序号:20922367发布日期:2020-05-29 14:19阅读:217来源:国知局
晶状体分割方法、装置及存储介质与流程

本发明涉及图像分析技术领域,具体涉及一种晶状体分割方法、装置及存储介质。



背景技术:

白内障是一种因眼睛晶状体蛋白质变性,导致晶状体产生混浊而造成视力缺损的疾病。

前段光学相干断层扫描(anteriorsegmentopticalcoherencetomography,as-oct)是一种无创的高分辨率眼前节成像技术,常用于辅助诊断眼科疾病,例如白内障和青光眼等。晶状体密度是衡量白内障等疾病严重程度的重要指标,晶状体结构分割是晶状体密度计算的重要依据和前提。目前,国际上采用晶状体混浊分类系统(lensopacitiesclassificationsystemiii,locsiii)分类标准对活体白内障进行分类,以判定晶状体混浊的范围和程度。该方法的缺点主要在于:分类需人为干预,且结构分级结果严重依赖于医生经验,分级质量差异显著。

申请公布号cn110176007a,申请公布日2019年8月27日的发明专利申请公开的晶状体分割方法,通过预设神经网络模型及形状模板可实现对晶状体结构的自动分割,从而在降低人工成本的同时,提高晶状体结构分割的准确度。该方法需要预先训练得到u形全卷积神经网络模型和形状模板,稳定性和精度依赖于训练结果,并且计算量大、算法运算时间长。



技术实现要素:

本发明为解决上述技术问题,提供了一种晶状体分割方法,其特征在于,包括:

从原始图像中获取包含晶状体的roi图像;

基于所述roi图像判断图像分割难度,并且,基于所述roi图像通过实时分割网络获取晶状体分割结果。

通过预处理算法提取目标区域,大幅降低了待分割图像大小,减少了冗余信息的干扰,降低了分割网络算法的计算量。

进一步地,所述从原始图像中获取包含晶状体的roi图像包括:对原始图像进行滤波处理后输入到shuffleseg网络获得分割结果图像,从分割结果图像获取roi图像的左、右、上、下边界,根据获取的左、右、上、下边界从原始图像中截取出roi图像。roi图像的提取采用了图像分割的思想,避免了传统方法以及深度学习检测算法存在的鲁棒性差,易超出检测边界等问题,稳定性和精度明显提升。

进一步地,所述基于所述roi图像判断图像分割难度包括:将roi图像输入到shufflenet网络进行编码并且将编码后的特征图输入到skipnet网络进行解码,对编码结果和解码结果分别平均池化后进行融合之后接全连接层以获得图像分割难度。晶状体的分割难度等级可以作为对图像分割结果置信度的评估。

进一步地,所述基于roi图像通过实时分割网络获取晶体状分割结果,包括:将roi图像输入到shufflenet网络编码以提取图像特征,基于提取的图像特征采用skipnet网络解码进行上采样以计算最终类别概率图。基于shufflenet和skipnet的分割网络,能够在保证一定精度的同时,大幅降低计算量,实现实时分割,对实际应用具有重大意义。

进一步地,在所述从原始图像中获取包含晶状体的roi图像之前,判断原始图像是否可分割,如果不可分割则判断图像分割难度最大。图像是否可分割的质量控制模块,可提高分割效率。

进一步地,所述判断原始图像是否可分割包括:将所述原始图像输入到shufflenet网络进行编码在编码后的输出层添加平均池化层之后连接全连接层以输出判断结果。

本发明还提供一种晶状体分割系统,其特征在于,包括:

roi图像提取模块,用于从原始图像中获取包含晶状体的roi图像;

分割难度分级模块,基于输入的roi图像判断图像分割难度;

实时分割模块,对输入的roi图像进行实时晶状体分割;

所述roi图像提取模块从输入的原始图像中提取roi图像并输入到所述分割难度分级模块和所述实时分割模块中。

本发明在提取感兴趣区域的预处理过程中,采用图像分割思想进行边界寻找,避免了传统方法以及深度学习检测算法存在的鲁棒性差,易超出检测边界等问题,稳定性和精度明显提升。同时,通过预处理算法提取目标区域,大幅降低了待分割图像大小,减少了冗余信息的干扰,降低了分割网络算法的计算量。

作为优选,还包括是否可分割判断模块,用于判断输入的原始图像是否可分割;所述是否可分割判断模块,在判断输入的原始图像可分割时使所述roi图像提取模块提取图像roi区域,在判断输入的原始图像不可分割时判断图像分割难度最大。

本发明还提供一种计算机可读存储介质,其特征在于,包括计算机可读指令,当处理器读取并执行所述计算机可读指令时,使得所述处理器执行权利要求1-6中任一项所述的操作。

本发明具有下述有益效果:

(1)包含了图像是否可分割的质量控制、感兴趣区域提取、分割难度级别预测以及结构分割四个模块。在保证分割精度的同时,能够降低人为因素的影响,实现分割的可重复性,极大提升分割效率,对白内障疾病的诊断具有重要意义。

(2)在提取感兴趣区域的预处理过程中,采用图像分割思想进行边界寻找,避免了传统方法以及深度学习检测算法存在的鲁棒性差,易超出检测边界等问题,稳定性和精度明显提升。同时,通过预处理算法提取目标区域,大幅降低了待分割图像大小,减少了冗余信息的干扰,降低了分割网络算法的计算量。

(3)基于shufflenet和skipnet的shuffleseg分割网络,能够在保证一定精度的同时,大幅降低计算量,实现实时分割,对实际应用具有重大意义。

(4)在本发明中的分割难度级别预测以及结构分割两部分操作共用了shufflenet特征提取网络提取的特征,在此基础上,能够有效利用所提特征,通过分类和分割两个网络分支,高效实现不同任务,大幅节省算法运行时间。

(5)本发明针对as-oct图像的分割框架,抗干扰能力强,具有良好的泛化能力,分割框架思想能够在其他图像分割领域方便应用。

附图说明

图1为as-oct图像的晶状体结构分割整体流程图;

图2为是否可分割判断模块的网络结构图;

图3为获取roi图像的流程图;

图4为获取roi图像过程示意图;

图5为分割难度分级模块的网络结构图;

图6为晶状体结构分割流程示意图;

图7为实时分割模块模块的网络结构图;

图8为shufflenet单元示意图。

具体实施方式

这里使用的术语仅用于描述特定实施例的目的,而不意图限制本发明。除非另外定义,否则本文使用的所有术语具有与本发明所属领域的普通技术人员通常理解的相同的含义。将进一步理解的是,常用术语应该被解释为具有与其在相关领域和本公开内容中的含义一致的含义。本公开将被认为是本发明的示例,并且不旨在将本发明限制到特定实施例。

实施例一

一种晶状体分割方法,包括:从原始图像中获取包含晶状体的roi图像;基于所述roi图像判断图像分割难度,并且,基于所述roi图像通过实时分割网络获取晶状体分割结果。通过预处理算法提取目标区域,大幅降低了待分割图像大小,减少了冗余信息的干扰,降低了分割网络算法的计算量。在图像分割难度判断和获取晶状体分割结果过程中,均采用以shufflenet进行编码和skipnet进行解码的实时分割网络。在实际应用场景中,患者由于晶状体结构发生病变,或者人工晶体等原因,会导致拍摄的as-oct图像可能会出现晶状体结构缺失或者结构不存在的现象,从而对结构分割造成影响。为此,本实施例中在从原始图像中获取包含晶状体的roi图像之前,自动判断原始图像是否可分割。

如图1所示为本实施例方法的整体流程,共有四个步骤:

步骤一,判断as-oct原始图像是否可分割。

步骤二,从原始图像中获取包含晶状体的roi图像。由于as-oct原始图像尺寸较大(例如:2130×1864),图像中晶状体的左右两侧区域均为冗余信息,会对结构分割产生干扰,增加算法处理难度和计算量。通过预处理算法寻找图像晶状体区域的边界,在降噪的同时,提取待分割图像关键区域。在不影响结构分割的前提下,大幅减小图像大小和范围,有利于后续的网络分割和减小计算量。并且,as-oct病变图像非常复杂,传统图像处理方法在寻找边界过程中,易受图像质量影响,从而出现边界寻找不准确或错误等问题,难以应对各式各样的实际应用场景。

步骤三,以步骤二得到的roi图像作为输入,获得原始图像的分割难度等级,以此作为对图像分割结果置信度的评估。

步骤四,以步骤二得到的roi图像作为输入,通过实时分割网络获得晶状体结构分割结果,并经后处理获得图像分割的可视化结果。

步骤一以原始图像作为输入,通过shufflenet网络进行编码,在编码后的输出层添加平均池化层(globalaveragepooling,avgpool),之后连接全连接层(fullyconnectedlayer,fc),从而可获得图像可分割和不可分割结果,网络结构如图2所示。本实施例中,如果判断得出图像不可分割,则可以直接判断图像分割难度等级为表示分割难度最大的0等级。

步骤二的主要目的是:由原始图像提取roi图像(图3roiimage所示),从而缩小输入分割网络的图像大小,降低冗余信息的干扰,提升算法的分割速度。步骤二以原始图像作为输入,采用中值滤波对原始图像(图3inputimage)进行滤波处理,以降低因采集设备等原因带来的图像噪声,卷积核大小为5*5。在此基础上,将图像输入shuffleseg网络,输入图像大小为240*120。由shuffleseg网络获得的图像分割结果如图4中的预处理分割图像所示,分割结果中晶状体区域为前景、其他区域为背景。由分割结果图像的顶部向下、底部向上搜索,可获得晶状体囊的上下边界的纵坐标值,分别记为ytop和ybottom。由晶状体囊上下边界可计算晶状体的中心位置坐标,并由此中心位置的两侧向中心搜索非背景区域,从而获取左右边界位置的横坐标值,记为xleft、xright。为保证roi图像中包含完整晶状体囊区域,故在提取图像时,上下边界均需向上和向下移动一定距离,从而截取感兴趣区域图像,如图4中的roi图像所示。

步骤三以步骤二获得的roi图像作为输入,采用shufflenet进行编码,实现特征提取;另外,将提取的特征图作为输入,采用skipnet进行解码;对编码和解码的输出结果分别进行平均池化后进行融合,之后接两个全连接层,最后获得图像分割难度的分级结果(本实施中的分级结果包括1-5个等级,等级越大越容易分割),网络结构如图5所示。

步骤四以步骤二所获得的roi图像作为输入(图4所示),并统一缩放图像大小为256*512,本实施例采用四分类的shuffleseg实时分割网络实现晶状体结构的分割,分割流程如图6所示。实时语义分割网络shuffleseg包含编码和解码两个过程,网络结构如图7中的shufflesegnetworkarchitecture所示,包含了编码部分和解码部分。其中,编码过程基于shufflenet网络,主要负责提取图像特征。该网络通过分组卷积(groupedconvolution)降低计算量并利用通道混淆(channelshuffling)方法维持优良的准确度,从而提升网络性能。初始采用3×3卷积,步长为2进行下采样(conv1[2×2,#24],输出通道数24),每一个卷积层会使用一个激活函数(relu),然后进行2×2的最大池化(maxpooling[2×2])。继而,算法有3个阶段(stage2、stage3、stage4),每个阶段由多个shufflenet单元(su:shufflenetunit)组成。第2和第4阶段由3个shufflenet单元(sus=3)组成,第3个阶段由7个shufflenet单元(sus=7)组成。第2阶段输出通道数为240,第3阶段输出通道数为480,第4阶段输出通道数为960。解码过程基于skipnet网络,主要负责进行上采样,计算最终类别概率图。skipnet从高分辨率特征图中提高准确性。第4阶段(stage4)的输出通过1×1卷积(1×1conv),表示为分数层(scorelayer),即概率图,从而将通道转换为类别数。分数层的输出通过2倍上采样(x2upsampling),卷积核大小为4×4,获得上采样图像。第2阶段(stage2)和第3阶段(stage3)的输出用作输入中间层(feed1layer、feed2layer),分别进行1×1卷积(1×1conv),以改善热图(heatmaps)解析度。将分数层的上采样图像输出结果,和第3阶段的热图进行元素叠加,获得使用中间层(记为usefeed1)。对usefeed1进行上采样,步长为2,卷积核大小为4×4,获得分数层(记为scorelayer2)。将第2阶段的热图(heatmaps)和分数层scorelayer2进行元素叠加,获得使用中间层(记为usefeed2)。最后,由双线性上采样初始化的转置卷积,卷积核大小为16×16,步长为8(x8upsampling),能够获得与输入大小匹配的最终概率图。

对于shufflenet单元的设计则参考了残差网络(resnet),分为两个基本单元,如图7中su:shufflenetunit和图8所示。第一个单元操作:步长为2,卷积核为3×3的平均池化(averagepool,avgpool)。第二个单元操作:1×1逐点卷积分组化(groupconvolution,gc),配合bn层(batchnormalization,bn)进行数据归一化并使用relu激活函数,最后进行通道重排(1×1gc+shuffle);再以步长为2,卷积核大小为3×3,进行深度卷积(depthwiseconvolution,dwc),卷积后进行数据归一化(bn层);对深度卷积后的输出数据进行1×1逐点卷积分组化(1×1gc),卷积分组化后进行数据归一化(bn层)。最后,将两个计算单元的结果按通道进行合并(concat),并使用relu激活函数,获得处理结果。

上述步骤三和步骤四共用了shufflenet特征提取网络提取的特征,可以先后执行也可以同步执行。在此基础上,能够有效利用所提取的特征,通过分类和分割两个网络分支,高效实现不同任务,大幅节省算法运行时间。

作为优选,本实施例步骤三中对图像分割难度进行分级的网络模型是建立在晶状体结构分割的网络之上的,其建立过程为:步骤3.1,采集样本数据并对各样本数据标注参考分割线。样本数据即步骤二得到的roi图像。步骤s3.1中的样本数据的标注是指标注出roi图像中的晶状体结构的真实分割线作为评估步骤3.2中分割结果是否准确的评估标准。

步骤3.2,将各样本数据输入步骤四采用的网络对roi图像中的晶状体结构进行分割,获取分割结果。

步骤3.3,计算各样本数据的自动分割结构的分割综合误差。该误差可以通过计算各样本数据的分割结果与标注之间的平均像素距离(pixeldistance)获得。通过计算分割结果中的各分割线上每一个边界点与标注的真实分割线之间的最短距离作为单个边界点的误差,进而可以计算整条分割线上边界点的误差的均值和方差作为该条分割线的单项误差。基于各条分割线的单项误差可以统计该分割结果的分割综合误差,例如,本实施例中分割综合误差:

为样本数据i的晶状体上边界分割线的单项误差,为所有样本数据的晶状体上边界分割线的单项误差的均值,为晶状体下边界分割线单项误差的权重值。为样本数据i的晶状体下边界分割线的单项误差,为所有样本数据的晶状体下边界分割线的单项误差的均值,为晶状体下边界分割线单项误差的权重值。为样本数据i的皮质层上边界分割线的单项误差,为所有样本数据的皮质层上边界分割线的单项误差的均值,为皮质层下边界分割线单项误差的权重值。为样本数据i的皮质层下边界分割线的单项误差,为所有样本数据的皮质层下边界分割线的单项误差的均值,为皮质层下边界分割线单项误差的权重值。为样本数据i的晶状体核下边界分割线的单项误差,为所有样本数据的晶状体核下边界分割线的单项误差的均值,为晶状体核下边界分割线单项误差的权重值。为样本数据i的晶状体核上边界分割线的单项误差,为所有样本数据的晶状体核上边界分割线的单项误差的均值,为晶状体核上边界分割线单项误差的权重值。

步骤3.4,根据各样本数据的自动分割结果的分割综合误差确定该样本数据的分割难度等级。样本数据的分割难度等级的数量以及各等级的占比可以根据实际需要和所有样本数据的综合误差分布来确定。以分割难度等级共五级为例,依据所有样本数据的分割综合误差统计结果及分布,可将样本数据按照1级5%、2级15%、3级45%、4级:25%、5级10%,把分割难度等级划分为1~5级,从而可确定每一级别对应的分割综合误差e的范围。1~5级对应的分割难度依次降低,即5级表示分割难度最为容易,分割结果误差小,分割结果可信度高;1级表示分割难度较大,分割结果误差较大,分割结果可信度较低。在确定每一分割难度等级对应的综合误差范围后,各样本数据的分割难度等级可由其分割综合误差确定。基于得到的样本数据及其对应的分割难度等级进行训练,建立分割难度判断网络实现as-oct图像的晶状体结构分割难度的自动判断。

步骤3.5,基于各样本数据及其分割难度等级建立分割难度判断网络。在步骤四中采用的分割网络的基础上添加了一个并行的分类分支作为分割难度判断网络,以利用自动分割网络所得的有效特征进行分类。

实施例二

一种晶状体分割系统,包含了四个部分:

是否可分割判断模块,用于判断输入的原始图像是否可分割。对输入的as-oct原始图像是否可分割进行判断。该模块与实施例一的步骤一相对应,可以用于实现实施例一的步骤一。

roi图像提取模块,用于从原始图像中获取包含晶状体的roi图像。寻找原始图像的晶状体区域边界,获取含晶状体的roi图像。该模块与实施例一的步骤二相对应,可以用于实现实施例一的步骤二。

分割难度分级模块,基于输入的roi图像判断图像分割难度。以roi图像提取模块输出的roi图像作为输入,判断图像的分割难度等级。该模块与实施例一的步骤三相对应,可以用于实现实施例一的步骤三。

实时分割模块,对输入的roi图像进行实时晶状体分割。以roi图像提取模块输出的roi图像作为输入,通过实时分割网络获得晶状体结构分割结果。该模块与实施例一的步骤四相对应,可以用于实现实施例一的步骤四。

实施例三

一种计算机可读存储介质,包括计算机可读指令,当处理器读取并执行所述计算机可读指令时,使得所述处理器执行实施例一中所述的操作。

虽然描述了本发明的实施方式,但是本领域普通技术人员可以在所附权利要求的范围内做出各种变形或修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1