一种模型的分离方法、装置、终端和计算机存储介质与流程

文档序号:18547801发布日期:2019-08-27 21:51阅读:162来源:国知局
一种模型的分离方法、装置、终端和计算机存储介质与流程

本发明涉及心脏模型中心耳模型的分离技术,尤其涉及一种模型的分离方法、装置、终端和计算机存储介质。



背景技术:

心耳就是从心房伸出的耳状小囊,是心房的一部分,具有主动舒缩和分泌功能,对缓解心房内压力升高及保证心室充盈具有重要意义。

从解剖结构上看,心耳在心脏的角落,血液在心耳中流动缓慢,因而易形成血块,这些血块脱落后经主动脉流向全身,可能引发不同部位的栓塞,对身体造成严重的损害,甚至直接危及生命,例如:心肌梗塞、脑卒中等。

由于心耳中血栓的形成与心耳的结构、形态等有很大关系,结构越复杂的心耳形成血栓的概率越高,所以,对心耳的形态进行研究至关重要,为了研究心耳,需要将心耳模型从心脏模型中分离出来,由于心耳较小且形状比较复杂,传统的手动分离方式切割标准不统一,人的切割习惯直接影响对心耳形态的分析和指标计算结果,而且工作量大,难以批量处理数据;由此可以看出,现有的采用手动分离心耳模型的方法操作麻烦,效果不佳。



技术实现要素:

有鉴于此,本发明实施例期望提供一种模型的分离方法、装置、终端和计算机存储介质,旨在简化心耳模型的分离操作。

为达到上述目的,本发明的技术方案是这样实现的:

第一方面,本发明实施例提供一种模型的分离方法,包括:

根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵;

根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对所述三维矩阵进行运算,得到腐蚀运算后的三维矩阵;

根据形态学中的膨胀运算,采用构造出的第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵;

对所述三维模型的三维矩阵与膨胀运算后的三维矩阵之间作差,得到差值矩阵,以从所述差值矩阵对应的模型中分离出心耳模型。

进一步地,所述根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵,包括:

将包含心脏模型的三维模型中属于所述心脏模型内部的点,所对应的矩阵元素设置为第一指定值;

将包含心脏模型的三维模型中属于所述心脏模型外部的点,所对应的矩阵元素设置为第二指定值,以构造出所述三维模型的三维矩阵。

进一步地,所述根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对所述三维矩阵进行运算,得到腐蚀运算后的三维矩阵,包括:

根据获取到的第一正方体的三维模型,构造所述第一正方体的三维矩阵;

将所述第一正方体的三维矩阵,确定为所述第一类三维矩阵;

采用所述第一类三维矩阵对所述三维矩阵进行腐蚀运算,得到腐蚀运算后的三维矩阵;

其中,所述第一正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

进一步地,所述根据获取到的第一正方体的三维模型,构造所述第一正方体的三维矩阵,包括:

将所述第一正方体的三维模型中属于所述第一正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将所述第一正方体的三维模型中属于所述第一正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出所述第一正方体的三维矩阵。

进一步地,所述根据形态学中的膨胀运算,采用第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵,包括:

根据获取到的第二正方体的三维模型,构造所述第二正方体的三维矩阵;

将所述第二正方体的三维矩阵,确定为所述第二类三维矩阵;

采用所述第二类三维矩阵对所述三维矩阵进行膨胀运算,得到膨胀运算后的三维矩阵;

其中,所述第二正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

进一步地,所述根据获取到的第二正方体的三维模型,构造所述第二正方体模型的三维矩阵,包括:

将所述第二正方体的三维模型中属于所述第二正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将所述第二正方体的三维模型中属于所述第二正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出所述第二正方体的三维矩阵。

进一步地,所述第一指定值为1,所述第二指定值为0。

进一步地,所述第一正方体的边长小于所述第二正方体的边长,所述第一正方体的边长与所述第二正方体的边长的差值大于等于第一预设阈值小于等于第二预设阈值。

第二方面,本发明实施例提供一种模型的分离装置,包括:

第一构造模块,用于根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵;

腐蚀运算模块,用于根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对所述三维矩阵进行运算,得到腐蚀运算后的三维矩阵;

膨胀运算模块,用于根据形态学中的膨胀运算,采用构造出的第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵;

分离模块,用于对所述三维模型的三维矩阵与膨胀运算后的三维矩阵之间作差,得到差值矩阵,以从所述差值矩阵对应的模型中分离出心耳模型。

进一步地,所述第一构造模块,具体用于:

将包含心脏模型的三维模型中属于所述心脏模型内部的点,所对应的矩阵元素设置为第一指定值;

将包含心脏模型的三维模型中属于所述心脏模型外部的点,所对应的矩阵元素设置为第二指定值,以构造出所述三维模型的三维矩阵。

进一步地,所述腐蚀运算模块,包括:

第一构造子模块,用于根据获取到第一正方体的三维模型,构造所述第一正方体的三维矩阵;

第一确定子模块,用于将所述第一正方体的三维矩阵,确定为所述第一类三维矩阵;

腐蚀运算子模块,用于采用所述第一类三维矩阵对所述三维矩阵进行腐蚀运算,得到腐蚀运算后的三维矩阵;

其中,所述第一正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

进一步地,所述第一构造子模块,具体用于:

将所述第一正方体的三维模型中属于所述第一正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将所述第一正方体的三维模型中属于所述第一正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出所述第一正方体的三维矩阵。

进一步地,所述膨胀运算模块,包括:

第二构造子模块,用于根据获取到的第二正方体的三维模型,构造所述第二正方体的三维矩阵;

第二确定子模块,用于将所述第二正方体的三维矩阵,确定为所述第二类三维矩阵;

膨胀运算子模块,用于采用所述第二类三维矩阵对所述三维矩阵进行膨胀运算,得到膨胀运算后的三维矩阵;

其中,所述第二正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

进一步地,所述第二构造子模块,具体用于:

将所述第二正方体的三维模型中属于所述第二正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将所述第二正方体的三维模型中属于所述第二正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出所述第二正方体的三维矩阵。

进一步地,所述第一指定值为1,所述第二指定值为0。

进一步地,所述第一正方体的边长小于所述第二正方体的边长,所述第一正方体的边长与所述第二正方体的边长的差值大于等于第一预设阈值小于等于第二预设阈值。

第三方面,本发明实施例提供一种终端,所述终端包括处理器、存储器及通信总线;所述通信总线用于实现处理器和存储器之间的连接通信;所述处理器用于执行存储器中存储的模型的分离程序,以实现以下步骤:

根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵;

根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对所述三维矩阵进行运算,得到腐蚀运算后的三维矩阵;

根据形态学中的膨胀运算,采用构造出的第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵;

对所述三维模型的三维矩阵与膨胀运算后的三维矩阵之间作差,得到差值矩阵,以从所述差值矩阵对应的模型中分离出心耳模型。

进一步地,所述根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵中,所述处理器还用于执行所述模型的分离程序,以实现以下步骤:

将包含心脏模型的三维模型中属于所述心脏模型内部的点,所对应的矩阵元素设置为第一指定值;

将包含心脏模型的三维模型中属于所述心脏模型外部的点,所对应的矩阵元素设置为第二指定值,以构造出所述三维模型的三维矩阵。

进一步地,所述根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对所述三维矩阵进行运算,得到腐蚀运算后的三维矩阵中,所述处理器还用于执行所述模型的分离程序,以实现以下步骤:

根据获取到第一正方体的三维模型,构造所述第一正方体的三维矩阵;

将所述第一正方体的三维矩阵,确定为所述第一类三维矩阵;

采用所述第一类三维矩阵对所述三维矩阵进行腐蚀运算,得到腐蚀运算后的三维矩阵;

其中,所述第一正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

进一步地,所述根据获取到的第一正方体的三维模型,构造所述第一正方体的三维矩阵中,所述处理器还用于执行所述模型的分离程序,以实现以下步骤:

将所述第一正方体的三维模型中属于所述第一正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将所述第一正方体的三维模型中属于所述第一正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出所述第一正方体的三维矩阵。

进一步地,所述根据形态学中膨胀运算,采用第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵中,所述处理器还用于执行所述模型的分离程序,以实现以下步骤:

根据获取到的第二正方体的三维模型,构造所述第二正方体的三维矩阵;

将所述第二正方体的三维矩阵,确定为所述第二类三维矩阵;

采用所述第二类三维矩阵对所述三维矩阵进行膨胀运算,得到膨胀运算后的三维矩阵;

其中,所述第二正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

进一步地,所述根据获取到的第二正方体的三维模型,构造所述第二正方体模型的三维矩阵中,所述处理器还用于执行所述模型的分离程序,以实现以下步骤:

将所述第二正方体的三维模型中属于所述第二正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将所述第二正方体的三维模型中属于所述第二正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出所述第二正方体的三维矩阵。

进一步地,所述第一指定值为1,所述第二指定值为0。

进一步地,所述第一正方体的边长小于所述第二正方体的边长,所述第一正方体的边长与所述第二正方体的边长的差值大于等于第一预设阈值小于等于第二预设阈值。

第四方面,本发明实施例提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,该计算机可执行指令配置为执行上述一个或多个实施例中提供的模型的分离方法。

本发明实施例所提供的一种模型的分离方法、装置、终端和计算机存储介质,该方法包括:根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵,根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对三维矩阵进行运算,得到腐蚀运算后的三维矩阵,根据形态学中的膨胀运算,采用构造出的第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵,对三维模型的三维矩阵与膨胀运算后的三维矩阵之间作差,得到差值矩阵,以从差值矩阵对应的模型中分离出心耳模型;也就是说,在本发明实施例中,通过对构造出的包含心脏模型的三维模型的三维矩阵进行腐蚀运算和膨胀运算,能够对心脏模型中的心房等大结构的模型先通过腐蚀变小,然后再通过膨胀变大,最后通过作差得到心脏模型中除了心房等大结构的模型以外的模型的三维矩阵,这样,可以在除了心房等大结构的模型以外的模型的三维矩阵中确定出心耳模型的三维矩阵,从而可以从心脏模型中分离出心耳模型,通过采用上述方法,统一了心耳切割的标准,排除了人为因素在分离过程中以及对后续形态分析的影响;简化了分割流程,无需进行人工操作就可以简捷地完成从心脏模型中分离出心耳模型,提高了分离的准确性和分离效率。

附图说明

图1为本发明实施例中的一种可选的模型的分离方法的流程示意图;

图2为本发明实施例中的第一种可选的心脏模型的实例的结构示意图;

图3为本发明实施例中的第二种可选的心脏模型的实例的分布示意图;

图4为本发明实施例中的第三种可选的心脏模型的实例的结构示意图;

图5为本发明实施例中的第四种可选的心脏模型的实例的结构示意图;

图6为本发明实施例中的第五种可选的心脏模型的实例的结构示意图;

图7为本发明实施例中的第六种可选的心脏模型的实例的结构示意图;

图8为本发明实施例中的一种可选的模型的分离装置的结构示意图;

图9为本发明实施例中的一种可选的终端的结构示意图;

图10为本发明实施例中的一种可选的计算机存储介质的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

本发明实施例提供一种模型的分离方法,该方法可以应用于一终端中,图1为本发明实施例中的一种可选的模型的分离方法的流程示意图,如图1所示,该模型的分离方法,可以包括:

s101:根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵;

目前,为了从心脏模型中分离出心耳模型,往往采用手动分离方式,将心脏模型中的心耳模型分离出来,但是,由于人的切割习惯直接影响心耳模型的形态,使得分离出的心耳模型形态不一,不利于对心耳模型的形态分析和指标计算。

为了更加精确地从心脏模型中分离出心耳模型,首先,终端先获取包含心脏模型的三维模型,这里,包含心脏模型的三维模型可以为一个仅仅包含心脏模型的三维模型,也可以为包含多个器官组织模型的三维模型,这里,本发明实施例对此不作具体限定。

图2为本发明实施例中的第一种可选的心脏模型的实例的结构示意图,如图2所示为一个完整的心脏内腔模型,心脏模型为一个不规则形状的结构,为了精准地分离出体积很小的心耳模型,先获取包含心脏模型的三维模型,例如,获取包含心脏模型的正方体的三维模型,或者获取包含心脏模型的长方体的三维模型,这里,本申请实施例不作具体限定。

以包含心脏模型的长方体的三维模型为例,在构造三维模型的三维矩阵中,可以以三维模型的像素值为基准,每一个像素点对应一个矩阵元素,从而构造出三维模型的三维矩阵,也可以以三维模型的像素值为基准,每一个像素点对应两个矩阵元素,从而构造出三维模型的三维矩阵,这里,本申请实施例对此不作具体限定。

其中,为了构造出三维模型的三维矩阵,在一种可选的实施例中,s101可以包括:

将包含心脏模型的三维模型中属于心脏模型内部的点,所对应的矩阵元素设置为第一指定值;

将包含心脏模型的三维模型中属于心脏模型外部的点,所对应的矩阵元素设置为第二指定值,以构造出三维模型的三维矩阵。

以三维模型的像素值为基准,每一个像素点对应一个矩阵元素为例来说,针对三维模型中属于心脏模型内部的点,将属于心脏模型内部的点所对应的矩阵元素设置为第一指定值,针对三维模型中属于心脏模型外部的点,将属于心脏模型外部的点所对应的矩阵元素设置为第二指定值,这样,便可以构造出三维模型的三维矩阵。

通过构造出的三维模型的三维矩阵,可以反映出心脏模型的分布状况,从而基于对三维模型的三维矩阵的运算来处理三维模型。

s102:根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对三维矩阵进行运算,得到腐蚀运算后的三维矩阵;

在s101中得到三维模型的三维矩阵之后,为了分离出心耳模型,首先,需要根据形态学中的腐蚀运算来对三维模型进行腐蚀,以缩小三维模型中的心脏模型,具体来说,先构造出一个第一类三维矩阵,采用第一类三维矩阵对三维模型的三维矩阵进行腐蚀运算,从而得到腐蚀运算后的三维矩阵,其中,经过腐蚀运算后,使得三维模型中心脏模型只剩下缩小后的心房等大结构的模型。

为了构造出第一类三维矩阵,以进行腐蚀运算,在一种可选的实施例中,s102可以包括:

根据获取到第一正方体的三维模型,构造第一正方体的三维矩阵;

将第一正方体的三维矩阵,确定为第一类三维矩阵;

采用第一类三维矩阵对三维矩阵进行腐蚀运算,得到腐蚀运算后的三维矩阵;

具体来说,先获取第一正方体的三维模型,基于第一正方体的三维模型来构造第一正方体的三维矩阵,从而确定出第一类三维矩阵,按照从上到下从左到右从前到后的顺序从三维模型中的三维矩阵中,依次确定出多个与第一类三维矩阵维度相等的三维矩阵,用第一类三维矩阵分别与确定出的三维矩阵进行运算,得到腐蚀运算后的三维矩阵中每个矩阵元素的值,从而得到腐蚀运算后的三维矩阵。

其中,第一正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值,这里,预设的心耳模型厚度值为标准心耳模型厚度值,该厚度值是标准心耳模型厚度的最大值,标准心耳模型厚度为与两条端点在心耳模型上相互垂直的最长线段均垂直的端点在心耳模型上的最长线段的长度,同样地,预设的心房模型厚度值为标准心房模型厚度值,该厚度值是标准心房模型厚度的最大值,标准心房模型厚度为是与两条端点在心房模型上相互垂直的最长线段均垂直的端点在心房模型上的最长线段的长度。

为了构造出第一正方体的三维矩阵,在一种可选的实施例中,根据获取到的第一正方体的三维模型,构造第一正方体的三维矩阵,包括:

将第一正方体的三维模型中属于第一正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将第一正方体的三维模型中属于第一正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出第一正方体的三维矩阵。

具体来说,每一个正方体都有一个内切球,这里,针对第一正方体的三维模型中属于第一正方体的内切球内部的点,将内切球内部的点所对应的矩阵元素设置为第一指定值,针对第一正方体的三维模型中属于第一正方体的内切球外部的点,将内切球外部的点所对应的矩阵元素设置为第二指定值。

通过构造出的第一类三维矩阵,可以得到一个形态为球形的球形核,其中,该球形核的直径为大于预设的心耳模型厚度值小于预设的心房模型厚度值的一个值,利用构造出的球形核对三维模型进行腐蚀,得到腐蚀后的三维模型,图3为本发明实施例中的第二种可选的心脏模型的实例的分布示意图,如图3所示为腐蚀后的心脏模型的结构示意图,显然,心脏模型经过腐蚀操作后剩下缩小后的心房等大结构的模型。

s103:根据形态学中的膨胀运算,采用构造出的第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵;

经过s102腐蚀运算之后,心房模型变小了,为了恢复心房等大结构模型的大小,这里,先构造出一个第二类三维矩阵,采用第二类三维矩阵对三维模型中的三维矩阵进行膨胀运算,以恢复心房等大结构模型的大小。

为了构造出第二类三维矩阵,以恢复心房等大结构模型的大小,在一种可选的实施例中,s103可以包括:

根据获取到的第二正方体的三维模型,构造第二正方体的三维矩阵;

将第二正方体的三维矩阵,确定为第二类三维矩阵;

采用第二类三维矩阵对三维矩阵进行膨胀运算,得到膨胀运算后的三维矩阵;

其中,第二正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

具体来说,先获取第二正方体的三维模型来构造第二正方体的三维矩阵,从而确定出第二类三维矩阵,按照从上到下从左到右从前到后的顺序从三维模型的三维矩阵中,依次确定出多个与第二类三维矩阵维度相等的三维矩阵,用第二类三维矩阵分别与确定出的三维矩阵进行运算,得到膨胀运算后的三维矩阵中每个矩阵元素的值,从而得到膨胀运算后的三维矩阵。

其中,第二正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

为了构造出第二正方体的三维矩阵,在一种可选的实施例中,根据获取到的第二正方体的三维模型,构造第二正方体模型的三维矩阵,包括:

将第二正方体的三维模型中属于第二正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将第二正方体的三维模型中属于第二正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出第二正方体的三维矩阵。

具体来说,每一个正方体都有一个内切球,这里,针对第二正方体的三维模型中属于第二正方体的内切球内部的点,将内切球内部的点所对应的矩阵元素设置为第一指定值,针对第二正方体的三维模型中属于第二正方体的内切球外部的点,将内切球外部的点所对应的矩阵元素设置为第二指定值。

通过构造出的第二类三维矩阵,可以得到一个形态为球形的球形核,其中,该球形核的直径为大于预设的心耳模型厚度值小于预设的心房模型厚度值的一个值,利用构造出的球形核对三维模型进行膨胀,得到膨胀后的三维模型,图4为本发明实施例中的第三种可选的心脏模型的实例的分布示意图,如图4所示为膨胀后的心脏模型的结构示意图,显然,心脏模型经过膨胀操作后剩下膨胀后的心房等大结构的模型。

其中,第一指定值为1,第二指定值为0,这样,通过0和1的设置,可以减少矩阵间的腐蚀运算和膨胀运算的复杂度,从而能够加快了心耳模型的分离速度。

其中,第一正方体的边长小于第二正方体的边长,第一正方体的边长与第二正方体的边长的差值大于等于第一预设阈值小于等于第二预设阈值。

为了能够恢复出比原本心房模型更大的心房模型,这里,在选取正方体模型时,需要将第一正方体的边长小于第二正方体的边长,这样,第一正方体模型的球形核的直径小于第二正方体模型的球形核,使得经过腐蚀膨胀运算之后得到的模型,为比原本心房模型更大的心房模型,如图4所示为膨胀后的心房等模型的结构示意图。

另外,对第一正方体的边长与第二正方体的边长的差值是有限制的,即对第一正方体的球形核的直径和第二正方体的球形核的直径之差有一定的限制,在实际应用中,第二正方体的球形核的直径比第一正方体的球形核的直径大4-8个像素。

s104:对三维模型的三维矩阵与膨胀运算后的三维矩阵之间作差,得到差值矩阵,以从差值矩阵对应的模型中分离出心耳模型。

在s102和s103中经过腐蚀膨胀运算之后,得到膨胀运算后的三维矩阵对应的模型为膨胀后的心房等大结构的模型,此时,对三维模型的三维矩阵与膨胀运算后的三维矩阵之间作差,得到差值矩阵,该差值矩阵对应的模型为心脏模型中切割出心房等大结构的模型后剩下的模型,图5为本发明实施例中的第四种可选的心脏模型的实例的结构示意图,如图5所示为心脏模型中切割出心房等大结构的模型后剩下的模型的结构示意图。

采用差值矩阵可以重构出心脏模型中切割出心房等大结构的模型后剩下的模型,从中选取出心耳模型对应的矩阵,利用矩阵提取等值面,利用泊松曲面重建出心耳模型,从而实现从心脏模型中分离出心耳模型;图6为本发明实施例中的第五种可选的心脏模型的实例的结构示意图,如图6所示为分离出的心耳模型的结构示意图。

下面举实例来对上述一个或多个实施例中所述的模型的分离方法进行说明。

图7为本发明实施例中的第六种可选的心脏模型的实例的结构示意图,如图7所示,该模型的分离方法可以包括:

第一步,根据心脏三维点云模型(图7中a是根据点云生成的包含心脏模型的三维模型的结构示意图)构造三维二值矩阵,本实例中构造的三维矩阵大小为512×512×308,心脏模型内部的点标为1,心脏模型外部的点标为0,根据心脏三维点云模型构造出的三维二值矩阵(相当于上述三维模型的三维矩阵)记为heart3d,logical,为此,可以先构造全零矩阵,然后将三维点云模型的点对应的位置标1,即得到需要的三维二值矩阵。

第二步,对三维二值矩阵进行腐蚀操作,本实例中使用半径为30个像素61×61×61的球形核进行腐蚀操作,将三维二值矩阵中值为1的区域外面的几层值为1的点置为0,这样,心耳模型等较小的组织将被腐蚀掉,而心房模型等较大组织会变小,但依然存在,将腐蚀后的矩阵记为hearteroded,图7中b是根据三维矩阵hearteroded生成的模型的结构示意图。

第三步,对腐蚀后的矩阵进行膨胀操作,本实例中使用半径为34个像素的球形核进行膨胀操作,膨胀操作后将三维二值矩阵中值为1的区域外面的几层值为0的点置为1,心耳模型等已经消失的组织不会再出现,残留的组织经过膨胀后会变大,可以恢复到原来的大小,膨胀后矩阵记为heartdilated,如图7中c是根据三维矩阵heartdilated生成的模型的结构示意图。

第四步,用原三维矩阵heart3d,logical与膨胀后的矩阵heartdilated作差运算,heart3d,logical中较大的组织(如:心房)将会被清空,而较小的组织(心耳,小血管等)将会被保留,记矩阵为heartdifference,heartdifference中的心耳为一个单独的连通区域,选择这一连通区域并将其他连通域清空,就可以得到仅包含心耳连通域的三维矩阵,再根据这一矩阵提取等值面,利用泊松曲面重建生成三维网格,即得到心耳的三维模型,如图1中e根据三维矩阵heartdifference生成的模型的结构示意图。

其中,需要说明的是,第二步到第四步操作对原始三维二值矩阵进行腐蚀操作,得到腐蚀后的三维二值矩阵,图3为其示意图,对腐蚀后的三维二值矩阵进行膨胀操作得到膨胀后三维二值矩阵,图4为其示意图,将原始三维二值矩阵与膨胀后的三维二值矩阵作差运算得到相减后的矩阵,如图5所示,选择心耳连通域并将其他连通域清空,提取等值面,利用泊松曲面重建生成心耳的三维网格模型,如图6所示。

本发明实施例所提供的一种模型的分离方法,该方法包括:根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵,根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对三维矩阵进行运算,得到腐蚀运算后的三维矩阵,根据形态学中的膨胀运算,采用构造出的第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵,对三维模型的三维矩阵与膨胀运算后的三维矩阵之间作差,得到差值矩阵,以从差值矩阵对应的模型中分离出心耳模型;也就是说,在本发明实施例中,通过对构造出的包含心脏模型的三维模型的三维矩阵进行腐蚀运算和膨胀运算,能够对心脏模型中的心房等大结构的模型先通过腐蚀变小,然后再通过膨胀变大,最后通过作差得到心脏模型中除了心房等大结构的模型以外的模型的三维矩阵,这样,可以在除了心房模型以外的模型的三维矩阵中确定出心耳模型的三维矩阵,从而可以从心脏模型中分离出心耳模型,通过采用上述方法,统一了心耳切割的标准,排除了人为因素在分离过程中以及对后续形态分析的影响;简化了分割流程,无需进行人工操作就可以简捷地完成从心脏模型中分离出心耳模型,提高了分离的准确性和分离效率。

基于同一发明构思,本实施例提供一种模型的分离装置,图8为本发明实施例中的一种可选的模型的分离装置的结构示意图,如图8所示,该装置包括:第一构造模块81,腐蚀运算模块82,膨胀运算模块83和分离模块84;

其中,第一构造模块81,用于根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵;

腐蚀运算模块82,用于根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对三维矩阵进行运算,得到腐蚀运算后的三维矩阵;

膨胀运算模块83,用于根据形态学中的膨胀运算,采用构造出的第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵;

分离模块84,用于对三维模型的三维矩阵与膨胀运算后的三维矩阵之间作差,得到差值矩阵,以从差值矩阵对应的模型中分离出心耳模型。

在一种可选的实施例中,第一构造模块81,具体用于:

将包含心脏模型的三维模型中属于心脏模型内部的点,所对应的矩阵元素设置为第一指定值;

将包含心脏模型的三维模型中属于心脏模型外部的点,所对应的矩阵元素设置为第二指定值,以构造出三维模型的三维矩阵。

在一种可选的实施例中,腐蚀运算模块82,可以包括:

第一构造子模块,用于根据获取到第一正方体的三维模型,构造第一正方体的三维矩阵;

第一确定子模块,用于将第一正方体的三维矩阵,确定为第一类三维矩阵;

腐蚀运算子模块,用于采用第一类三维矩阵对三维矩阵进行腐蚀运算,得到腐蚀运算后的三维矩阵;

其中,第一正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

在一种可选的实施例中,第一构造子模块,具体用于:

将第一正方体的三维模型中属于第一正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将第一正方体的三维模型中属于第一正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出第一正方体的三维矩阵。

在一种可选的实施例中,膨胀运算模块83,可以包括:

第二构造子模块,用于根据获取到的第二正方体的三维模型,构造第二正方体的三维矩阵;

第二确定子模块,用于将第二正方体的三维矩阵,确定为第二类三维矩阵;

膨胀运算子模块,用于采用第二类三维矩阵对三维矩阵进行膨胀运算,得到膨胀运算后的三维矩阵;

其中,第二正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

在一种可选的实施例中,第二构造子模块,具体用于:

将第二正方体的三维模型中属于第二正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将第二正方体的三维模型中属于第二正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出第二正方体的三维矩阵。

在一种可选的实施例中,第一指定值为1,第二指定值为0。

在一种可选的实施例中,第一正方体的边长小于第二正方体的边长,第一正方体的边长与第二正方体的边长的差值大于等于第一预设阈值小于等于第二预设阈值。

在实际应用中,上述第一构造模块81,腐蚀运算模块82、膨胀运算模块83,分离模块84、第一构造子模块、第一确定子模块、腐蚀运算子模块、第二构造子模块、第二确定子模块和膨胀运算子模块可由位于装置上的处理器实现,具体为中央处理器(cpu,centralprocessingunit)、微处理器(mpu,microprocessorunit)、数字信号处理器(dsp,digitalsignalprocessing)或现场可编程门阵列(fpga,fieldprogrammablegatearray)等实现。

基于同一发明构思,本实施例提供一种终端,图9为本发明实施例中的一种可选的终端的结构示意图,如图9所示,该终端可以包括:处理器91、存储器92和通信总线93;其中,通信总线93用于实现处理器91和存储器92之间的连接通信;所述处理器91用于执行存储器中存储的所述模型的分离程序,以实现以下步骤:

根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵;

根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对三维矩阵进行运算,得到腐蚀运算后的三维矩阵;

根据形态学中的膨胀运算,采用构造出的第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵;

对所述三维模型的三维矩阵与膨胀运算后的三维矩阵之间作差,得到差值矩阵,以从差值矩阵对应的模型中分离出心耳模型。

在一种可选的实施例中,所述根据获取到的包含心脏模型的三维模型,构造三维模型的三维矩阵中,所述处理器91还用于执行所述模型的分离程序,以实现以下步骤:

将包含心脏模型的三维模型中属于心脏模型内部的点,所对应的矩阵元素设置为第一指定值;

将包含心脏模型的三维模型中属于心脏模型外部的点,所对应的矩阵元素设置为第二指定值,以构造出三维模型的三维矩阵。

在一种可选的实施例中,所述根据形态学中的腐蚀运算,采用构造出的第一类三维矩阵对所述三维矩阵进行运算,得到腐蚀运算后的三维矩阵中,所述处理器91还用于执行所述模型的分离程序,以实现以下步骤:

根据获取到第一正方体的三维模型,构造第一正方体的三维矩阵;

将第一正方体的三维矩阵,确定为第一类三维矩阵;

采用第一类三维矩阵对三维矩阵进行腐蚀运算,得到腐蚀运算后的三维矩阵;

其中,第一正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

在一种可选的实施例中,所述根据获取到的第一正方体的三维模型,构造所述第一正方体的三维矩阵中,所述处理器91还用于执行所述模型的分离程序,以实现以下步骤:

将第一正方体的三维模型中属于第一正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将第一正方体的三维模型中属于第一正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出第一正方体的三维矩阵。

在一种可选的实施例中,所述根据形态学中的膨胀运算,采用第二类三维矩阵对腐蚀运算后的三维矩阵进行运算,得到膨胀运算后的三维矩阵中,所述处理器91还用于执行所述模型的分离程序,以实现以下步骤:

根据获取到的第二正方体的三维模型,构造第二正方体的三维矩阵;

将第二正方体的三维矩阵,确定为第二类三维矩阵;

采用第二类三维矩阵对三维矩阵进行膨胀运算,得到膨胀运算后的三维矩阵;

其中,第二正方体模型的边长大于预设的心耳模型厚度值小于预设的心房模型厚度值。

在一种可选的实施例中,所述根据获取到的第二正方体的三维模型,构造所述第二正方体模型的三维矩阵中,所述处理器91还用于执行所述模型的分离程序,以实现以下步骤:

将第二正方体的三维模型中属于第二正方体的内切球内部的点,所对应的矩阵元素设置为第一指定值;

将第二正方体的三维模型中属于第二正方体的内切球外部的点,所对应的矩阵元素设置为第二指定值,以构造出第二正方体的三维矩阵。

在一种可选的实施例中,第一指定值为1,第二指定值为0。

在一种可选的实施例中,第一正方体的边长小于第二正方体的边长,第一正方体的边长与第二正方体的边长的差值大于等于第一预设阈值小于等于第二预设阈值。

本发明实施例提供一种计算机存储介质,图10为本发明实施例中的一种可选的计算机存储介质的结构示意图,如图10所示,所述计算机存储介质100中存储有计算机可执行指令,该计算机可执行指令配置为执行本发明其他实施例提供的模型的分离方法。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

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