3D图像分割的制作方法

文档序号:30795457发布日期:2022-07-16 15:43阅读:386来源:国知局
3D图像分割的制作方法
3d图像分割


背景技术:

1.图像分割涉及给元素分配标签,对它们是属于“前景”(待标记的元素)还是“背景”(要从标签中排除的元素)进行分类。一个示例会是在街道的图像上勾勒出所有汽车的轮廓。汽车方面将被标记为“前景”,并且街道、指示牌、房屋将被标记为“背景”。另一示例会是分割医学扫描图,诸如以在图像中勾勒出作为前景的器官或肿瘤的轮廓。
2.自动化图像分割的示例在us10,235,605中公开。这使用了图像中的点之间的“测地线距离(geodesic distance)”的概念。测地线距离是考虑了图像中的一个或多个参数(诸如像素强度)的距离度量。强度可以被想成类似地图上的高度:两点之间的最短距离可以是绕过一座山,而不是越过它。换句话说,距离度量由沿着路线的像素或点的强度(或其他这样的参数)来加权。3d图像中的像素或体素可以被传递到测地线距离算法中,以计算得到的前景分割。


技术实现要素:

3.根据本文公开的一个方面,提供了一种计算机实现的方法,包括:接收3d图像,该3d图像包括图像中描绘的对象,3d图像包括2d图像的有序集合;确定所述2d图像中的第一2d图像中的对象周围的轮廓;以及确定所述2d图像中的第二2d图像中的对象周围的轮廓。第二2d图像在所述有序集合中与第一图像不邻接,在所述有序集合内在第一2d图像与第二2d图像之间具有包括2d图像中的一个或多个2d图像的中间区域。在第一2d图像和第二2d图像中的每个2d图像中,轮廓的内部被分类为前景,并且轮廓的外部被分类为背景。该方法还包括执行3d测地线距离计算,以将在中间区域中的点分类为前景或背景。
4.3d测地线距离计算包括,对于中间区域中的多个点中的每个点:计算最短前景距离并且计算最短背景距离,最短前景距离是从该点到前景的最短3d测地线距离,最短背景距离是从该点到背景的最短3d测地线距离;以及如果最短前景距离比最短背景距离更短,则将该点分类为前景,但是如果最短背景距离比最短前景距离更短,则将该点分类为背景。
5.提供本发明内容是为了以简化形式介绍一些概念,这些概念将在下面的具体实施方式中进一步描述。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。所要求保护的主题也不限于解决本文提到的任何或所有缺点的实现。
附图说明
6.为帮助理解本公开的实施例以及示出如何实施这样的实施例,仅以示例方式参考附图,其中:
7.图1是用于分割图像的系统的示意框图,
8.图2是分割2d图像切片的方法的流程图,
9.图3a至图3e示出了用于分割2d图像切片的示例过程,
10.图4至图9示出了用于细化图像的分割的示例工具,
11.图10是分割3d图像的方法的流程图,
12.图11是2d图像切片之间的3d插值的示意图,
13.图12a-图12b示出了示例3d分割,
14.图13示意性示出了独立地分割不同的3d区域,以及
15.图14示出了用于在插值模式之间进行切换的用户界面选项。
具体实施方式
16.下面描述了用于进行测地线特征的2d和3d计算以分割3d图像的系统和方法,诸如以用于3d图像的用户驱动图像标记。3d图像是包括2d图像的有序集合的图像,在静态3d图像的情况下,3d图像包括穿过体(volume)的堆叠的2d图像“切片(slice)”。例如,3d标记的示例会是在3d医学图像扫描图中分割组织,例如在ct(计算机断层摄影)图像中勾勒出膀胱的轮廓。
17.所期望的是,在用户不必手动分割或手动细化堆叠中的每个单独2d图像切片的分割、但同时仍提供与用户预期大致一致的结果的情况下,允许图像的3d分割。为了实现这一点,下面利用了具有混合2d计算和3d计算的新颖方法的测地线距离算法。
18.在实施例中,该算法将仅计算“锁定的”2d切片之间的测地线距离。使用2d测地线距离计算来计算每个“锁定的”2d切片,然后仅在非锁定的2d切片上将3d计算作为一个3d计算来计算。由于大多数3d图像是在计算机屏幕上以2d进行标记,因此最好以避免在“屏幕外”的2d切片中不一致或非预期的行为的方式来实现这种算法。
19.作为可选的优化,如果用户修改2d切片中的一个切片,则该算法不需要对“前景”标签和“背景”标签的每次修改进行完整的3d计算。
20.在算法的操作中,用户可以从3d图像的任意2d切片开始。他或她首先在2d图像切片中标记前景区域或背景区域。一旦完成,测地线距离算法就被用于仅在用户已经与之交互的2d切片上分割所提议的前景区域。在此阶段,不对图像堆叠的其余部分执行3d计算。这导致在一个切片中用户预期的完整的2d分割。例如参见图12a。
21.用户接下来将转到与第一2d切片相邻或相距多个切片的另一2d切片。重复相同的用户交互,标记前景区域和/或背景区域以完成当前交互的切片的2d分割。这种分割的结果可以立即呈现给用户,并且应当同样与用户对2d分割的预期相匹配。
22.既然已经与两个2d切片进行了交互,就在被标记的切片之间执行自动化3d测地线距离计算。在实施例中,这是通过将交互的2d切片转换成仅前景和背景的笔刷图(brush map)来完成的。如果像素在2d分割中的任何2d分割内,则它被标记为前景,否则在交互的2d切片上的所有其他的像素被标记为背景。这为测地线距离算法提供了用户已经与之交互的区域的强信号。这种方法还有效地将交互的切片“锁定”在适当的位置。测地线距离算法试图在未被标记的体素上寻找分割。然而,由于所有的体素都已经被标记在2d切片上,因此所得到的分割将不会改变。
23.然后,用户可以具有至少两个另外的选项。一个是与交互的切片之上或之下的新的、未分割的2d切片进行交互。或者在另一选项中,用户可以选择对未交互的切片上的3d分割进行修改。如果用户选择与新的切片进行交互,则重复上述操作,并且在最接近的交互的2d切片和新的2d切片之间计算3d计算。例如参见图12b。
24.作为可选的优化,该算法不计算最顶部切片和最底部切片之间的完整的3d测地线距离计算,因为该计算将产生相同的结果。相反,它仅需要在最后交互的切片和最接近的“锁定的”2d切片之间重新计算。
25.如果对两个交互的2d切片之间的2d切片进行修改,则同样对交互的切片进行2d计算。然而,将在该切片与之上和之下的交互的切片之间进行两个3d计算。在多核计算机上运行的实施例中,两个3d计算可以并行运行以消除运行两个3d计算的成本。
26.在实施例中,可以利用测地线距离算法的这种用途来提供以下优点中的任何一个或多个或者类似的优点:i)用户不需要查看被“锁定的”的切片,因为算法保证它们不会改变,从而为用户节省时间;ii)基于先前用户交互的3d分割的预期结果;iii)通过首先仅以2d进行计算而导致极好的计算加速和效率(允许用户具有关于交互结果的即时反馈);iv)通过仅计算“锁定的”2d切片之间的3d分割,3d计算被加速并变得更有效。
27.图1给出了用于实现本文公开的技术的示例系统的框图。该系统包括图像捕获设备102、处理装置104、存储器106、用户输入设备108和显示设备110。图像捕获设备102、存储器106、用户输入设备108和显示设备110中的每一个可操作地耦合到处理装置104。
28.图像捕获设备102可以采用例如静态图像相机、摄像机或医学扫描仪(诸如x射线相机、磁共振成像(mri)扫描仪、计算机断层成像(ct)扫描仪、正电子发射断层成像(pet)扫描仪、超声波扫描仪等)的形式。它被配置为捕获3d图像,该3d图像可以是包括穿过体的堆叠的2d图像的静态3d图像,或者是包括一系列2d帧的视频图像。无论图像采取什么形式,图像捕获设备103都被布置为向处理装置104提供捕获的图像。该图像可以被存储在存储器106的区域,并且由处理装置104经由存储器106来访问。应当理解,图1中所示的布置是稍微示意性的。
29.处理装置104包括在一个或多个地理位置处的一个或多个管芯、ic(集成电路)封装和/或壳体中实现的一个或多个处理单元。存储器106包括在一个或多个地理位置处的一个或多个壳体中的一个或多个存储器介质中实现的一个或多个存储器单元。(多个)存储器单元可以与或可以不与(多个)处理单元合并在(多个)相同的外壳中。在需要时,分布存储和/或计算技术在本领域中是已知的。例如,多个处理单元和/或存储器单元可以经由诸如局域网(例如在诸如医院之类的建筑物内的局域网)和/或广域网之类的网络或诸如互联网之类的互联网络而联网在一起。替代地,处理装置104和/或存储器106可以全部集成到相同计算机终端的相同壳体中。
30.无论哪种方式,一个或多个处理单元中的每个处理单元都可以采取本领域已知的任何合适的形式,例如通用中央处理单元(cpu)或专用形式的协同处理器或加速器处理器(诸如图形处理单元(gpu)、数字信号处理器(dsp)等)。一个或多个处理单元中的每个处理单元都可以包括一个或多个核。一个或多个存储器单元中的每个存储器单元都可以采用本领域已知的任何合适的存储介质,例如:磁存储介质,诸如硬盘驱动器、磁带驱动器等;或者电子存储介质,诸如固态驱动器(ssd)、闪存或eeprom等;或者光存储介质,诸如光盘驱动器或基于玻璃或存储器晶体的存储装置等。在本文提到一些数据项被存储在存储器106或其区域中的情况下,这可以意味着被存储在构成存储器106的任何一个或多个存储器设备的任何部分中。当提到软件在处理装置上运行时,这意味着可以在构成处理装置104的任何一个或多个处理单元上运行。
31.用户输入设备108可以包括本领域已知的用于接收来自用户的输入的任何一个或多个合适的输入设备。在实施例中,它包括使用户能够在渲染在显示器110中的图像中进行绘制的至少一个定点设备,诸如鼠标、触控笔、触摸屏、触控板和/或轨迹球。替代地或附加地,用户输入设备108可以包括一个或多个其他输入设备,诸如键盘或语音控制部件。本文提到通过用户输入设备108接收来自用户的输入,这可以意味着通过构成用户输入设备108的任何一个或多个用户输入设备。(多个)用户输入设备可以与或可以不与处理装置104的(多个)处理单元合并在(多个)相同壳体中。
32.显示设备110可以采取任何合适的形式来输出图像,诸如led屏幕、lcd(液晶显示器)、等离子屏幕、电子墨水显示器或传统的阴极射线管。在实施例中,可选地,它可以采取触摸屏的形式,从而也形成用户输入设备108的至少一部分。触摸屏可以通过经由用户手指触摸和/或使用触控笔来实现输入。显示设备110可以与或可以不与处理装置104的(多个)处理单元合并在(多个)相同壳体中。
33.该系统还包括图像处理软件112,图像处理软件112包括渲染模块114、ui(用户界面)模块116、分割模块118和细化模块120。包括这些模块114、116、118、120中的每一个模块的图像处理软件112以存储在存储器106中并被布置成在处理装置104上运行的软件代码的形式来实现。代码模块114、116、118、120被配置成使得当运行时执行与以下各项分别相关的各种操作:在显示器110上渲染图像、通过一个或多个ui工具(诸如笔刷工具)使用户能够与图像交互、分割图像以及细化分割。
34.图2给出了确定2d图像(诸如穿过体的2d切片)中的对象周围的轮廓的方法的流程图。该方法开始于步骤202,经由图像捕获设备102捕获2d图像。捕获的图像被提供给处理装置104进行处理。这可以包括将捕获的图像存储在存储器106中,并且该处理可以包括处理来自存储器106的被存储的图像。在步骤204,在处理装置104上运行的渲染模块114通过显示设备110向用户渲染捕获的图像。在步骤206,分割模块118执行将图像分割成至少一个前景对象和背景区域的初始分割。分割包括确定对象周围的轮廓,稍后将对此进行更详细的讨论。对于本技术目的而言,“轮廓”意味着围绕对象的整个周界的外形(outline)。可以基于从用户接收到的用户输入以全自动性方式或以部分自动化方式执行分割,或者基于来自用户输入的用户输入以全手动的方式执行分割。任何这样的用户输入是经由ui模块116通过用户输入设备108来接收的。在步骤208,渲染模块114通过显示器110输出由分割模块118确定的轮廓。
35.在步骤210,ui模块116通过用户输入设备108从用户接收用户输入,以便细化由分割模块118初始确定的轮廓。根据本公开,这包括用户重新绘制一部分轮廓,例如使用笔刷工具来重新绘制,稍后将更详细地讨论。在步骤212,细化模块120基于经由ui模块116通过用户输入设备108接收到的用户输入来重新计算轮廓。在步骤214,渲染模块114通过显示器110输出由细化模块120确定的重新计算的轮廓。
36.图3a至图3e示出了可以在例如步骤206执行的用于分割图像的初始分割的方法。该方法由分割模块118基于使用由ui模块116提供的ui工具,通过用户输入设备114从用户接收到的用户输入来执行。应当理解,图3a至图3e中所示的特定图像仅仅是示例性的,而不是限制性的。
37.图3a示出了在没有进行分割情况下的捕获的图像,例如在步骤202被初始地捕获
并在步骤204被显示的图像。该图像包括(尚未分割的)对象302以及对象302外部的背景区域303。在这个示例中,图像是穿过骨盆的医学扫描图,并且对象302是膀胱。
38.图3b示出了可以由ui模块116提供的ui绘制工具305的示例。在这种情况下,工具305采取笔刷工具(本文称为“不确定性笔刷(uncertainty brush)”)的形式。笔刷工具是具有大于单个点或像素的有限(非零)宽度或面积的绘制工具,即非点状工具。
39.图3c示出了不确定性笔刷305的使用。用户使用不确定性笔刷工具305(例如在点击界面中使用鼠标,或者在触摸屏上使用手指或触控笔)来围绕对象302的周界涂刷不确定性区域306。笔刷工具305留下了以不确定性区域306叠加在每处被涂刷的图像上的形式的轨迹。
40.图3d示出了用户已经围绕对象302的整个周界进行涂刷后的情形。不确定性区域306因此形成围绕对象302的完整环形(loop),该环形具有有限的宽度(比线条更宽)。
41.不确定性区域306限定可以是前景或背景的区域。分割模块118自动地将由不确定性区域306形成的环形的外部的区域分类为已知的背景,将由不确定性区域306形成的环形的内部的区域分类为已知的前景,并且将不确定性区域306本身的区域分类为待确定(当前未知)。例如,这可以通过确定图像上方的像素掩模来实现,其中由不确定性区域306限定的环形的外部的每个像素被映射到指示背景303的第一值(例如1),由不确定性区域306限定的环形的内部的每个像素被映射到指示前景302的第二值(例如0),并且不确定性区域306本身中的每个像素被映射到指示不确定性的第三值。
42.图3e示出了所得到的分割,包括由分割模块118基于分类的前景区域302、背景区域303和不确定性区域306而自动地确定的轮廓(即外形)304。这可以基于测地线距离来确定。
43.具体而言,分割模块自动扫描不确定性区域305内的多个点中的每一个点(例如,掩模中如此标记的每个像素)。对于每个这样的点(例如每个像素),它计算到背景303的最短测地线距离以及到前景302的最短测地线距离。其中哪一个最短确定了所讨论的不确定性点(例如像素)是被重新分类为前景还是背景:如果到前景302的最短测地线距离最短,则它被从不确定被重新分类为前景,但是如果到背景303的最短测地线距离最短,则它从不确定被重新分类为背景。
44.从不确定性区域305中的点(例如像素)到背景303的最短测地线距离可以通过比较从该点到背景303(即已经被分类为已知的背景的区域)中的多个候选点(例如像素)的测地线距离来确定。为了效率起见,没有必要比较到背景303中的每个可能点的距离。因此,注意,对于本技术目的而言,到背景303的最短测地线距离意味着那些所比较的距离中最短的距离。
45.类似地,从不确定性区域305中的点(例如像素)到前景302的最短测地线距离可以通过比较从该点到前景302(即已经被分类为已知的前景的区域)中的多个候选点(例如像素)的测地线距离来确定。为了效率起见,没有必要比较到前景302中的每个可能点的距离。因此,注意,对于本技术目的而言,到前景302的最短测地线距离意味着所比较的路径中最短的路径。
46.例如,分割可以仅比较到不确定性区域306周围的有限候选区域中的前景像素和背景像素的距离,和/或可以仅比较到前景或背景中的每隔n个像素的距离。
47.测地线距离是一种距离度量,由此距离由图像中的每一个点或像素的一个或多个参数(诸如强度)沿着所讨论的点与前景或背景之间的路径来加权。测地线距离的概念本身在本领域中是已知的。
48.例如,给定在2d域ψ上定义的图像i、二进制掩模m(其中例如,给定在2d域ψ上定义的图像i、二进制掩模m(其中)和前景区域或背景区域ω(其中),每个所比较的像素x与ω的无符号测地线距离被定义为:
49.其中
ꢀꢀꢀ
(1)
[0050][0051]
其中x’是不同于x的像素或点;p
a,b
是点a与b之间所有考虑的路径的集合;并且指示一个这样的路径,其中s∈[0,1]。标签a和b只是用于定义d(x,x’)的不同参数名称。使用两种不同的标注是因为上面的等式具有两个独立的函数。符号代表梯度,并且||...||是量值。空间导数γ

(s)是单位向量u=γ

(s)/||γ

(s)||与路径的方向相切。因子γ对图像梯度对空间距离的贡献进行加权。当γ=0时,等式(1)中的距离d减小到传统的欧几里德路径长度。
[0052]
i是代表路径在每一个点处的成本或权重的参数,其类似于地图上的高度。即,测地线距离所考虑的属性或性质使其区别于单纯的线性(欧几里德)距离。在实施例中,i可以是例如消色差像素强度(例如亮度)。然而,它可以是另一属性,诸如色度值;或者红色、绿色或蓝色(rgb)通道的强度。作为另一可能性,i可以是mri扫描、ct扫描等的某个其他技术参数,指示除了图像本身中可见的属性之外的属性(例如与所扫描的物质的成分相关的属性)。在一些实施例中,i可以是考虑一个以上的上述参数的复合度量。(多个)参数或度量是取决于期望应用的设计选择的问题。
[0053]
换句话说,测地线距离可以被定义为:
[0054][0055]
其中v是图像中的像素或点,并且ρ是该方向的间隔比例。关于ρ,其成因在于,如果
图像体素(例如在一些医学图像中)不是正方形的,那么给定方向的间隔比例被合并到距离计算中以考虑这一点。例如,这可以被实现如下。
[0056]
private void calculatespacingscale《t》(volume3d《t》volume)
[0057][0058]
为避免疑问,属性i当然取自图像“下方”,或者不具有不确定性区域306的轨迹的可视ui覆盖,例如在图3c和图3d中向用户示出的。这只是向用户示出不确定性区域306正在何处被涂绘的图形ui元素。不确定性区域306的图形ui表示不形成为了确定分割而处理的像素值的一部分。在该计算中仅使用被映射到不确定性区域的底层像素掩模或分类。
[0059]
一旦分割模块118已经将不确定性区域305中的所有经处理的点(例如每个像素)重新分类为前景或背景,则因此可以确定前景对象302周围的轮廓(外形)304。如果每个像素被重新分类,则轮廓403可以简单地是前景对象302的最外像素或背景区域303的最里像素,或者潜在地是前景区域302与背景区域303之间的拟合(轮廓304可以被定义为具有子像素精度,其中每个像素是前景还是背景取决于该像素的大部分区域是落入前景的内部还是外部)。另一方面,如果仅针对代表不确定性区域305中的像素子集的点执行测地线距离比较,那么轮廓304可以被确定为经处理的点之间的最佳拟合。
[0060]
参考图3a至图3e描述的方法因此提供了一种用于分割图像的半自动化过程。注意,这仅仅是分割图像的方法的一个示例。在其他实施例中,可以使用对象识别算法以全自动化方式执行用于确定轮廓304的初始分割,例如如在us10,235,605中公开的。在其他实施例中,可以以全手动的方式执行初始分割,例如通过用户使用手动绘制线条工具(点状工具,而不是具有有限宽度或面积的笔刷工具)来执行。
[0061]
无论通过何种手段来执行分割,初始轮廓304都可能不会恰好如期望那样。自动化过程或半自动化过程的自动化部分可能不能正常工作,或者用户可能在全手动方法或半自动化过程的手动部分中犯手动操作的错误。
[0062]
有多种可能的ui工具用于(例如在步骤210-214)细化图像周围的轮廓。细化模块120可以基于使用由ui模块116提供的ui工具通过用户输入设备108接收的输入来实现细化。
[0063]
图4示出了一个示例工具。这里,轮廓304采取多边形的形式,并且在多边形的顶点处围绕轮廓304渲染节点401的集合。然后,用户可以使用鼠标指针工具402点击并拖动节点401,以便拖入或拖出多边形的对应顶点。
[0064]
图5示出了另一可能的工具。这里,用户被提供有推动(pushing)工具501。用户使用诸如鼠标或触控笔之类的用户输入设备将推动工具放置在对象或前景内部(在轮廓403内),然后使用工具501在轮廓上向外推动。轮廓304随着用户的推动动作向外延伸。
[0065]
图6示出了另一可能的工具。这里,用户使用涂绘笔刷工具601来重新涂绘整个前景区域。然后,新的前景302简单地变成用户所涂绘的任何区域,并且新的轮廓304简单地是用户新涂绘的区域周围的轮廓。
[0066]
图7示出了另一可能的细化工具的操作。为了说明起见,考虑这样一种场景,在该场景中,由分割模块118执行的初始分割206产生了图7所示的错误轮廓304,而不是图3e所示的正确轮廓。所公开的工具使用户能够通过在图像上绘制从而定义以至少部分手动的方式定义的用户绘制的线条,来替换一部分初始轮廓,从而校正这一点,例如,以获得如图3e所示的轮廓。用户在起点701与终点702之间进行绘制,从而定义线条来替换一段现有轮廓304。
[0067]
在实施例中,用户通过使用笔刷工具涂刷起点701与终点702之间的新的不确定性区域306’来完成这一点。有利的是,在某些实施例中,这可以是用于执行初始分割206的相同的笔刷工具305。因此,该方法提供了一种高效且直观的方式来校正分割。然后,该过程恰好如先前关于图3a-图3e所描述的那样工作,但是仅处理仅对象302的部分周界周围的新涂刷上的不确定性区域306’内的点(例如每个像素),而不是如图3d所示的整个周界内的点。一旦用户已经在该区域306’上进行了涂刷,则新的不确定性区域306’内的点(例如每个像素)就被重新分类为不确定。不在这个新的不确定性区域306’中的点将它们的初始分类保留为来自初始分割步骤206的已知的前景或背景。在实施例中,这可以包括为图像定义新的像素掩模,其中新的不确定性区域306’中的像素用表示不确定性的第三值进行重新标记,但是其他像素仍然用它们先前的表示已知的背景和前景的第一值或第二值(例如0和1)进行标记。因此,注意,先前(出于初始分割206的目的)被分类为“已知的”前景或背景的点或像素现在可能被重新分类为不确定。
[0068]
然后,细化模块120可以同样使用相同或相似的测地线距离算法将在新的不确定性区域306’中所考虑的点或像素重新分类为前景或背景。即,它扫描所考虑的每一个点(例如每个像素),并且对于每一个点,确定到已知的前景302的最短测地线距离(根据当前掩模或分类)以及到已知的背景302的最短测地线距离(同样根据当前掩模或分类)。如果到前景的最短测地线距离302比到背景303的最短测地线距离更短,则所讨论的点/像素被分类为前景;而如果反过来,则所讨论的点/像素被分类为背景。
[0069]
在实践中,细化模块120可以包括与分割模块118相同的一些代码,并且应当理解,图1所示的图是稍微示意性的。
[0070]
通过图示方式考虑图7的示例,注意“用户绘制的线条”不一定意味着线条是完全手动绘制的。相反,在实施例中,它是以部分手动的方式绘制的,其中用户使用具有非点状的宽度或面积的笔刷来绘制更宽的区域306’,该区域306’包含将要确定新线条的区域,然后在由用户绘制的区域306’内,新线条由细化模块120自动确定。
[0071]
尽管如此,在其他实施例中,不排除可以使用点状绘制工具(与笔刷相对)来完全手动绘制替换一部分初始轮廓304的新线条。
[0072]
在实施例中,用户从现有轮廓304的边缘开始。然后,用户将会“涂刷”到图像上的任意点。然而,终点702不需要是现有轮廓304上的点。相反,可以自动计算从用户交互的终点702到轮廓上用户一直与之交互的最接近的点的线条。例如,这可以通过计算从用户交互终点到轮廓上的每一个点的距离来计算,例如与测地线距离相对的、基于毕达哥拉斯定理(x2+y2=z2)的直线距离。图8展示了不在轮廓上但连接到最接近的点的终点。
[0073]
由于计算轮廓上到终点最接近的点的计算成本较高,因此实施例可选地可以采用一种或多种高效方法来提高性能。其中第一种是不计算结果的平方根,而是按x2+y2对距离进行排序。不管平方根是多少,最接近的点将是最小的结果。第二种可能的高效方法是不计算轮廓上的每个点到终点的距离,而是基于轮廓的尺寸跳过多个点。这将导致最接近的点的近似,但是轮廓尺寸越大,该近似值对结果的影响将会越小。
[0074]
在上述内容的变型中,替代地,从用户的终点到轮廓304的距离可以基于测地线距离来确定。在这种情况下,将用户的终点连接到初始轮廓304的线条将是从用户的终点到初始轮廓的最短测地线距离。
[0075]
在实施例中,用户被约束为在由分割模块118在步骤206确定的初始轮廓304上的点701处开始用户绘制的线条。替代地,可以使用如上所述的类似技术来允许用户的起点701以及终点702从距离初始轮廓304开始。在其他实施例中,可以允许用户的起点从距离初始轮廓开始,但是终点可以被约束为在初始轮廓上结束,或者用户可以被约束为在初始轮廓上开始和结束。
[0076]
细化模块120确定替换由分割模块118在初始分割步骤206中确定的初始轮廓304的一部分(但非全部)的细化线条。如所描述的,细化的替换线条可以仅由用户绘制的线条构成,或者它可以由用户绘制的线条以及在用户的线条的起点和/或终点与初始轮廓304之间连接的一条或多条自动生成的连接线来构成。
[0077]
细化模块120还可以将图像的哪个区域重新分类为前景对象302,并且将哪个区域重新分类为背景图像303。
[0078]
注意,图7所示的场景实际上有两种可能的解决方案:原则上,用户可能有意将环形或叶(lobe)保持在左上方,并且将该较小的区域分类为前景;排除膀胱周围的较大线条,并且将较大的膀胱区域分类为背景。然而,当然在实践中,用户想要保持膀胱周围的较大环形作为轮廓304,并且将环形内的区域(膀胱302)分类为前景;排除右上方较小的错误环形,并且将该区域与图像的边界区域的其余部分一起分类为背景303。有各种方式可以配置细化模块120来处理这种潜在的模糊性。
[0079]
在实施例中,细化模块120可以简单地被配置为确定两种解决方案,并且将两种解决方案提供给用户。作为其变型,细化模块120可以经由ui模块116向用户提供用于选择接受两种解决方案中的哪一个的选项。在其他实施例中,细化模块120可以被配置为在两种可能的解决方案之间自动选择。在这样的实施例中,如果自动选择的解决方案不是用户想要的,则细化模块120可以经由ui模块116向用户提供用于切换到另一解决方案的选项。
[0080]
使细化模块进行自动选择120的一种可能方式是计算和比较两种解决方案的新轮廓304内的前景面积,并且选择具有较大前景面积的解决方案作为预期解决方案(或等同
地,如果仅有一个对象被分割,则计算和比较两种解决方案的背景区域面积,并且选择具有较小背景面积的解决方案)。作为进行选择的另一示例,细化模块120可以基于当前和/或过去的图像中的用户交互的历史来选择可能想要哪个解决方案。例如,在以至少部分手动的方式执行初始分割206的情况下,细化模块120可以选择与用户在相同图像中初始绘制的轮廓304或笔刷笔划(brushstroke)最接近的区域作为前景。或者它可以基于手动图像分割的历史和/或在先前图像中进行的细化(例如使用诸如神经网络之类的机器学习算法)来进行选择。也可以使用上述方法的组合。
[0081]
下文描述了基于面积在两种可能的解决方案之间进行自动选择的示例算法。在轮廓上的起点和终点已经被计算出之后,接下来该算法计算用户试图用笔刷笔划来实现什么。如所讨论的,这种类型的用户交互对于计算机算法可能是模糊的,并且因此在这样的实施例中,该算法必须通过计算两个可能轮廓集合来计算哪个轮廓形状(即外形)是预期的。第一轮廓从笔刷交互的起点或终点开始。然后,该算法以顺时针方向在轮廓的边缘游走到笔刷交互的起点或终点。另一可能的轮廓从相同的点开始,但是以逆时针方向在轮廓的边缘游走,直到它到达相同的终点。
[0082]
一旦创建了两个轮廓,该算法就通过对每个闭合轮廓内的像素或体素的数量进行计数来计算轮廓内每个所计算的区域的大小。所得到的分割被选择为这两个区域中的最大区域。这适用于许多不同的用例,有些用例甚至在用户想要进行特定行为时也非常模糊(诸如在现有轮廓的中间绘制线条,如图9所示)。
[0083]
当起点和终点相同(或在x个像素内或彼此相同)时,在该算法中还引入了次要边缘情况。在这种情况下,用户已经创建了新的闭合轮廓(外形),并且因此该算法假设这是预期的形状。在这种情况下,该算法首先计算所有交互点是否完全存在于现有分割中。如果为真,则现有的分割被新的交互的结果整体替换。如果一些或所有点存在于现有轮廓的外部,则该算法假定用户正在添加到现有轮廓。因此,两个轮廓被合并在一起,并且新的轮廓是从合并结果的靠外区域中被提取的。
[0084]
不管可以提供用于检查或细化2d图像的任何特定工具如何,都可以期望提供用于分割3d图像的机制。
[0085]
图10示出了根据本文公开的实施例的分割3d图像的方法。
[0086]
该方法开始于步骤1002,经由图像捕获设备102捕获3d图像。3d图像包括2d图像的有序集合。在实施例中,3d图像采取静态3d图像的形式,其中该集合(“堆叠”)中的每个2d图像是穿过体的不同平行切片。在替代用例中,3d图像可以采取2d视频(二维空间)的形式,其中每个2d图像是不同的时域帧(第三维度是时间)。作为说明,下面将根据形成静态3d图像的堆叠的2d图像切片来举例说明,但是应当理解,这不是限制性的。在实施例中,步骤1004可以包括关于图2讨论的步骤202的多个实例。
[0087]
将3d捕获的图像中的每个2d切片提供给处理装置104进行处理。这可以包括将捕获的图像切片存储在存储器106中,并且该处理可以包括处理来自存储器106的存储的图像切片。
[0088]
在步骤1004,分割模块118对堆叠中的2d图像切片中的第一图像切片执行初始分割,以将其分割成至少一个前景对象和背景区域。渲染模块114通过显示设备110将第一图像切片连同轮廓一起渲染给用户。在实施例中,步骤1004可以包括针对第一图像切片执行
的来自图2的步骤204至208的第一实例和/或图3a-图3e的分割。
[0089]
在步骤1006,用户检查在步骤1004确定的轮廓,并且决定是否批准它。如果轮廓对于用户来说已经是可接受的,则用户可以经由ui模块116来简单地选择批准它,而无需修改。替代地,在该步骤,用户可以选择以至少部分手动的方式来细化轮廓。这可以通过先前关于图4至图9讨论的任何手段来进行。一旦细化到令用户满意,用户然后经由ui模块116和用户输入设备108来选择批准经细化的轮廓。在实施例中,步骤1006可以包括针对第一2d切片执行的来自图2中步骤210-214的第一实例。
[0090]
一旦用户批准切片中的轮廓,该切片(包括其轮廓)就可以在本文中被描述为“锁住的(locked)”或“锁定的(locked in)”。在实施例中,这意味着切片中可用于处理的所有点(例如所有像素)现在被分类为已知的前景或已知的背景(没有一个被分类为不确定)。
[0091]
在步骤1008,分割模块118对堆叠中的2d图像切片中的第二2d图像切片执行初始分割,以将其分割成至少一个前景对象和背景区域。渲染模块114通过显示设备110将第一图像切片连同轮廓一起渲染给用户。在实施例中,步骤1004可以包括针对第一图像切片执行的来自图2的步骤204至208的第二实例和/或图3a-图3e的分割。第二图像切片在堆叠中与第一图像切片不邻接,即,按照切片在堆叠中出现的次序,在第一切片与第二切片之间有一个或多个中间切片。
[0092]
在步骤1010,用户检查在步骤1006确定的轮廓,并且决定是否批准它。如果第二切片中的轮廓对于用户来说已经是可接受的,则用户可以经由ui模块116来简单地选择批准它,而无需修改。替代地,在该步骤,用户可以选择以至少部分手动的方式细化第二切片的轮廓。这可以通过前面关于图4至图9讨论的任何手段来进行。一旦细化到用户满意,用户然后就经由ui模块116和用户输入设备108来选择批准第二切片中的经细化的轮廓。在实施例中,步骤1006可以包括针对第一2d切片执行的来自图2的步骤210-214的第二实例。
[0093]
在实施例中,该方法还可以包括类似于1004-1006或1008-1010的步骤,针对第三图像切片或更多图像切片(但不是堆叠中的所有切片)执行必要的修正。
[0094]
在步骤1012,分割模块在第一3d图像切片与第二3d图像切片之间执行3d测地线插值,以便将其间的体分割成前景和背景,其中对象302出现的3d区域被分类为前景。这将参考图11进行更详细的讨论。这可以包括确定对象周围的3d轮廓。在实施例中,这也可以在第二切片和第三切片之间施加必要的修正等。
[0095]
在步骤1014,可选地可以通过显示设备110向用户渲染叠加在3d图像上的所确定的3d轮廓。例如参见图12b。
[0096]
在步骤1016,该方法可以包括将分割用于实践应用。这可以包括在图像或现实世界中,将过程(process)对准被分割的前景对象上,或者将过程远离被分割的前景对象。例如,如果图像是医学扫描图,并且对象是肿瘤,则步骤1016可以包括将放射治疗疗法对准受试者体内的肿瘤上。或者如果对象是器官,则步骤1016可以包括将放射治疗疗法远离该器官。
[0097]
图11示出了在步骤1012执行的3d测地线插值。图11示出了第一2d图像切片sa和第二2d图像切片sb,其中在堆叠中,在它们之间有一个或多个中间切片sab。可能在如前所述的细化之后,第一切片sa和第二切片sb各自被锁定,即被用户批准。中间切片sab形成未被锁定的一个或多个切片的中间体或区域,并且其中每个中间切片的至少一部分在3d测地线
插值过程开始时被分类为不确定。图11还示出了在这个阶段已经分别在第一2d切片和第二2d切片中的对象302周围确定的轮廓ca、cb。
[0098]
作为可选的优化,在3g测地线插值之前,一个或多个中间切片sab的一些区域可以被预分类为已知的前景,和/或一个或多个中间切片sab的一些区域可以被预分类为已知的背景。例如,中间切片中在图像的平面中位于第一切片和第二切片中的对象302周围的轮廓ca、cb内部的任何区域可以被预分类为已知的前景。这可以被想成由在第一图像切片和第二图像切片中被分类为前景的x-y像素坐标(图像平面中的坐标)所定义的列。和/或类似地,中间切片中在图像的平面中位于第一切片和第二切片中的轮廓ca、cb的外部的任何区域可以被预分类为已知的前景。所有其他区域被分类为不确定。这种优化有利地减少了3d测地线插值算法的搜索空间,从而降低了计算复杂度。替代地,可以简单地从被分类为不确定的每个中间切片sab的整个区域开始,但是这将需要更多的计算资源来搜索。
[0099]
无论哪种方式,为了执行3d测地线插值,该算法以与先前关于单独的2d切片讨论的类似的方式进行操作,但是现在是三维的而不是二维的。也就是说,它处理在搜索开始时最初被分类为不确定的多个点pi中的每一个点。对于每一个这样的点pi,它确定从该点到当前已知的前景的最短测地线距离,以及从该点到当前已知的背景的最短测地线距离;并且如果最短前景距离比最短背景距离更短,则将点pi分类为前景,但是如果最短背景距离比最短前景距离更短,则将点pi分类为背景。然而,最短距离现在可以是从pi到第一图像切片与第二图像切片之间的其他图像切片中的一个图像切片中(而不是像纯2d情况那样在相同图像切片中)的点的距离。因此,这在本文中被称为3d测地线距离,即不被约束为相同2d图像切片内的路径。
[0100]
测地线距离同样是考虑了沿路径的一个或多个图像属性(例如像素强度)的“成本”或“权重”的距离。该公式与2d情况相同,但现在以3d坐标而不是2d坐标。同样,测地线距离是通过一个或多个参数(诸如像素强度)沿两点之间的路径加权的距离。与地图上的高度进行类比在3d情况下变得更难以考虑,因为空间坐标(与参数相对)现在已经是3d的了。相反,人们可以将测地线距离想成穿过体的阻力最小的路径,其中体的不同区域具有比其他区域更高或更低的行进阻力。
[0101]
在实施例中,点pi可以是在中间区域中被分类为不确定的每个体素(即中间切片中的每个中间切片中的每个不确定像素)。替代地,点pi可以只是中间区域内的较少的选择点。
[0102]
无论哪种方式,一旦待处理的所有点pi被分类为前景或背景,那么就可以生成3d轮廓。如果每个体素都被处理,且因此现在被分类为已知背景或前景,则轮廓可以简单地是前景对象的最外体素或背景区域的最里体素,或者潜在地是前景区域和背景区域之间的拟合(轮廓可以被定义具有子体素精度)。另一方面,如果仅针对表示体素子集的选定点执行测地线距离比较,则轮廓可以被确定为经处理的点之间的最佳拟合。
[0103]
图12a和图12b示出了一个示例,其中该过程用于确定医学扫描图中的器官(在该情况下为人体膀胱)周围的3d体。图12a示出了第一切片,并且图12b示出了第二切片和所得到的2d轮廓1200。
[0104]
图13示出了根据本文公开的实施例可以实现的另一可选优化。这里,至少有三个切片具有在2d切片内初始确定的轮廓:第一切片sa、第二切片sb和第三切片sc(其中sb在sa
与sc之间)。如同第一切片sa与第二切片sb之间的一个或多个中间切片sab一样,在第二切片sb与第三切片sc之间还有另外一个或多个中间切片sbc。第一切片、第二切片和第三切片中的每一个切片都被锁定,也就是说,这些切片中的每一个切片内的每个区域都被分类为前景或背景。在实施例中,3d测地线插值计算可以包括在第一切片sa与第二切片sb之间执行的第一测地线插值;以及独立地,独立于第一3d测地线插值的、在第二切片sb与第三切片sc之间的第二3d测地线插值。这意味着,在第一3d测地线距离计算中,当计算pi与前景和背景之间的最短测地线距离时,从pi起的路径所终止的可能的前景点和背景点被约束为第一图像切片与第二图像切片之间的点(包括第一图像切片和第二图像切片)(因此远至第一切片或第二切片,但不超过第一切片或第二切片)。类似地,在第二3d测地线距离计算中,当计算pi与前景和背景之间的最短测地线距离时,从pi起的路径所终止的可能的前景点和背景点被约束为第二图像切片与第三图像切片之间的点(包括第二图像切片和第三图像切片)。
[0105]
在一些这样的实施例中,分割模块118可以被配置为自动选择在其之间执行独立的3d测地线插值操作的切片对。为此,优选地,它将自动选择按堆叠的次序彼此最接近的锁定的切片对。换句话说,每个锁定的切片对都由一个锁定的切片和沿堆叠下一个最接近的锁定的切片构成。因此参考图13,从sa开始,下一个最接近的锁定的切片是sb,因此sa和sb被自动选择为一对。然后,从sb起,在堆叠中沿相同方向的下一个最接近的切片是sc,因此sb和sc被选择为另一对,依此类推。换句话说,在那些被锁定的切片当中,锁定的切片对是在堆叠的次序内相邻(邻近)的锁定的切片(但是在堆叠中仍然彼此不邻接,即在每个给定的锁定的切片对的两个锁定的切片之间,有一个或多个非锁定的切片)。
[0106]
如果用户随后修改其中一个切片中的轮廓,那么将仅重新计算受该修改影响的一个或两个独立的3d区域。因此假设用户随后修改第三切片sc(其先前已经被“锁定”)。该算法将通过仅在第二切片sb与第三切片sc之间执行3d测地线距离计算来重新计算这两个切片之间的3d分割;但是它将不会重新计算第一切片与第二切片之间的3d分割。如果在第三切片之后有第四切片,则它将在第三切片与第四切片之间重新计算。但是如果在第四切片之后有第五切片,则它将不会在第四切片与第五切片之间重新计算。
[0107]
在图14中以示例方式示出的又一可选特征中,可以为用户提供在线性3d插值和测地线3d插值之间进行切换的选项。ui模块116例如经由显示器110向用户呈现可以由用户选择的多个ui选项(ui控件)。这些可以包括用于选择线性3d插值的ui控件1402和用于选择测地线3d插值(“智能”插值)的另一ui控件1403。在一些情况下,控件还可以包括用于关闭3d插值的控件1401。这种ui控件1401、1402和/或1403可以例如采取可点击或可触摸的屏幕上按钮的形式,或者采取下拉菜单中的选项的形式,等等。
[0108]
如果用户选择(致动)测地线3d插值控件1403,则ui模块116控制分割模块118切换到测地线3d插值模式,在该模式下,其(例如根据上述实施例)使用3d测地线插值执行切片之间的插值。另一方面,如果用户选择(致动)线性3d插值控件1402,则ui模块116控制分割模块118切换到线性3d插值模式,在该模式下,其以线性方式执行切片之间的插值。这可以是在与测地线模式相同的一对或多对切片之间。在一些这样的实施例中,3d线性插值控件1402和3d测地线插值控件1403可以允许用户在针对相同的锁定的切片集合(相同的一对或多对)(例如sa&sb或者sa&sb和sb&sc)以两种不同模式执行插值之间进行切换。渲染模块114可以被配置为响应于用户选择两个不同的相应控件1402、1403,在以两种不同模式针对
相同的切片集合经由显示器110在3d图像上渲染3d轮廓之间进行切换。以这种方式,用户可以比较两种不同类型的插值的结果,并且(例如,在医师检查身体扫描等的情况下,基于他/她的专业经验)选择最匹配他/她的期望的一种。
[0109]
注意,即使在线性3d插值模式下,在实施例中,仍然可以使用2d测地线技术来确定每个单独的锁定切片内的2d轮廓,例如,如关于图3a-图3d和/或图7所讨论的。
[0110]
应当理解,上述实施例仅通过示例方式进行描述。
[0111]
更一般地,根据本文公开的一个方面,提供了一种计算机实现的方法,包括:接收3d图像,3d图像包括图像中描绘的对象,该3d图像包括2d图像的有序集合;确定所述2d图像中的第一2d图像中的对象周围的轮廓;以及确定所述2d图像中的第二2d图像中的对象周围的轮廓,第二2d图像在所述有序集合中与第一2d图像不邻接,在所述有序集合内在第一2d图像与第二2d图像之间具有包括所述2d图像中的一个或多个中间2d图像的中间区域。在第一2d图像和第二2d图像中的每个图像中,轮廓的内部被分类为前景,并且轮廓的外部被分类为背景。该方法还包括执行3d测地线距离计算,包括对于中间区域中的多个点中的每个点:计算最短前景距离以及计算最短背景距离,最短前景距离是从该点到前景的最短3d测地线距离,最短背景距离是从该点到背景的最短3d测地线距离;以及如果最短前景距离比最短背景距离更短,则将该点分类为前景,但是如果最短背景距离比最短前景距离更短,则将该点分类为背景。
[0112]
在实施例中,该方法可以包括:在对中间区域中的所述多个点进行分类后,通过确定被分类为前景的点与被分类为背景的点之间的轮廓,确定所述中间区域中的对象周围的3d轮廓。
[0113]
在实施例中,确定第一2d图像和第二2d图像中的一者或两者中的轮廓可以包括至少部分地自动确定轮廓。
[0114]
在一些这样的实施例中,确定第一2d图像和第二2d图像中的一者或两者中的轮廓可以包括通过以下操作以部分自动的方式确定轮廓:
[0115]-接收用户输入,该用户输入限定2d图像中的对象的周界周围的不确定性区域,其中不确定性区域的内部被分类为前景,并且不确定性区域的外部被分类为背景;以及
[0116]-对于2d图像中的多个点中的每个点,确定2d图像内从该点到前景的最短2d测地线距离,确定2d图像内从该点到背景的最短2d测地线距离,并且如果到前景的最短2d测地线距离比到背景的最短2d测地线距离更短,则将该点分类为前景,但是如果到背景的最短2d测地线距离比到背景的最短2d测地线距离更短,则将该点分类为背景。
[0117]
在实施例中,确定第一2d图像中的一者或两者中的轮廓可以包括:用户经由ui工具手动细化轮廓。
[0118]
在实施例中,确定第一2d图像和第二2d图像中的一者或两者中的轮廓可以包括:向用户显示轮廓,并且接收用户对锁定轮廓的批准。
[0119]
在一些这样的实施例中,该方法可以包括:接收用户对锁定所述集合中多于两个的2d图像周围的轮廓的批准,以及自动选择锁定的2d图像对,在锁定的2d图像对之间执行3d测地线插值的实例。每个自动选择的锁定的2d图像对可以由有序集合内的一个锁定的2d图像和下一个最接近的锁定的2d图像构成,所述第一2d图像和所述第二2d图像是所述锁定的2d图像对中的一个锁定的2d图像对。
[0120]
在实施例中,在第一2d图像与第二2d图像之间的所述3d测地线距离计算之前,该方法可以包括:执行初始分类,基于中间2d图像中的每个中间2d图像中的区域在2d图像的所述集合的共同平面中在第一2d图像和第二2d图像两者的轮廓内,初始分类将该区域分类为前景,和/或,基于中间2d图像中的每个中间2d图像中的区域在所述平面中在第一2d图像和第二2d图像两者的轮廓外,初始分类将中间2d图像中的每个中间2d图像中的区域分类为背景。在这种情况下,3d测地线距离计算中的所述多个点是在所述初始分类中既没有被分类为前景也没有被分类为背景的点。
[0121]
在实施例中,该方法可以包括:确定所述2d图像中的第三2d图像中的对象周围的轮廓,第三2d图像在所述中间区域的外部并且在所述有序集合中与第一区域和第二区域不邻接,在所述有序集合内在第二2d图像与第三2d图像之间具有包括所述2d图像中的一个或多个另外的中间2d图像的另外的中间区域;以及独立于第一2d图像与第二2d图像之间的3d测地线距离计算,执行第二2d图像与第三2d图像之间的3d测地线距离计算的另外的实例。
[0122]
在一些这样的实施例中,该方法可以包括:响应于用户随后修改第三2d图像中的轮廓,重新执行第二2d图像与第三2d图像之间的3d测地线距离计算,而不重新执行第一2d图像与第二2d图像之间的3d测地线距离计算。
[0123]
在实施例中,测地线距离可以是沿着点与前景或背景之间的路径至少由像素强度加权的距离度量。替代地或附加地,其可以是沿着该路径由一个或多个其他像素属性或图像属性加权的距离度量。
[0124]
在实施例中,所述中间区域可以包括中间体,该中间体包括所述有序集合内在第一2d图像与第二2d图像之间的多个所述2d图像。
[0125]
在实施例中,该方法可以包括提供用户界面选项,该用户界面选项使用户能够在第一切片和第二切片之间的3d测地线插值与第一切片和第二切片之间的线性3d插值之间进行切换。
[0126]
在实施例中,所述3d图像可以是静态3d图像体,其中所述集合中的2d图像中的每个2d图像是穿过该图像体的不同2d切片。
[0127]
例如,3d图像可以包括生物的身体的至少一部分的扫描图,并且对象为所述身体内的器官或肿瘤。
[0128]
替代地,所述3d图像可以是具有两个空间维度的视频图像,其中所述集合中的2d图像中的每个2d图像是不同的时域帧。
[0129]
根据本文公开的另一方面,提供了一种计算机程序,该计算机程序体现在计算机可读存储装置上,并且被配置为使得当在一个或多个处理器上运行时,执行根据本文公开的任何实施例所述的方法。
[0130]
根据另一方面,提供了一种系统,该系统包括:存储器,该存储器包括一个或多个存储器设备;以及处理装置,该处理装置包括一个或多个处理单元;其中存储器存储被布置成在处理装置上运行的代码,该代码被配置为使得当运行时执行根据本文公开的任何实施例所述的方法。
[0131]
一旦给出本文的公开内容,所公开的技术的其他变型或用例对本领域技术人员而言可能变得显而易见。本公开的范围不受所描述的实施例的限制,而是仅受所附权利要求的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1