对三维图像进行体绘制的方法及装置与流程

文档序号:22680678发布日期:2020-10-28 12:41阅读:274来源:国知局
对三维图像进行体绘制的方法及装置与流程

本发明涉及图像处理技术领域,具体涉及一种对三维图像进行体绘制的方法及装置。



背景技术:

图像的三维重建以及三维可视化可以帮助人们获取图像中的细节信息,指导人们做出相应的判断。体绘制作为一种三维可视化方法,可以充分挖掘图像中的各种信息,展示图像中的细节特征。但是现有的体绘制方法存在计算量大、绘制速度低、容易出现交互不畅的问题。



技术实现要素:

有鉴于此,本发明实施例提供了一种对三维图像进行体绘制的方法及装置,能够提高体绘制效率、保证图像显示的流畅度、提升交互感。

第一方面,本发明的实施例提供了一种对三维图像进行体绘制的方法,包括:确定位于三维图像的目标区域的边界上的多个点的深度信息;基于多个点的深度信息确定目标区域的多组起点和终点;基于多组起点和终点对目标区域进行体绘制。

在本发明某些实施例中,确定位于三维图像的目标区域的边界上的多个点的深度信息,包括:利用面绘制算法确定目标区域的边界上的多个体素单元中的三角面片;基于三角面片确定多个点的深度信息。

在本发明某些实施例中,基于三角面片确定多个点的深度信息,包括:通过深度剥离对目标区域进行切片,以获得多个具有深度值的表面;基于多个具有深度值的表面与三角面片的交点确定多个点的深度信息。

在本发明某些实施例中,面绘制算法包括移动立方体算法或移动四面体算法。

在本发明某些实施例中,该对三维图像进行体绘制的方法还包括:利用深度学习网络模型对三维图像进行分割,以确定目标区域。

在本发明某些实施例中,体绘制采用的算法包括光线投射算法,其中,基于多个点的深度信息确定目标区域的多组起点和终点,包括:当基于光线投射算法确定的光线穿过多个点中的第一点和第二点时,第一点和第二点中深度值较小的点为起点,第一点和第二点中深度值较大的点为终点。

在本发明某些实施例中,三维图像为肺部医学图像,目标区域为肺部器官。

第二方面,本发明的实施例提供了一种对三维图像进行体绘制的装置,包括:第一确定模块,用于确定位于三维图像的目标区域的边界上的多个点的深度信息;第二确定模块,用于基于多个点的深度信息确定目标区域的多组起点和终点;体绘制模块,用于基于多组起点和终点对目标区域进行体绘制。

第三方面,本发明的实施例提供了一种计算机可读存储介质,存储介质存储有计算机程序,计算机程序用于执行上述第一方面所述的对三维图像进行体绘制的方法。

第四方面,本发明的实施例提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器,其中,处理器用于执行上述第一方面所述的对三维图像进行体绘制的方法。

本发明实施例提供了一种对三维图像进行体绘制的方法及装置,通过确定目标区域的多组起点和终点,并在光线投射时,使得光线经过起点和终点,在起点和终点之间提取采样点,从而能够提高体绘制效率、保证图像显示的流畅度、提升交互感。

附图说明

图1所示为本发明一示例性实施例提供的对三维图像进行体绘制的方法的流程示意图。

图2所示为本发明另一示例性实施例提供的位于体素中的三角面片的示意图。

图3所示为本发明另一示例性实施例提供的对三维图像进行体绘制的方法的流程示意图。

图4所示为本发明一示例性实施例提供的对三维图像进行体绘制的装置的结构示意图。

图5所示为本发明一示例性实施例提供的用于对三维图像进行体绘制的电子设备的框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

由于本申请实施例涉及医学图像处理和神经网络方面的应用,为了便于理解,下面先对本申请实施例可能涉及的相关术语及神经网络等相关概念进行简单介绍。

(1)数字x线摄影:数字x线摄影术(digitalradiography,dr)是数字成像技术,是在数字荧光摄影(digitalfluorography,df)基础上发展的,它以影像增强管为信息载体,接受透过人体的x线信息,经视频摄像机采集后转换为数字信号,再行数字化。

(2)ct(computedtomography),即电子计算机断层扫描,它是利用精确准直的x线束、γ射线、超声波等,与灵敏度极高的探测器一同围绕人体的某一部位作一个接一个的断面扫描,可用于多种疾病的检查;根据所采用的射线不同可分为:x射线ct(x-ct)以及γ射线ct(γ-ct)等。胸部ct是通过x线计算机体层摄影(ct)对胸部进行检查的一种方法。

(3)深度学习:深度学习(deeplearning,dl)是机器学习的一种,通过建立具有阶层结构的人工神经网络(artificialneuralnetworks,anns),在计算系统中实现人工智能。

(4)卷积神经网络:卷积神经网络(convolutionalneuralnetworks,cnn)是一类包含卷积计算且具有深度结构的前馈神经网络(feedforwardneuralnetworks),是深度学习(deeplearning)的代表算法之一。卷积神经网络仿造生物的视知觉(visualperception)机制构建,可以进行监督学习和非监督学习,其隐含层内的卷积核参数共享和层间连接的稀疏性使得卷积神经网络能够以较小的计算量对格点化(grid-liketopology)特征,例如像素和音频进行学习、有稳定的效果且对数据没有额外的特征工程(featureengineering)要求。

(5)图像分割(segmentation):分割包括语义分割(semanticsegmentation)和实例分割(instancesegmentation),前者是对背景分离的拓展,要求分离开具有不同语义的图像部分,而后者是检测任务的拓展,要求描述出目标的轮廓(相比检测框更为精细)。分割是对图像的像素级描述,它赋予每个像素类别意义,适用于理解要求较高的场景,如无人驾驶中对道路和非道路的分割。

(6)光线投射(raycasting)方法是基于图像序列的直接体绘制算法。从图像的每一个像素,沿固定方向(通常是视线方向)发射一条光线,光线穿越整个图像序列,并在这个过程中,对图像序列进行采样获取颜色信息,同时依据光线吸收模型将颜色值进行累加,直至光线穿越整个图像序列,最后得到的颜色值就是渲染图像的颜色。

(7)移动立方体(marchingcube)是面绘制的经典算法,也是所有基于体素的面绘制算法的共同基础。移动四面体(mt)是mc算法的改进,引入了更多的三角面片,为了提高绘制速度,需要适当的方法处理几何网格。gpu的几何着色器为这个问题提供了良好的解决方案。基本原理:物体的表面实际上是一个闭合的灰度等值面,其灰度值称为阀值,在该等值面内部,所有体素的灰度值都大于这个阀值,在等值面外部,所有体素的灰度值都小于这个阀值。

(8)深度剥离是一种对深度值进行排序的技术。它的原理比较直观,标准的深度检测使场景中的z值最小的点输出到屏幕上,就是离我们最近的顶点。但还有离我们第二近的顶点,第三近的顶点存在。要想显示它们,可以用多遍渲染的方法。第一遍渲染时,按照正常方式处理,这样就得到了离我们最近的表面中的每个顶点的z值。在第二遍渲染时,把现在每个顶点的深度值和刚才的那个深度值进行比较,凡是小于等于第一遍得到的z值,把它们剥离,后面的过程依次类推即可。

医学图像的三维可视化可以展现医学图像中组织、器官或其他目标区域的三维形态,有助于医生获取待诊断部位的细节特征,进而根据细节特征对患者的情况做出判断。体绘制是医学图像三维可视化中常用的方法,该方法可以得到保留细节特征的、高质量的、具有三维效果的二维图像。

传统的体绘制方法一般是从光线固定的位置开始投射,例如,从屏幕像素出发,沿视线方向投射光线,然后对光线重新采样,最后根据数据场得到这些重采样点的色彩值并加以合成,从而得到发出该光线的屏幕像素的色彩值,进而得到整个屏幕的色彩值。

该体绘制方法虽然可以保留医学图像中的细节特征,但是存在数据存储量大、计算时间长、易出现绘制速度慢、交互不畅的问题。

图1所示为本发明一示例性实施例提供的对三维图像进行体绘制的方法的流程示意图。图1的方法可由计算设备,例如,服务器或终端,来执行。如图1所示,该对三维图像进行体绘制的方法包括如下内容。

110:确定位于三维图像的目标区域的边界上的多个点的深度信息。

具体地,该对三维图像进行体绘制的方法可以用于医学、科学研究或者其他需要对图像进行三维可视化的领域。本发明实施例对三维图像的类型不做具体限定,即本发明实施例的对三维图像进行体绘制的方法可以适用于多种类型的图像的三维可视化。

在一实施例中,三维图像是医学图像,该医学图像可以是通过计算机断层扫描摄影(computedtomography,ct)、计算机x线摄影(computedradiography,cr)、数字化x线摄影(digitalradiography,dr)、核磁共振或超声等技术获得的。该医学图像可以是人体不同部位的图像,如,肺部、脑部医学图像等。

下面为了描述的方便,以三维图像为肺部医学图像为例,对本发明实施例提供的对三维图像进行体绘制的方法进行详细的描述。

三维图像包括目标区域和背景区域。目标区域,也可以称为感兴趣(roi,regionofinteresting)区域,例如,针对肺部医学图像来说,roi区域可以代表肺部器官所在的区域;背景区域代表肺部器官周围的区域。

可选地,感兴趣区域也可以是人体的其它器官或组织的病变区域,例如,肺结节所在的区域,或者是用户需要观察的肺部其他区域。

三维图像可以看成是一个三维数据场,目标区域的边界上的多个点可以是位于目标区域表面上的点。点的深度信息可以是指该点在该三维数据场中的深度值。该深度值可以体现该点距离屏幕或观察者眼睛的距离,例如,距离屏幕越近的点,其深度值越小。

120:基于多个点的深度信息确定目标区域的多组起点和终点。

具体地,目标区域中的目标(如肺部)可以是个立体的结构。当观察者通过屏幕观察该目标区域时,目标区域存在靠近观察者的第一表面和远离观察者的第二表面。通过点的深度信息可以确定该点是位于第一表面上还是位于第二表面上。第一表面上的点可以作为起点,第二表面上的点可以作为终点。一个起点可以与一个终点对应,构成一组起点和终点。

130:基于多组起点和终点对目标区域进行体绘制。

具体地,在体绘制过程中,可以从视点的位置开始投射光线,投射光线第一次射入目标区域的点为起点,其决定了光线的方向,投射光线第二次穿过出目标区域的点为终点,显然,起点的深度值小于终点的深度值。这里,视点的位置是在模拟真实三维空间上设定的一个点。按照预设步长可以确定起点和终点之间的采样点,根据三维数据场可以获取多个采样点(可以包括起点和终点)分别对应的色彩值。对该多个采样点对应的色彩值进行合成(如积分),可以得到具有三维效果的二维图像。该二维图像可以形象地展现目标区域的细节特征。

由于体绘制的起点是在目标区域的表面上,而不是屏幕像素位置(光线与三维数据场边界的交点),这使得采样过程仅从目标区域的表面开始。而且,光线从起点投射到终点,在起点和终点连线上提取采样点,从而能够减小体绘制过程的计算量,缩短计算时间,进而提高体绘制效率、保证图像显示的流畅度、提升交互感。

本发明实施例提供了一种对三维图像进行体绘制的方法,通过确定目标区域的多组起点和终点,并在光线投射时,使得光线经过起点和终点,在起点和终点之间提取采样点,从而能够提高体绘制效率、保证图像显示的流畅度、提升交互感。

根据本发明一实施例,确定位于三维图像的目标区域的边界上的多个点的深度信息,包括:利用面绘制算法确定目标区域的边界上的多个体素单元中的三角面片;基于三角面片确定多个点的深度信息。

具体地,三维数据场可以看成是由多个体素构成的。每个体素可以是一个立方体,具有8个顶点。每个体素单元可以指一个体素。对于位于目标区域边界附近的一些体素,该体素上的一部分顶点可能位于目标区域内,另一部分顶点可能位于背景区域内,即该体素与目标区域的表面相交。

通过线性插值可以计算出目标区域的表面与该体素的交点,交点位于立方体(体素)的边上,将交点按照一定的方式连接可形成三角面片。该三角面片可以无限逼近目标区域的表面,或者说,该三角面片上有些点是位于该目标区域的表面上。

一个立方体中可以有多个三角面片,如图2所示,标粗的顶点是位于目标区域内,未标粗的顶点是位于背景区域内。

在一实施例中,面绘制算法包括移动立方体(marchingcubes,mc)算法。

在另一实施例中,面绘制算法包括移动四面体(marchingtetrahedron,mt)算法。在该实施例中,体素单元可以是指四面体。具体地,可以将体素划分成多个四面体,连接每个四面体与目标区域表面的交点,可构成三角面片。

基于三角面片可以确定该三角面片与目标区域的表面的交点,进而获得该交点的深度信息。

在一实施例,基于三角面片确定多个点的深度信息,包括:通过深度剥离对目标区域进行切片,以获得多个具有深度值的表面;基于多个具有深度值的表面与三角面片的交点确定多个点的深度信息。

具体地,深度剥离(depthpeeling)是一种对深度值进行排序的技术。利用深度剥离对目标区域进行切片,可以获得n个由近及远的曲面。第一个曲面可以是离屏幕最近的,第n个曲面可以是离屏幕最远的。通过深度剥离可以获取每个曲面中各个点的深度值。

每个曲面对应一个通道(pass),该pass对应两个深度缓冲和一个颜色缓冲,其中一个深度缓冲储存上一层曲面中各个点的深度值,另一个储存当前曲面中各个点的深度值。颜色缓冲储存当前曲面中的各个点的颜色值。

结合n个曲面与三角面片,曲面与三角面片的交点即是位于目标区域表面上的点,根据深度剥离过程得到的深度缓冲可以确定该交点的深度信息。

在本实施例中,利用面绘制可以对目标区域的边界进行精确的划分,将面绘制得到的三角面片与深度剥离得到的n个曲面结合,可以确定位于目标区域表面上的多个点的深度信息。

在一实施例中,可以将三角面片与靠近屏幕的前m个曲面的交点作为起点,与远离屏幕的n-m个曲面的交点作为终点,m大于等于1且小于m。每个起点对应一个终点。

根据本发明一实施例,该对三维图像进行体绘制的方法还包括:利用深度学习网络模型对三维图像进行分割,以确定目标区域。

具体地,深度学习网络模型可以是由卷积深网络、循环神经网络、全卷积神经网络等中的任一种构成的模型。即深度学习网络模型可以是任何可以实现目标区域的分割的模型,本发明实施例对其具体类型不做限制。

在一实施例中,深度学习网络模型为u-net网络模型。

可选地,在另一实施例中,三维图像中的目标区域可以是通过人工分割的方式获得的,或者是通过半自动分割的方式获得的。

根据本发明一实施例,体绘制采用的算法包括光线投射(raycasting)算法。

在120中,当基于光线投射算法确定的光线穿过多个点中的第一点和第二点时,第一点和第二点中深度值较小的点为起点,第一点和第二点中深度值较大的点为终点。

以目标区域为球体为例,当根据上述深度剥离算法得到球体表面的多个点后,利用光线投射算法进行体绘制时,从屏幕上每个像素出发的光线可以穿过球体前球面的一个点和后球面的一个点,前球面的点深度值小于后表球上的点的深度值,因此,前球面上的点为起点,后球面上的点为终点。

穿越一个起点和一个终点的光线为一条,例如,屏幕的大小是1080*1080,从视点位置会发出1080*1080条光线,针对每条光线都确定与曲面的交线。

图3所示为本发明另一示例性实施例提供的对三维图像进行体绘制的方法的流程示意图。图3是图1实施例的例子,相同之处不再赘述,此处着重描述不同之处。如图3所示,该方法包括如下内容。

310:利用深度学习网络模型对三维图像进行分割,以确定目标区域。

具体地,该深度学习网络模型可以是u-net网络模型,三维图像可以是医学图像,如ct图像。目标区域可以是肺部器官所在的区域。

320:利用面绘制算法确定目标区域的边界上的多个体素单元中的三角面片。

具体地,这里的体素单元可以是指一个立方体的体素。可以采用移动立方体(marchingcubes,mc)算法确定目标区域边界附近的体素中的三角面片。

330:通过深度剥离对目标区域进行切片,以获得多个具有深度值的表面。

利用深度剥离对目标区域进行切片,可以获得n个由近及远的曲面。第一个曲面可以是离屏幕最近的,第n个曲面可以是离屏幕最远的。通过深度剥离可以获取每个曲面中各个点的深度值。

每个曲面对应一个通道(pass),该pass对应两个深度缓冲和一个颜色缓冲,其中一个深度缓冲储存上一层曲面中各个点的深度值,另一个储存当前曲面中各个点的深度值。颜色缓冲储存当前曲面中的各个点的颜色值。

340:基于多个具有深度值的表面与三角面片的交点确定多个点的深度信息。

结合n个曲面与三角面片,曲面与三角面片的交点即是位于目标区域表面上的点,根据深度剥离过程得到的深度缓冲可以确定该交点的深度信息。

350:基于多个点的深度信息确定目标区域的多组起点和终点。

具体地,可以将三角面片与靠近屏幕的前m个曲面的交点(深度值较小的交点)作为起点,与远离屏幕的n-m个曲面的交点(即深度值较大的交点)作为终点,m大于等于1且小于m。每个起点对应一个终点。

360:基于多组起点和终点对目标区域进行体绘制。

具体地,从视点的位置开始投射光线,在起点和终点之间进行采样。按照预设步长可以确定起点和终点之间的采样点,根据三维数据场可以获取多个采样点(可以包括起点和终点)分别对应的色彩值。对该多个采样点对应的色彩值进行合成(如积分),可以得到具有三维效果的二维图像。该二维图像可以形象地展现目标区域的细节特征。

图4所示为本发明一示例性实施例提供的对三维图像进行体绘制的装置400的结构示意图。如图4所示,装置400包括:第一确定模块410、第二确定模块420以及体绘制模块430。

第一确定模块410用于确定位于三维图像的目标区域的边界上的多个点的深度信息;第二确定模块420用于基于多个点的深度信息确定目标区域的多组起点和终点;体绘制模块430用于基于多组起点和终点对目标区域进行体绘制。

本发明实施例提供了一种对三维图像进行体绘制的装置,通过确定目标区域的多组起点和终点,并在光线投射时,使得光线经过起点和终点,在起点和终点之间提取采样点,从而能够提高体绘制效率、保证图像显示的流畅度、提升交互感。

根据本发明一实施例,第一确定模块410用于利用面绘制算法确定目标区域的边界上的多个体素单元中的三角面片,并基于三角面片确定多个点的深度信息。

根据本发明一实施例,第一确定模块410用于通过深度剥离对目标区域进行切片,以获得多个具有深度值的表面,并基于多个具有深度值的表面与三角面片的交点确定多个点的深度信息。

根据本发明一实施例,面绘制算法包括移动立方体算法或移动四面体算法。

根据本发明一实施例,装置400还包括分割模块440,用于利用深度学习网络模型对三维图像进行分割,以确定目标区域。

根据本发明一实施例,体绘制采用的算法包括光线投射算法,其中,第二确定模块420用于当基于光线投射算法确定的光线穿过多个点中的第一点和第二点时,第一点和第二点中深度值较小的点为起点,第一点和第二点中深度值较大的点为终点。

根据本发明一实施例,三维图像为肺部医学图像,目标区域为肺部器官。

应当理解,上述实施例中的第一确定模块410、第二确定模块420、体绘制模块430以及分割模块440的操作和功能可以参考上述图1和图3实施例中提供的对三维图像进行体绘制的方法中的描述,为了避免重复,在此不再赘述。

图5所示为本发明一示例性实施例提供的用于对三维图像进行体绘制的电子设备500的框图。

参照图5,电子设备500包括处理组件510,其进一步包括一个或多个处理器,以及由存储器520所代表的存储器资源,用于存储可由处理组件510的执行的指令,例如应用程序。存储器520中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件510被配置为执行指令,以执行上述对三维图像进行体绘制的方法。

电子设备500还可以包括一个电源组件被配置为执行电子设备500的电源管理,一个有线或无线网络接口被配置为将电子设备500连接到网络,和一个输入输出(i/o)接口。可以基于存储在存储器520的操作系统操作电子设备500,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或类似。

一种非临时性计算机可读存储介质,当存储介质中的指令由上述电子设备500的处理器执行时,使得上述电子设备500能够执行一种对三维图像进行体绘制的方法,包括:确定位于三维图像的目标区域的边界上的多个点的深度信息;基于多个点的深度信息确定目标区域的多组起点和终点;基于多组起点和终点对目标区域进行体绘制。

上述所有可选技术方案,可采用任意结合形成本发明的可选实施例,在此不再一一赘述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序校验码的介质。

需要说明的是,在本发明的描述中,术语“第一”、“第二”、“第三”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换等,均应包含在本发明的保护范围之内。

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