用于在虚拟现实或增强现实环境中渲染复杂数据的系统和方法与流程

文档序号:18516912发布日期:2019-08-24 09:31阅读:156来源:国知局
用于在虚拟现实或增强现实环境中渲染复杂数据的系统和方法与流程

本发明总体涉及将成像数据渲染成在虚拟现实或增强现实中可以查看的格式。更具体地,本发明涉及在虚拟现实或增强现实中渲染三维(3d)对象。



背景技术:

目前存在虚拟现实或增强现实系统并且其通常包括在一个或多个二维(2d)屏幕上显示计算机生成的3d对象的模拟。基于3d对象创建2d图像可能需要大量的计算资源。已知的系统和方法通常遭受差的性能。例如,因为确定2d帧中的像素的值可能需要(3d对象的)许多样本和计算,所以一些已知的系统和方法可能无法提供足够的分辨率。另外,当需要诸如缩放或旋转的操作时,已知的系统和方法经历延迟。

另外,使具有一个或多个有重叠的拓扑(例如,彼此相切)的部分的3d对象可视化可能是复杂的任务,尤其是在虚拟现实(“vr”)和/或增强现实(“ar”)中。例如,3d对象通常使用网格来显示。基于具有重叠部分(例如,相互拓扑)的3d对象创建的网格通常导致重叠部分彼此难以区分。例如,当相切和分离的3d对象具有相互拓扑的网格时,当前系统通常会创建相交的网格。然而,相切和分离的3d对象的网格通常不应相交,因为例如,它通常不允许准确表示3d对象是分离的事实。

由于例如ar/vr技术中的立体视觉,因此相交的网格能够被用户检测。已知的系统和方法可能无法从对于ar/vr技术中的可视化可以是准确的不同的3d对象充分地创建网格(或一组网格)。



技术实现要素:

本发明的一个优势是其可以以允许观看者区分对象的方式提供复杂解剖(例如,具有重叠对象的解剖)的ar/vr可视化。本发明的另一个优势是由于例如3d对象的准确表示,本发明可以向3d对象的用户提供较清晰的理解。

因此,在本发明的一方面,一种用于从成像数据创建对象的三维(3d)虚拟现实或增强现实渲染的方法和一种包含用于使计算机执行该方法的程序指令的非暂时性计算机可读介质。

根据本发明的实施方式,确定了基于成像数据的对象类型,创建了基于对象类型的一组掩模。每个掩模可以表示对象的唯一部分,并且可以被分配来自成像数据的与相应的掩模的唯一部分对应的多个体素和唯一视觉标记。

可以确定该组掩模的外掩模,并且可以根据外掩模创建3d网格。针对外掩模的3d网格的内壁中的每个顶点,确定除了外掩模之外的每个掩模中的每个体素至相应的当前体素的测地距离,并且可以修改当前顶点的相应视觉标记以具有与至顶点的测地距离最短的体素相同的视觉标记。可以基于外掩模和所有掩模的相应的唯一视觉标记创建对象的3d虚拟现实或增强现实渲染。

在一些实施方式中,对于多个体素中的没有分配至掩模的每个体素,可以从该组掩模确定具有在至当前体素的最近距离内的体素的一个掩模,并且可以将与该一个掩模的唯一视觉标记相同的视觉标记分配至当前体素。唯一视觉标记可以是颜色标记、图案、或其任何组合。

在一些实施方式中,通过应用具有预定阈值的箱式滤波器可以修改外掩模。

在某些实施方式中,外掩模的确定可基于用户输入、对象类型、或其任何组合。

附图说明

以下参考段落后面列出的附至本文的图描述本公开的实施方式的非限制性示例。出现在多个图中的相同特征通常在它们出现的所有图中用相同的标号标注。标注表示图中的本公开的实施方式的给定特征的图标的标号可以用于参考给定特征。图中所示的特征的尺寸出于方便和清楚呈现而选择,并且不一定按比例示出。

在说明书的总结部分中特别指出并明确要求保护被认为是本发明的主题。然而,通过参考以下具体实施方式并结合附图阅读可更好地理解本发明(关于组织和操作方法,以及其目的、特征和优点)。本发明的实施方式通过示例的方式而非限制的方式在附图的各图中示出,并且在附图中,用相同的附图标记表示对应的、模拟的或类似元件,其中:

图1示出了根据本发明的一些实施方式的示例性计算设备的高级框图;

图2a示出了根据本发明的一些实施方式的方法的流程图;以及

图2b示出根据本发明的示例性实施方式的具有内壁和外壁的心脏网格的截面的示例。

要理解的是,为了说明的简单和清晰的目的,在图中显示的元件不必精确地或按照比例绘制。例如,为了清楚起见,一些元件的尺寸可以相对于其他元件放大,或若干物理部件可以包括在一个功能块或元件中。进一步地,在认为适当的情况下,可在附图中重复参考标号以指示对应的或类似的元件。

具体实施方式

在下面的详细描述中,阐述了许多具体细节以提供对本发明的透彻理解。然而,本领域技术人员将理解,可在没有这些具体细节的情况下实践本发明。在其他情况下,没有详细描述公知的方法、流程、及部件、模块、单元和/或电路,以免使本发明晦涩难懂。相对于一个实施方式描述的一些特征或元件可以结合相对于其他实施方式描述的特征或元件。为了清楚起见,可能不重复讨论相同的或类似的特征或元件。

虽然本发明的实施方式在此方面不受限制,但是利用诸如“处理”、“计算”、“核算”、“确定”、“建立”、“分析”、“检查”等术语的论述可指计算机、计算平台、计算系统、或其他电子计算设备的操作和/或处理,该操作和/或处理操纵和/或转换表示为计算机的寄存器和/或存储器内的物理(例如,电子)量的数据为类似地表示为计算机的寄存器和/或存储器内的物理量或可存储指令以执行操作和/或处理的其他信息非暂时性存储介质的其他数据。虽然本发明的实施方式在这方面不受限制,但是本文使用的术语“多个”和“多数个”可包括例如“多个”或“两个或更多个”。在整个说明书中可使用术语“多个”或“多数个”来描述两个或更多个部件、设备、元件、单元、参数等。术语组在本文中使用时可包括一项或多项。除非另有明确说明,本文描述的方法实施方式不限于特定的顺序或序列。另外,所描述的方法实施方式或其元件中的一些可同时、在同一时间点或并发地发生或被进行。

参考图1,示出了根据本发明的一些实施方式的示例性计算设备(或系统)的高级框图。计算设备100可包括控制器105、操作系统115、存储器120、可执行码125、存储系统130、输入设备135和输出设备140,其中,例如,控制器105可以是中央处理单元处理器(cpu)、芯片或任何合适的计算或计算的设备。

控制器105(或一个或多个控制器或处理器,可跨多个单元或设备)可以被配置为实施在此描述的方法,和/或执行或充当各种模块、单元等。根据本发明的示例性实施方式的系统的部件包括多于一个计算设备100,并且一个或多个计算设备100可以是、或充当根据本发明的示例性实施方式的系统的部件。例如,第一计算设备100可实施3d模型创建的方法并且第二计算设备100可实施在显示器上渲染模型的方法。

操作系统115可以是或可包括任何代码段(例如,与在此描述的可执行码125相似的一种),设计和/或被配置为执行涉及协作、调度、仲裁、监督、控制或以其他方式管理计算设备100的操作的任务,例如,调度软件程序或可执行码段的执行,或使软件程序或其他模块或单元能够通信。操作系统115可以是商用操作系统。

存储器120可以是或可包括,例如,随机存取存储器(ram)、只读存储器(rom)、动态ram(dram)、同步dram(sd-ram)、双倍数据速率(ddr)存储芯片、闪存、易失存储器、非易失性存储器、高速缓冲存储器、缓冲器、短期存储器单元、长期存储器单元、或其他合适的存储器单元或存储单元。存储器120可以是或可包括多个可能不同的存储单元。存储器120可以是计算机或处理器非暂时性可读介质,或计算机非暂时性存储介质,例如,ram。

可执行码125可以是任何可执行码,例如,应用、程序、处理、或脚本。可执行码125可以被控制器105可能在操作系统115的控制之下而执行。例如,可执行码125可以是自动创建3d模型和/或渲染监测器上的图像的应用,如本文进一步描述的。尽管为了清楚起见,在图1中示出了单项可执行码125,但是根据本发明的示例性实施方式的系统可包括多个与可以加载到存储器120并使控制器105实施本文描述的方法的可执行码125相似的可执行码段。例如,本文描述的单元或模块可以是或可包括控制器105、存储器120及可执行码125。

存储系统130可以是或可包括例如,硬盘驱动器、光盘(cd)驱动器、可录式光盘(cd-r)驱动器、蓝光光盘(bd)、通用串行总线(usb)设备或其他合适的可移除的和/或固定的存储单元。内容可以存储在存储系统130中并且可以从存储系统130加载到存储器120中,控制器105可处理存储器120处的该内容。如所示,存储系统130可包括3d对象存储(例如,成像数据存储131)、掩模132及渲染数据133。本文进一步描述存储在存储系统130中的数据。

3d对象存储可包括3d对象。3d对象可包括表示3d对象的任何数据。3d对象可包括3d成像数据、网格数据、体积对象、多边形网格对象、点云、3d对象的功能表达、cad文件、3dpdf文件、stl文件、和/或可以表示3d对象的任何输入。3d成像数据可包括医学成像数据,包括计算机断层(“ct”)成像数据、锥形束计算机断层(“cbct”)成像数据、磁共振成像(“mri”)成像数据和/或mra成像数据(例如,利用造影剂的mri)或超声波成像数据。3d对象可以是解剖(例如,复杂解剖)的对象、工业数据、或任何3d对象。

在一些实施方式中,可以省去在图1中示出的一些部件。例如,存储器120可以是具有存储系统130的存储容量的非易失性存储器。相应地,虽然示出为分离的部件,但是存储系统130可以嵌入或包括在存储器120中。

输入设备135可以是或可包括鼠标、键盘、触摸屏或平板或任何合适的输入设备。应认识到,任何合适数量的输入设备可以操作地连接至计算设备100,如由框135所示。输出设备140可包括一个或多个屏幕、显示器或监视器、扬声器和/或任何其他合适的输出设备。应认识到,任何合适数量的输出设备可以操作地连接至计算设备100,如框140所示。

任何可应用的输入/输出(i/o)设备可以连接至计算设备100,如由框135和140所示。例如,有线或无线网络接口卡(nic)、打印机、通用串行总线(usb)设备或外部硬盘驱动器可以包括在输入设备135和/或输出设备140中。

根据本发明的示例性实施方式的系统可包括部件,诸如(而不限于)多个中央处理单元(cpu)或任何其他合适的多用途或特定的处理器或控制器(例如,与控制器105相似的控制器)、多个输入单元、多个输出单元、多个存储器单元、以及多个存储单元。系统可另外包括其他合适的硬件部件和/或软件部件。在一些实施方式中,系统可包括或可以是,例如,个人计算机、台式计算机、便携式计算机、工作站、服务器计算机、网络设备、或任何其他合适的计算设备。例如,本文中描述的系统可包括诸如计算设备100的一个或多个设备。

成像数据131可以是本领域已知的任何成像数据,例如,成像数据131可以是诸如通过计算机断层(ct)系统或通过磁共振成像核磁共振成像(mri)系统和/或通过锥形束计算机断层(cbct)系统生成的医疗数据。

掩模132中包括的掩模可以是、可以引用3d模型中的一组对象、或可以与其相关。例如,掩模可列出、或指向一组对象,例如,成像数据中的体素可以与掩模相关联(或包括在其中)。例如,掩模可以是包括例如较大数据集中的每个体素或数据点的布尔值(例如,1/0、是/否)的数据构造。掩模可包括指定体素的外观的视觉标记(例如,颜色和/或图案)。掩模在被应用于较大的数据集时可指示体素被标记或未被标记。体素是本领域已知的,通常,体素可以是体积的一组元素中的一个元素,体积可表示(例如,使用本领域已知的数字数据)三维空间和/或三维对象。

渲染数据133可以是用于渲染屏幕或监控器上的图像的任何数据。例如,如本领域已知的,渲染数据133可以是可以用于渲染图像的一组像素值(例如,红、绿、蓝(rgb)值、色调、强度等)。

在本发明的一些实施方式中,系统可以作为输入接收对象(例如,诸如头部或心脏的器官)的成像数据。系统可以存储并从存储器检索掩模和/或接收对应于一种类型的对象的一组掩模。系统可以利用对应的成像数据填充该组掩模中的每个掩模。例如,可以从存储器中检索心脏、左腔掩模和右腔掩模的成像数据。成像数据中的对应于心脏的右腔的一部分可以分配到右腔掩模并且成像数据中的对应于左腔掩模的一部分可以分配到左腔掩模。

系统可将具有所分配的成像数据的该组掩模渲染成在虚拟现实或增强现实(例如,渲染成器官或对象的3d模型的虚拟现实或增强现实)中可以查看的格式。可以使用任何文件格式,例如,本发明的实施方式可使用诸如标准三角语言(stl)或多边形文件格式或斯坦福三角格式(ply)的格式。例如,基于从ct或mri系统接收的成像数据并且基于一组掩模,一些实施方式可产生心室、血管或系统等的3d彩色虚拟现实或增强现实渲染。

一些实施方式可创建分段对象(例如,心脏的心区)的3d虚拟现实或增强现实渲染并且虚拟现实或增强现实渲染可以用于例如经由诸如oculusrift的vr眼镜或微软公司的hololens头戴设备在虚拟现实或增强现实(vr)系统中显示分段的对象。

在一些实施方式中,3d虚拟渲染可以是着色的。例如,在彩色虚拟现实或增强现实渲染的3d模型中的血管可以是红色的,骨架可以是白色等。虚拟现实或增强现实渲染的3d模型可包括任意数量的颜色,例如,可包括仅黑色和白色、各种灰度或色谱里的任何颜色。

如上所述,成像数据的虚拟现实或增强现实渲染可以通过将成像数据分配至一组掩模中的一个或多个掩模来完成。每个掩模可表示一组体素。一些实施方式可以通过操纵掩模中包括的、或列出的、表示的或引用的体素对(或涉及)掩模执行各种操作(例如,形态操作)。

例如,体素的组合a可以利用半径为r的球形元素扩大(本文中表示为),体素的组合a可以利用半径为r的球形元素侵蚀(本文中表示为),体素的组合a可以利用半径为r的球形元素打开(本文中表示为),并且体素的组合a可以利用半径为r的球形元素关闭(本文中表示为“a⊙r”)。

参考图2a,图2a是根据本发明的一些实施方式的用于从成像数据创建对象的3d虚拟现实或增强现实渲染的方法的流程图。如步骤210所示,可以基于成像数据来确定对象类型。如果成像数据131是心脏的,那么对象类型被确定为心脏。如果成像数据包括多个元素(例如,两个心室及相应的静脉),那么可以确定成像数据中的元素属于心脏。

如步骤215所示,可以基于对象类型生成一组掩模,其中每个掩模表示对象的唯一部分。在一些实施方式中,如果对象类型是心脏,那么可以创建软组织、腔、主动脉段、肺动脉段的掩模,如果对象是头部,那么可以创建头骨掩模、大脑掩模和/或窦骨掩模。在其它情况下,例如,如果诸如手机的电子设备是对象,那么如本文中描述的,可以创建并且使用外壳掩模、屏幕掩模或电路掩模。

在一些实施方式中,用户可选择对象的外掩模,并且在这些实施方式中,用户可以仅选择所选的外掩模内部的掩模。例如,假设存在整个肺解剖和整个心脏解剖(心脏软组织、腔、主动脉段、肺动脉段)的掩模,当用户选择软组织掩模时,生成图像可仅包括软组织、腔、主动脉和肺动脉(因为它们在肌肉内部)。

例如,如果对象类型是人心脏,那么对应于人心脏的一组掩模可以是腔及其他部分的掩模,例如,如表1所示:

lvmask–左心室掩模

rvmask–右心室掩模

ramask–右心房掩模

lamask–左心房掩模

aortamask–主动脉掩模

pamask–肺动脉掩模

bloodmask–血容量掩模

stmask–软组织掩模

表1

在各种实施方式中,经由另一计算机程序或任何其组合生成针对用户输入的每个对象类型的一组掩模。对于本领域的普通技术人员很明显,对象类型可以是可以3d成像的任意对象。例如,除了医疗应用,可以在工业环境中进行3d成像。工业3d成像数据可以是引擎、电路等的数据。

如步骤220所示,掩模中的每一个可以被分配一组或多个体素(例如,成像数据131中的体素的一些或全部)。例如,描述、属于或包括在成像数据131中的主动脉中的体素可以被分配至主动脉掩模。每个掩模可以被分配视觉标记,例如,视觉标记可以是颜色。视觉标记可以由用户(例如,经由用户界面)分配、由系统基于掩模的类型确定、或任何其组合。

如步骤225所示,外掩模可以被识别和/或确定。在一些实施方式中,外掩模被接收。例如,外掩模可以由用户输入限定。在一些实施方式中,外掩模可以基于对象类型来确定。

继续以上示例,其中,对象类型是心脏,心脏周围的软组织可以用于生成外掩模。

在一些实施方式中,一个或多个掩模是平滑的。在一些实施方式中,外掩模是平滑的。例如,如果外掩模是心脏的软组织,那么因为心脏的软组织的成像数据可包括噪声,如本领域已知的,外掩模可以是平滑的以例如消除噪声、和/或不需要的数据点。在一些实施方式中,使用箱式均值滤波器(例如,尺寸[3,3,3]中的一个)并且使用0.5的阈值可以使外掩模平滑。

在一些实施方式中,当从厚掩模创建网格时(例如,掩模的宽度超过一个体素),得到的网格可以具有内壁和外壁。在这些实施方式中,当外掩模被识别时,其可以对应于外壁。在这些实施方式中,可以确定属于外掩模、但是未识别为属于外掩模的体素(例如,内壁的体素)。

例如,图2b示出根据本发明的示例性实施方式的具有内壁和外壁的外掩模的心脏网格的截面的示例。如图2b中所示,肌肉组织2115具有一厚度使得其内壁由垂直线指示并且其外壁以对角线图案化。由于3d网格可从、或基于外掩模(例如,在心脏模型化的情况下,肌肉组织是外掩模)创建,因此其内壁的体素可以使用内掩模的颜色来着色。由于每个体素可以对应于特定掩模,并且每个顶点可以对应于特定网格,由此可见,可以确定网格的内壁中的每个顶点的颜色。因为外掩模的网格的顶点可能不一定位于内掩模体素上(例如,由于网格创建过程导致),所以可以完成测地距离步骤。

转回至图2a,方法还可以涉及从外掩模创建网格(步骤237)。方法还可以涉及基于测地距离确定顶点的颜色。对于该组掩模中的除了外掩模以外的每个掩模:可以确定相应掩模中的每个体素与外掩模网格的内壁中的顶点之间的测地距离,如步骤230示出的。

继续如上所述的心脏示例,确定相应掩模中的每个体素与外掩模的网格的内壁中的顶点之间的测地距离可以涉及通过使bloodmask扩张1来生成traversemask(例如,可以覆盖网格的内壁的区域),例如,如在以下等式1中所示:

腔和/或血管掩模中的每一个(例如,lvmask、rvmask)扩张1体素半径(例如,使用如上所述的操作)。

可以确定每个掩模与每个顶点之间的测地距离。继续心脏示例,可以确定每个顶点与每个腔和血管掩模之间依据遍历掩模的测地距离。每个顶点可以使其视觉标记修改为与至顶点的测地距离最短(例如,最近的)的体素的视觉标记。

在一些实施方式中,可以经由用户输入修改特定掩模的颜色。例如,基于指示关注肌肉的用户输入,(例如,musclemask中的)表示肌肉组织的体素可以被分配为肌肉选择的颜色(例如,选择用于musclemask的颜色)。任意对象或结构可用于记录或表示每个体素对颜色的映射(例如,一列、一组指针或参考符号等)。

可以产生并使用一组着色的体素(例如,由图表示的)来创建对象的3d虚拟现实或增强现实渲染数据。例如,最外的掩模可以被所描述的其他掩模的部分增强(例如,通过将体素与掩模和/或所描述的着色体素相关联),使得掩模精确地表示和/或使医师或其他用户能够根据需要创建视图。如步骤235所示,可以基于外掩模和所有掩模的相应的唯一标记产生用于对象的3d虚拟现实或增强现实渲染的数据。例如,可以基于以上示例中描述的心脏掩模,例如使用本领域已知的移动立方体算法来创建心脏的着色的3d虚拟渲染。

在本申请的说明书和权利要求中,每个动词“包括”“包含”及“具有”以及其同根变形词用于指示对象或动词的对象不一定是对象的部件、元件或部分或动词的对象的完整列表。除非另有说明,否则修饰本公开的实施方式的特征或多个特征的条件或关系特性的诸如“大体上”和“大约”的形容词被理解为指条件或特性被限定在适用于所描述的实施方式的操作的容许误差内。另外,单词“或”被认为是包容性的“或”,而不是排他性的或,并且指示其结合的项的至少一个或任何组合。

本申请中的本发明的实施方式的描述通过举例的方式提供,不旨在限制本发明的范围。所描述的实施方式包括不同的特征,不是所有的特征都在所有的实施方式中需要。一些实施方式仅利用一些特征或特征的可能组合。本领域普通技术人员将想到所描述的本发明的实施方式的变型、及所描述的实施方式中指出的包括不同的特征组合的实施方式。本发明的范围仅受权利要求的限制。

除非另有明确规定,否则本文中描述的方法实施方式不限于特定的时间顺序或时间序列。另外,在方法的一系列操作期间,描述的方法元素中的一些可以省略、或可以重复。

尽管本文已经图示和描述了本发明的某些特征,但是对于本领域技术人员而言,可出现许多修改、替换、改变和等同物。因此,应当理解,所附权利要求旨在覆盖落入本发明的真实构思内的所有这样的修改和改变。

已呈现各种实施方式。这些实施方式中的每个当然可包括所给出的其它实施方式的特征,且没有具体描述的实施方式可包括本文描述的各种不同的特征。

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