一种图像处理方法、装置及存储介质
技术领域
本发明涉及计算机图像处理领域,尤其涉及一种图像处理方法、装置及存储介质。
背景技术
随着计算机辅助诊断技术和计算机图像处理技术的快速发展,从大量医学影像资料(如MRI和CT)中提取特征进行机器学习并与医学知识相结合的医疗辅助诊断系统越来越受到广泛关注。
特别是肝脏辅助诊断系统,由于利用计算机图像处理能够从医学影像中分割出医生感兴趣区域,如肝脏区域,肿瘤区域,血管区域等,并对这些区域进行特征提取和三维重建等,并将分割出的血管进行分类,能够更好的帮助医生掌握肝脏解剖结构,并进行相应的诊断和治疗。肝脏血管系统主要包括肝静脉和门静脉系统,因此再对肝脏血管进行区分时,需要分为肝静脉区域和门静脉区域。现有方法,主要基于解剖结构的不同来区分肝静脉区域和门静脉区域的,但这种方法处理量大,难以适应实时的肝脏辅助诊断系统。
如何优化现有方案,提高处理效率和缩短计算时间是进一步推广肝脏辅助诊断系统亟需解决的一个技术问题。
发明内容
针对以上问题,本发明实施例提供了一种图像处理方法、装置及存储介质。
根据本发明实施例第一方面,一种图像处理方法,应用于医疗辅助诊断系统,该方法包括:获取肝脏区域对应的第一图像数据和血管区域对应的第二图像数据,其中,血管区域内的血管包括肝静脉和门静脉;根据第二图像数据和中心线计算方法得到血管的中心线对应的第三图像数据,其中第三图像数据包括像素点;根据连通域算法和第一规则对第三图像数据进行连通域划分得到至少两个子集;根据第一图像数据和第二规则,从至少两个子集中确定门静脉中心线对应的门静脉中心线子集,其中,第二规则包括用于根据门静脉与肝脏区域的位置关系和门静脉的结构特征确定门静脉中心线子集的规则;根据门静脉中心线子集,从第二图像数据中确定门静脉对应的图像数据,以将第二图像数据区分为门静脉对应的图像数据和肝静脉对应的图像数据。
根据本发明实施例一实施方式,获取肝脏区域对应的第一图像数据和血管区域对应的第二图像数据,包括:获取原始图像数据,其中,原始图像数据包括肝脏区域对应的图像数据和血管区域对应的图像数据;将原始图像数据输入到图像处理模型得到肝脏区域对应的第一图像数据和血管区域对应的第二图像数据,其中图像处理模型是基于深度学习方法,经过大量训练图像数据训练得到的图像处理模型。
根据本发明实施例一实施方式,第一规则包括:子集中的像素点的个数大于第一阈值且小于第二阈值;相应地,根据连通域算法和第一规则对第三图像数据进行连通域划分得到至少两个子集,包括:根据连通域算法对第三图像数据进行连通域划分得到至少两个连通域子集;检测每一连通域子集内像素点的个数是否小于第一阈值,若是,则将相应连通域子集合并到与之相邻的任一连通域子集中得到符合第一规则的子集,若否,则进一步检测每一连通域子集内像素点的个数是否大于第二阈值,若是,则将相应连通域子集划分为符合第一规则的至少两个子集,若否,则保留连通域子集。
根据本发明实施例一实施方式,根据第一图像数据和第二规则,从至少两个子集中确定门静脉中心线对应的门静脉中心线子集,包括:根据第一图像数据以及像素点之间的位置关系确定肝脏区域外的血管中心线对应的至少一个第一子集,将至少一个第一子集确定为门静脉中心线对应的子集;计算每个第一子集与第一图像数据之间的距离并将与第一图像数据之间距离最小的第一子集确定为门静脉根部对应的子集;根据门静脉根部对应的子集和根据门静脉的结构特征确定门静脉中心线子集的规则,确定门静脉中心线对应的门静脉中心线子集中的其他子集。
根据本发明实施例一实施方式,根据门静脉根部对应的子集和根据门静脉的结构特征确定门静脉中心线子集的规则,确定门静脉中心线对应的门静脉中心线子集中的其他子集,包括:将门静脉根部对应的子集设置为根子集;获取与根节点子集相邻的子集集合,检测子集集合中每一子集是否是已经确定为门静脉中心线对应的子集,若是,则将相应子集设置为叶子子集,若否,则进一步根据相应子集的相邻子集个数进行相应处理,其中,若相邻子集个数大于1,则进一步计算相应子集与根节点子集的角度并根据角度确定是否将相应子集设置为叶子子集,若相邻子集个数等于1,则将相应子集设置为叶子子集;检测叶子子集的个数是否为0,若是,则结束本次执行,若否,则依次将叶子子集设置为根子集。
根据本发明实施例一实施方式,计算相应子集与根子集的角度,包括:确定相应子集与根子集的相邻点;根据相邻点确定相应子集中与相邻点位置相对较远的第一较远点;根据相邻点和第一较远点构建相应子集对应的第一方向向量;根据相邻点确定根子集中与相邻点位置相对较远的第二较远点;根据相邻点和第二较远点构建根子集对应的第二方向向量;根据第一方向向量和第二方向向量计算相应子集与根子集的角度。
根据本发明实施例一实施方式,根据角度确定是否将相应子集设置为叶子子集,包括:若角度大于90度,则将相应子集设置为叶子子集,否则不将相应子集设置为叶子子集。
根据本发明实施例一实施方式,根据门静脉中心线子集,从第二图像数据中确定门静脉对应的图像数据,包括对门静脉中心线子集中的每一子集执行如下步骤:根据像素点位置获取每一子集中的最大点和最小点;根据最大点和最小点确定一个与每一子集对应的扩展图像数据;将与扩展图像数据有交集的第二图像数据确定为门静脉对应的图像数据。
根据本发明实施例第二方面,一种图像处理装置,应用于对话系统,该装置包括:图像数据获取模块,用于获取肝脏区域对应的第一图像数据和血管区域对应的第二图像数据,其中,血管区域内的血管包括肝静脉和门静脉;中心线计算模块,用于根据第二图像数据和中心线计算方法得到血管的中心线对应的第三图像数据,其中第三图像数据包括像素点;连通域划分模块,用于根据连通域算法和第一规则对第三图像数据进行连通域划分得到至少两个子集;门静脉中心线确定模块,用于根据第一图像数据和第二规则,从至少两个子集中确定门静脉中心线对应的门静脉中心线子集,其中,第二规则包括用于根据门静脉与肝脏区域的位置关系和门静脉的结构特征确定门静脉中心线子集的规则;门静脉确定模块,用于根据门静脉中心线子集,从第二图像数据中确定门静脉对应的图像数据,以将第二图像数据区分为门静脉对应的图像数据和肝静脉对应的图像数据。
根据本发明实施例第三方面,一种计算机存储介质,存储介质包括一组计算机可执行指令,当指令被执行时用于执行上述任一项的图像处理方法。
本发明实施例提供了一种图像处理方法、装置及存储介质。该方法包括:首先,分别提取肝脏区域图像和血管区域图像;接下来,提取血管中心线并根据连通度将血管中心线划分为若干个大小适度的区域;之后,根据门静脉与肝脏区域的位置关系和门静脉的结构特征,从若干血管中心线区域中确定出门静脉对应的中心线区域;然后,根据门静脉对应的中心线区域进行中心线恢复得到门静脉图像,以与肝静脉图像进行区分。其中,提取中心线可将肝静脉和门静脉图像简化为树枝状线性结构,并有利于结合门静脉与肝脏区域的位置关系和门静脉的结构特征快速区分出肝静脉和门静脉,大幅提升了用于实时分析的肝脏肿瘤辅助诊断系统的实时性。
需要理解的是,本发明的教导并不需要实现上面所述的全部有益效果,而是特定的技术方案可以实现特定的技术效果,并且本发明的其他实施方式还能够实现上面未提到的有益效果。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
在附图中,相同或对应的标号表示相同或对应的部分。
图1为本发明实施例图像处理方法的实现流程示意图;
图2为本发明实施例图像处理方法一应用的具体实现流程示意图;
图3为本发明实施例图像处理方法一应用血管区域示意图;
图4为本发明实施例图像处理方法一应用血管中心线示意图;
图5为本发明实施例图像处理方法一应用门静脉中心线区分结果示意图;
图6为本发明实施例图像处理方法一应用门静脉区域区分结果示意图;
图7为本发明实施例图像处理装置的组成结构示意图。
具体实施方式
为使本发明的目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
图1示出了本发明实施例图像处理方法的实现流程,该方法主要应用于医疗辅助诊断系统。参考图1,该方法包括:操作110,获取肝脏区域对应的第一图像数据和血管区域对应的第二图像数据,其中,血管区域内的血管包括肝静脉和门静脉;操作120,根据第二图像数据和中心线计算方法得到血管的中心线对应的第三图像数据,其中第三图像数据包括像素点;操作130,根据连通域算法和第一规则对第三图像数据进行连通域划分得到至少两个子集;操作140,根据第一图像数据和第二规则,从至少两个子集中确定门静脉中心线对应的门静脉中心线子集,其中,第二规则包括用于根据门静脉与肝脏区域的位置关系和门静脉的结构特征确定门静脉中心线子集的规则;操作150,根据门静脉中心线子集,从第二图像数据中确定门静脉对应的图像数据,以将第二图像数据区分为门静脉对应的图像数据和肝静脉对应的图像数据。
在操作110中,肝脏区域对应的第一图像数据和血管区域对应的第二图像数据主要来源于医疗图像序列,如MRI或CT图像序列,并通过某种图像分割算法提取出来的。本发明实施例并不限定具体的数据来源和图像分割算法,实施者可采用任意适用的数据来源和图像分割算法。但本发明实施例的实施效果会受图像分割算法精度的影响,实施者所采用的图像分割算法精度越高,本发明实施例图像处理方法对门静脉和肝静脉的区分准确度就越高。
其中,肝脏区域对应的第一图像数据主要用作区分门静脉和肝静脉的参照物;血管区域对应的第二图像数据则是包含门静脉和肝静脉的图像数据,是本发明实施例着重要处理的对象。
在操作120中,血管中心线指将血管方向垂直的每一切面的中心点连接起来形成的线,能够较好地反映血管结构;中心线计算方法有很多,本发明实施例并不限定中心线计算方法,实施者可采用任何适用的中心线计算方法,例如基于最小路径的血管中心线提取算法、基于活动轮廓模型的PMPP-BT算法等。但本发明实施例的实施效果会受中心线计算方法精度的影响,实施者所采用的中心线算法精度越高,本发明实施例图像处理方法对门静脉和肝静脉的区分准确度就越高。
其中,提取血管中心线,可简化图像处理的对象,且特别适合利用血管结构特征的不同来区分门静脉和肝静脉。
在操作130中,连通区域一般指二值图像中位置相邻的前景像素点组成的图像区域。连通域分析是指找出图中图像中的各个连通区域并标记。连通域划分指在连通域分析的基础上,将过大的连通区域划分为大小适当的连通区域。本发明实施例并不限定连通域算法,实施者可采用任何适用的连通域算法,例如,Two-Pass算法,Seed-Filling算法等等。但本发明实施例的实施效果会受连通域算法精度的影响,实施者所采用的连通域算法精度越高,本发明实施例图像处理方法对门静脉和肝静脉的区分准确度就越高。
其中,将血管中心线化为大小适当的连通区域,有助于分区域处理,如此可简化每一次用于确定当前中心线子集是否为门静脉中心线子集的运算复杂度和计算量,也相应地提高了处理精度和判断的准确度。
在操作140中,第二规则是用来区分门静脉中心线和肝静脉中心线,并从中确定门静脉中心线的规则。本发明人发现通过门静脉与与肝脏区域的位置关系结合门静脉特有的结构特征,可较为容易且准确地区分门静脉中心线和肝静脉中心线。实施者还可在此基础之上,添加其他规则以调整或优化最终的结果。
通过这一步骤可以将大小适中的中心线子集分为两个部分,一部分为与门静脉中心线对应的门静脉中心线子集,另一部分为与肝静脉中心线对应的肝静脉中心线子集。
在操作150中,基于操作140得到的门静脉中心线子集和肝静脉中心线子集,分别从第二图像数据(血管区域对应的图像数据)中确定出门静脉对应的图像数据和肝静脉对应的图像数据。如此,就实现了肝静脉和门静脉的区分。
本发明实施例图像处理方法通过提取中心线将肝静脉和门静脉图像简化为树枝状线性结构,再结合门静脉与肝脏区域的位置关系和门静脉的结构特征,可快速区分出肝静脉中心线和门静脉中心线,之后,根据肝静脉中心线和门静脉中心线确定出肝静脉血管区域和门静脉对应的血管区域,从而实现了一种快速区分肝静脉和门静脉的方法,也相应提高了实时分析的肝脏肿瘤辅助诊断系统的实时性。
根据本发明实施例一实施方式,获取肝脏区域对应的第一图像数据和血管区域对应的第二图像数据,包括:获取原始图像数据,其中,原始图像数据包括肝脏区域对应的图像数据和血管区域对应的图像数据;将原始图像数据输入到图像处理模型得到肝脏区域对应的第一图像数据和血管区域对应的第二图像数据,其中图像处理模型是基于深度学习方法,经过大量训练图像数据训练得到的图像处理模型。
在本实施方式中,使用基于深度学习方法,大量训练图像数据训练得到的图像处理模型来从原始图像数据中提取肝脏区域对应的图像数据和血管区域对应的图像数据,其准确度更高,更精确,从而可更准确地区分肝静脉和门静脉。
根据本发明实施例一实施方式,第一规则包括:子集中的像素点的个数大于第一阈值且小于第二阈值;相应地,根据连通域算法和第一规则对第三图像数据进行连通域划分得到至少两个子集,包括:根据连通域算法对第三图像数据进行连通域划分得到至少两个连通域子集;检测每一连通域子集内像素点的个数是否小于第一阈值,若是,则将相应连通域子集合并到与之相邻的任一连通域子集中得到符合第一规则的子集,若否,则进一步检测每一连通域子集内像素点的个数是否大于第二阈值,若是,则将相应连通域子集划分为符合第一规则的至少两个子集,若否,则保留连通域子集。
如上所述,连通域子集的划分主要为了分区域处理,以简化每一次用于确定当前中心线子集是否为门静脉中心线子集的运算复杂度和计算量。但需要注意的是,如果每个连通域子集的大小过大,则达不到简化运算复杂度的目的;反之,如果每个连通域子集的大小过,则会增加相应运算的执行次数。
因此,在本实施方式中,第一规则主要通过控制像素个数的方式控制连通域子集的大小,使其能够控制在一个大小适度的范围内。其中,第一阈值和第二阈值的初始值可以根据专家经验或领域知识来指定,之后,还可以根据实施效果来进行调整,以取得更好的实施效果。
根据本发明实施例一实施方式,根据第一图像数据和第二规则,从至少两个子集中确定门静脉中心线对应的门静脉中心线子集,包括:根据第一图像数据以及像素点之间的位置关系确定肝脏区域外的血管中心线对应的至少一个第一子集,将至少一个第一子集确定为门静脉中心线对应的子集;计算每个第一子集与第一图像数据之间的距离并将与第一图像数据之间距离最小的第一子集确定为门静脉根部对应的子集;根据门静脉根部对应的子集和根据门静脉的结构特征确定门静脉中心线子集的规则,确定门静脉中心线对应的门静脉中心线子集中的其他子集。
本发明人发现在肝静脉和门静脉中,仅有门静脉的根部是在肝脏区域外的。因此,在本发明实施方式中,本发明人巧妙地利用这一特点,提出了以下区分肝静脉中心线和门静脉中心线的方法:即首先确定出位于肝脏区域之外的血管中心线子集,然后再从中选取最靠近肝脏下端的子集作为门静脉根子集,并以此为起点确定出门静脉中心线子集。
这一方法比起仅根据门静脉和肝静脉的主干结构特征进行区分更容易执行,且可以顺藤摸瓜得到更多分支处的血管,使区分结果的精度更高、更准确。
根据本发明实施例一实施方式,根据门静脉根部对应的子集和根据门静脉的结构特征确定门静脉中心线子集的规则,确定门静脉中心线对应的门静脉中心线子集中的其他子集,包括:将门静脉根部对应的子集设置为根子集;获取与根节点子集相邻的子集集合,检测子集集合中每一子集是否是已经确定为门静脉中心线对应的子集,若是,则将相应子集设置为叶子子集,若否,则进一步根据相应子集的相邻子集个数进行相应处理,其中,若相邻子集个数大于1,则进一步计算相应子集与根节点子集的角度并根据角度确定是否将相应子集设置为叶子子集,若相邻子集个数等于1,则将相应子集设置为叶子子集;检测叶子子集的个数是否为0,若是,则结束本次执行,若否,则依次将叶子子集设置为根子集。
在本实施方式中,本发明人发现门静脉血管的生长方向基本向肝脏边缘生长,因此,巧妙地利用这一结构特点,在判断根子集的邻近子集是否是门静脉中心线对应地子集时,主要通过计算根子集与邻近子集之间的角度来判断。如此,可较为容易、准确地确定根子集的邻近子集是否是门静脉中心线对应地子集,且不易遗漏可疑的血管分支,实现全覆盖。
根据本发明实施例一实施方式,计算相应子集与根子集的角度,包括:确定相应子集与根子集的相邻点;根据相邻点确定相应子集中与相邻点位置相对较远的第一较远点;根据相邻点和第一较远点构建相应子集对应的第一方向向量;根据相邻点确定根子集中与相邻点位置相对较远的第二较远点;根据相邻点和第二较远点构建根子集对应的第二方向向量;根据第一方向向量和第二方向向量计算相应子集与根子集的角度。
在本实施方式中,根据相应子集与根子集的相邻点来确定相应子集与根子集的方向向量,并通过方向向量计算相应子集与根子集的角度,其误差更小,可以更准确地区分门静脉中心线和肝静脉中心线。
根据本发明实施例一实施方式,根据角度确定是否将相应子集设置为叶子子集,包括:若角度大于90度,则将相应子集设置为叶子子集,否则不将相应子集设置为叶子子集。
在本实施方式中,假设角度大于90度时,更符合门静脉血管的生长方向基本向肝脏边缘生长这一结构特征,用这一标注进行判断时,区分分门静脉中心线和肝静脉中心线的效果较好。
根据本发明实施例一实施方式,根据门静脉中心线子集,从第二图像数据中确定门静脉对应的图像数据,包括对门静脉中心线子集中的每一子集执行如下步骤:根据像素点位置获取每一子集中的最大点和最小点;根据最大点和最小点确定一个与每一子集对应的扩展图像数据;将与扩展图像数据有交集的第二图像数据确定为门静脉对应的图像数据。
在本实施方式中,通过中心线子集中的最大点和最小点来扩展图像数据,这样可以通过扩展图像数据扩大与图像数据的交集范围,也就更容易确定出门静脉对应的图像数据。
图2示出了本发明实施例图像处理方法一应用的具体实现流程,如图2所示,该应用主要通过以下步骤将肝脏区域的血管图像区分为门静脉血管图像和肝静脉血管图像:
步骤2010,获取肝脏区域图像数据和血管区域图像数据;
具体地,获取医疗图像序列,如MRI或CT图片序列,基于深度学习方法如U-net3D,获得图像中的肝脏区域Livermask和血管区域Voriginal。其中,血管区域Vorigina包含肝静脉和门静脉,如图3所示。
步骤2020,提取血管中心线图像数据;
具体地,采用3D thinning算法求血管中心线从血管区域中Voriginal提取血管中心线如图4所示。
步骤2030,将血管中心线图像数据分为多个子集;
具体地,18邻域的三维连通域分析,将血管中心线线分为多个子集。然后对每个子集中的像素点个数进行检测,如果像素点小于5个,则并入周围的任一连通域对应的子集;如果像素点大于100,则将连通域对应的子集分为最大为50个像素点的多个子集。具体办法为,假设连通域中像素点坐标均为(x,y,z),选择连通域中边缘的一个像素点i,如x值最小点,y值最小点或z值最小点,在该像素点附近采用 18邻域的方式进行搜索,将附近的像素点均计入i点所在区域,直到像素点数大于50时停止,并对没有计入i区域内的像素点进行相同操作,直至每个区域的像素点数不大于50个。完成连通域分析及后处理后,血管中心线被分为n个子集sn,最终效果如图5所示,其中,不同子集显示为墨迹深浅不同的区域。
步骤2040,确定门静脉根部对应的子集;
具体地,在n个血管中心线子集sn中寻找门静脉根部对应的子集。首先,选取在肝脏区域外的m个血管中心线子集sm,然后选取m 个子集中最靠近肝脏下端的子集为门静脉根部对应的子集pvroot,同时将这m个血管区域均标记为门静脉区域,其余的n-m个区域标记为非门静脉区域。
步骤2050,获取与所述根节点子集相邻的子集集合,并获取第一个子集;
具体地,将门静脉根部对应的子集pvroot设置为根子集,并以此为起点寻找pvroot附近区域对应地子集,假设附近一共有I个子集di,获取某个子集di。
步骤2060,检测该子集di是否是已经确定为门静脉中心线对应的子集,若是,则继续步骤2070,若否,则继续步骤2080;
步骤2070,子集di是已经确定为门静脉中心线对应的子集,将该子集设置为叶子子集;
步骤2080,子集di不是已经确定为门静脉中心线对应的子集,确定该子集是否为门静脉对应的子集,并进行相应地处理,之后获取下一个子集;
具体地,如果di属于m个已经标记为门静脉的区域,则直接将di记为pvroot的叶子节点,否则寻找每一个区域di附近的区域共J个dnearj。如果J=1,表示区域di仅与门静脉区域pvroot相接,则将区域di记为pvroot的叶子节点。如果J>1,表示区域di附近仍有除pvroot外的血管区域,需要计算di与pvroot之间的角度,由于门静脉血管的生长方向基本向肝脏边缘生长,所以di与pvroot之间的角度需要大于90度,当di与pvroot之间的角度大于90度时,将di记为pvroot的叶子节点,否则不将di记为pvroot的叶子节点。
具体的区域间角度计算方法为:
1)首先计算di与pvroot相邻的像素点,其中属于di的相邻像素点为 属于pvroot的相邻像素点如计算pvroot中的与di相邻的像素点,可求pvroot中所有像素点的26邻域,当26邻域中存在di中的点,则该点为di与pvroot相邻的像素点
2)计算di中离较远的像素点如,选择5个离相邻像素点最远的像素点,首先计算di中除了相邻像素点的其他像素点,与相邻像素点的距离平均值,距离均值越大的距离越远。
3)计算pvroot中离较远的像素点
4)然后求取di与pvroot之间的角度:
首先,计算区域di的方向向量首先计算相邻像素点的位置均值,以及较远点的位置均值:
则di的方向向量为:
然后,计算区域pvroot的方向向量
则di与pvroot之间的角度为:
则当cosα小于0时,表示两者角度大于90度
步骤2100,检测所述叶子子集的个数是否为0,若否,则继续步骤 2110,若是,则继续步骤2120;
步骤2110,所述叶子子集的个数不为0,则依次将所述叶子子集设置为根子集;
具体地,将根节点的叶子节点视为新的根节点,重复步骤2050,直到所有叶子节点附近的子集数为0,或者均不满足添加为叶子节点的条件时停止。此时,以pvroot为根节点的门静脉中心线的树状线性结构构建完毕,并将其标记为门静脉中心线子集,如图5中所示的墨迹较浅的区域。
步骤2120,根据所述门静脉中心线子集,从血管区域图像数据中确定门静脉对应的图像数据;
具体地,标记为门静脉中心线子集对应到原始血管区域Voriginal中,进行门静脉中心线的直径恢复。恢复方法为:
寻找标记为门静脉的血管中心线子集sn所在区域:首先,在sn中像素点在x,y,z三个坐标上的最大值xmax,ymax,zmax和最小值xmin,ymin,zmin;然后,在血管区域Voriginal中获得一个扩张的区域,如向外扩张30个像素点,即选取Voriginal中的[xmin-15:xmax+15,ymin-15:ymax+15, zmin-15:zmax+15]区域,其他血管区域置零,得到中心线sn附近的血管Vcut,则Vcut中与中心线子集sn有交集的血管连通域置为门静脉。最终的恢复效果如图6所示,其中,墨迹较浅的血管即为门静脉血管。
需要说明的上述本实施例图像处理方法的具体实现流程仅为示例性说明,并非对本实施例图像处理方法的具体实现流程的限定,实施者可根据实施条件选择任何适用的实现方法或具体流程。
进一步地,本发明实施例还提供一种图像处理装置,应用于对话系统,如图7所示,该装置70包括:图像数据获取模块701,用于获取肝脏区域对应的第一图像数据和血管区域对应的第二图像数据,其中,血管区域内的血管包括肝静脉和门静脉;中心线计算模块702,用于根据第二图像数据和中心线计算方法得到血管的中心线对应的第三图像数据,其中第三图像数据包括像素点;连通域划分模块703,用于根据连通域算法和第一规则对第三图像数据进行连通域划分得到至少两个子集;门静脉中心线确定模块704,用于根据第一图像数据和第二规则,从至少两个子集中确定门静脉中心线对应的门静脉中心线子集,其中,第二规则包括用于根据门静脉与肝脏区域的位置关系和门静脉的结构特征确定门静脉中心线子集的规则;门静脉确定模块705,用于根据门静脉中心线子集,从第二图像数据中确定门静脉对应的图像数据,以将第二图像数据区分为门静脉对应的图像数据和肝静脉对应的图像数据。
根据本发明实施例一实施方式,图像数据获取模块701包括:原始图像数据获取子模块,用于获取原始图像数据,其中,原始图像数据包括肝脏区域对应的图像数据和血管区域对应的图像数据;图像处理子模块,用于将原始图像数据输入到图像处理模型得到肝脏区域对应的第一图像数据和血管区域对应的第二图像数据,其中图像处理模型是基于深度学习方法,经过大量训练图像数据训练得到的图像处理模型。
根据本发明实施例一实施方式,第一规则包括:子集中的像素点的个数大于第一阈值且小于第二阈值;相应地,连通域划分模块702包括:连通域子集划分子模块,用于根据连通域算法对第三图像数据进行连通域划分得到至少两个连通域子集;连通域子集处理子模块,用于检测每一连通域子集内像素点的个数是否小于第一阈值,若是,则将相应连通域子集合并到与之相邻的任一连通域子集中得到符合第一规则的子集,若否,则进一步检测每一连通域子集内像素点的个数是否大于第二阈值,若是,则将相应连通域子集划分为符合第一规则的至少两个子集,若否,则保留连通域子集。
根据本发明实施例一实施方式,门静脉中心线确定模块704包括:门静脉中心线第一子集确定子模块,用于根据第一图像数据以及像素点之间的位置关系确定肝脏区域外的血管中心线对应的至少一个第一子集,将至少一个第一子集确定为门静脉中心线对应的子集;门静脉根部确定子模块模块,用于计算每个第一子集与第一图像数据之间的距离并将与第一图像数据之间距离最小的第一子集确定为门静脉根部对应的子集;门静脉中心线其他子集确定子模块,用于根据门静脉根部对应的子集和根据门静脉的结构特征确定门静脉中心线子集的规则,确定门静脉中心线对应的门静脉中心线子集中的其他子集。
根据本发明实施例一实施方式,门静脉中心线其他子集确定子模块包括:根子集确定单元,用于将门静脉根部对应的子集设置为根子集;叶子子集确定单元,用于获取与根节点子集相邻的子集集合,检测子集集合中每一子集是否是已经确定为门静脉中心线对应的子集,若是,则将相应子集设置为叶子子集,若否,则进一步根据相应子集的相邻子集个数进行相应处理,其中,若相邻子集个数大于1,则进一步计算相应子集与根节点子集的角度并根据角度确定是否将相应子集设置为叶子子集,若相邻子集个数等于1,则将相应子集设置为叶子子集;叶子子集检测单元,用于检测叶子子集的个数是否为0,若是,则结束本次执行,若否,则依次将叶子子集设置为根子集。
根据本发明实施例一实施方式,叶子子集确定单元包括:相邻点确定子单元,用于确定相应子集与根子集的相邻点;第一较远点确定子单元,用于根据相邻点确定相应子集中与相邻点位置相对较远的第一较远点;第一方向向量构建子单元,用于根据相邻点和第一较远点构建相应子集对应的第一方向向量;第二较远点确定子单元,用于根据相邻点确定根子集中与相邻点位置相对较远的第二较远点;第二方向向量构建子单元,用于根据相邻点和第二较远点构建根子集对应的第二方向向量;角度计算子单元,用于根据第一方向向量和第二方向向量计算相应子集与根子集的角度。
根据本发明实施例一实施方式,叶子子集确定单元具体用于若角度大于90度,则将相应子集设置为叶子子集,否则不将相应子集设置为叶子子集。
根据本发明实施例一实施方式,门静脉确定模块705包括:最大点和最小点确定子模块,用于根据像素点位置获取每一子集中的最大点和最小点;扩展图像数据确定子模块,用于根据最大点和最小点确定一个与每一子集对应的扩展图像数据;门静脉确定子模块,用于将与扩展图像数据有交集的第二图像数据确定为门静脉对应的图像数据。
根据本发明实施例第三方面,一种计算机存储介质,存储介质包括一组计算机可执行指令,当指令被执行时用于执行上述任一项的图像处理方法。
这里需要指出的是:以上针对图像处理装置实施例的描述和以上针对计算机存储介质实施例的描述,与前述方法实施例的描述是类似的,具有同前述方法实施例相似的有益效果,因此不做赘述。对于本发明对图像处理装置实施例的描述和对计算机存储介质实施例的描述尚未披露的技术细节,请参照本发明前述方法实施例的描述而理解,为节约篇幅,因此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个装置,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以利用硬件的形式实现,也可以利用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储介质、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例方法的全部或部分。而前述的存储介质包括:移动存储介质、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
- 上一篇:石墨接头机器人自动装卡簧、装栓机
- 下一篇:一种轨交弓网点云智能监测方法