专利名称:实行三维虚拟检查、导引行进和可视化的系统和方法
技术领域:
本发明涉及实行基于体积的三维虚拟检查的系统和方法,更具体的涉及提供了增强的可视化和导引行进性能的系统。
背景技术:
在全世界,结肠癌一直是重要的死因。对癌肿瘤的早期诊断,肿瘤在人体结肠里首先显示为息肉,可以极大的增加病人痊愈的机会。当前,有两种通常的方法来诊断病人结肠里的息肉或者其他胞块。第一种方法是结肠镜检查手续,它使用称为结肠镜的柔韧的光导纤维通过物理的直肠插入镜头来可视的检查结肠。医生可以控制管子来寻找结肠中的异常肿瘤。结肠镜检查,尽管是可靠的。但是它不仅相对的花费金钱和时间,并且它对于病人是入侵的不舒服的痛苦过程。
第二诊察技术是使用钡灌肠剂并对结肠进行两维X射线成像。用钡灌肠剂覆盖结肠,进行两维X射线成像来捕获结肠成像。然而,钡灌肠剂不总是提供整个结肠的视图,需要广泛的预处理和耐心操作,当实行操作时常常依赖于操作员,其暴露病人到过量的放射线,并且可能没有结肠镜检查灵敏。因为上述通常方法的缺点,需要有一种更可靠,少侵入的方法来检查结肠。检查其他人体器官,例如肺,也需要更可靠,耗费少并且病人痛苦少的方法。
应用当前可以获得的医疗影像设备,例如计算机X线断层照片和MRI(磁共振成像),人体器官的二维(“2D”)可视化,已经被广泛的用于病情诊断。三维成像可以由通过对扫描机器产生的二维图像之间进行堆叠和插入得到。器官成像和以三维空间对体积作可视化是有益的,因为它没有物理的侵入并且减轻了数据的操作。然而,为了完全利用从里面虚拟观察器官的优势,必需适当的实行三维体积成像。
当观察环境的三维(“3D”)体积虚拟成像,必需使用功能模型以探测虚拟空间。一个可能的模型是虚拟照相机,它可以被用作观察者探测虚拟空间的参考点。在一般3D虚拟环境中的照相机控制导引已经被研究。提供虚拟空间导向的照相机控制的方法有两种通常的类型。第一种让操作员完全控制照相机,它允许操作员控制照相机于不同的位置并且朝向期望的观察方向。操作员将有效控制照相机。这允许操作员探测感兴趣的特定部分而忽略其他部分。然而,在大范围内对照相机的完全控制将很单调乏味并且很疲劳,并且操作员可能没有观察探测开始点和结束点之间的所有重要特征。
照相机控制的第二技术是设计导引方法,它指定了照相机预定的路径并且操作员不能改变路径。这与加入“自动控制”相类似。这允许操作员关注于被观察的虚拟空间,并且不必担心进入被检查环境的内壁。然而,第二技术没有给观察者改变路线或者调查沿行进路径观察的感兴趣区域的灵活性。
使用上述两种导引技术的合成,将实行两者的优点,并最小化它们各自的缺点。应用灵活导引技术于人体器官或者动物器官的检查,这些器官将表示为虚拟3D空间,便于实行无侵入无痛的彻底检查。期望的导引技术将进一步允许有灵活性的操作员对3D空间中虚拟器官进行彻底检查,同时确保平滑路径和穿过并环绕器官的彻底检查。而且期望其可以通过最小化观察器官所需计算的技术实时显示器官的探测。期望的技术也同样可以应用于探测任何虚拟对象。
本发明的另一目标是为了定制所观察物体部分的可视化表示,使特定的体积元素成为透明的或者半透明的(改变特定体积元素的透明度),而给每个体积元素的表示指定不透明系数。
发明概述本发明使用体积可视化技术生成了物体(例如人体器官)的三维可视化成像并且使用导引行进系统探测虚拟图像,此系统允许操作员沿预定的行进路线前进并且为了确定器官的息肉、囊肿或者其他异常特征,允许偏离预定的路径,调整位置和观察角度到成像中感兴趣的部分。
根据用于虚拟检查的导引行进方法,生成了通过虚拟器官(例如结肠内腔)的行进路径。从结肠内腔的体积元素,从虚拟结肠内腔壁应用体积缩减以生成一套压缩结肠内腔数据。从所述压缩结肠内腔数据生成虚拟结肠内腔的端点之间的最短路径。沿虚拟结肠内腔的长度方向沿最短路径抽取控制点。接着使控制点位于虚拟结肠内腔中心。最后,在居中的控制点之间插入线段用于确定最终导引行进路径。
在上述的生成行进路径的方法中,所述体积缩减步骤包含步骤表示所述结肠内腔为多栈图像数据;对所述图像数据应用离散子波变换以生成多套包含多个频率成份的子数据;并且接着选择所述子数据的最低频率成份。
另一种在虚拟结肠镜检查中用于生成通过虚拟结肠内腔的行进路径的方法包含分割虚拟结肠内腔为多个部分的步骤。在每个部分内选择一个点并且参考虚拟结肠内腔壁使每个所选择点居中。连接居中点以建立行进路径。
一种实行虚拟结肠内腔检查的方法包含体积着色操作。对于结肠内腔内每个观察点,从所述观察点投射射线通过每个图像象素。确定每束射线上从观察点到结肠内腔壁的最短距离。如果距离超过预定的采样间隙,则沿射线跳过所述距离并且给沿射线在所述距离上的点指定一开放空间转移函数。如果所述距离不超过采样间隙,则采样此象素并且根据转移函数确定其值。
成像和体积着色的方法也带来了实行区域(例如结肠壁或者其他被怀疑胞块)的虚拟活组织切片检查的方法。从成像扫描器数据生成的区域体积表示,通过应用所述区域的一初始转移函数以在结肠里导引行进并且观察区域表面实行了体积着色。当诊察到怀疑区域,动态的改变转移函数允许操作员(例如医生)有选择的改变观察区域的不透明度和合成信息。这允许对被怀疑区域(例如息肉)的内部结构的三维观察。
在根据本发明的另一个方法中,可以自动的诊察位于被检查区域表面的息肉。结肠内腔由多个体积单元表示。结肠内腔的表面进一步表示为连续的二阶可微的表面,其中每个表面体积单元有其相关的高斯曲率。可以自动搜索和评估从区域趋势产生的局部特征的高斯曲率。接着从结肠壁表面将有相应于象小山小凸起的局部特征分类为息肉以便进一步检查。
在根据本虚拟成像发明的另一个方法中,一种实行虚拟结肠镜检查的方法包含获得包含结肠的区域的一套图像数据并且转化所述成像数据为体积单元的步骤。确认表示结肠内腔壁的那些体积单元并且建立行进路径以导引行进通过所述结肠内腔。接着应用至少一个转移函数以映射颜色和不透明度到结肠内腔壁。接着根据指定的转移函数,沿行进路径显示结肠内腔。
在虚拟结肠镜检查的方法中,生成行进路径的步骤包含从虚拟结肠内腔壁应用体积缩减以生成一套缩减的数据。从这套缩减的数据,生成虚拟结肠内腔的端点之间的最短路径。接着沿最短路径指定沿虚拟结肠内腔的长度方向的控制点。使控制点位于虚拟结肠内腔中心并且插入居中的控制点的连接线段以完成导引行进路径。
另一方面,产生行进路径可以通过将虚拟结肠内腔分成多个部分;在每个部分内选择一个点;参考虚拟结肠内腔壁使每个点居中;并且连接居中点以建立行进路径。
一种根据本发明的用于区域的三维成像、导引行进和检查的系统,包含用于获得图像数据的成像扫描器,例如MRI或者CT扫描器。一个处理器转化图像数据为形成一套体积元素数据的多个体积元素。所述处理器还实行步骤确认表示结肠内腔壁的那些体积单元;建立行进路径以导引行进通过所述结肠内腔;并且应用至少一个转移函数以映射颜色和不透明度到结肠内腔壁。一个显示单元与处理器耦合,所述显示单元用于根据行进路径和至少一个转移函数显示区域表示。
另一个基于本发明的具体实施例形成的用于虚拟结肠镜检查的基于计算机的系统是基于总线结构体系。一个扫描器接口卡与所述总线结构耦合并且提供来自所述成像扫描器的数据到所述总线结构。还提供了与总线耦合的主存储器。拥有本地体积着色存储器的体积着色卡,所述体积着色卡在体积着色操作中接收至少一部分来自成像扫描器的数据并且储存所述数据于体积着色存储器。一图形卡与总线结构耦合并且与一显示设备耦合用于显示来自系统的图像。一个处理器与所述总线结构耦合并且响应来自成像扫描器的数据。所述处理器转化来自成像扫描器的图像数据为体积元素表示,储存所述体积元素表示,分割所述体积元素表示为图像切片,并且传输所述体积元素部分到所述体积着色卡。
附图简述下面将参考显示了本发明较佳实施例的附图作详细说明,将使本发明的进一步的目标、特征和优势更明显。
图1是根据本发明实行物体(特别是结肠)虚拟检查的步骤的流程图。
图2是实行在虚拟器官里引导行进的“潜水艇”照相机模型的说明。
图3是用于模仿俯仰和摇摆“潜水艇”照相机的摆的说明。
图4是说明确定了两面阻挡壁的测容积的结肠的两维横截面图。
图5是说明测容积的结肠的两维横截面图,其中结肠的起始和结束端体积元素被选中。
图6是说明测容积的结肠的两维横截面图,其中示出由阻挡壁和结肠表面所包围的离散的次体积。
图7是说明测容积的结肠的两维横截面图,其中结肠被多层剥落。
图8是测容积的结肠的两维横截面图,其中包含留下的行进路线。
图9是生成被扫描器官的体积可视化的步骤的流程图。
图10是说明被细分成单元的虚拟结肠的说明。
图11A是被虚拟检查的器官的图像说明。
图11B是当说明图11A中器官时生成的试探树图的图像说明。
图11C是当说明图11A中器官时生成的试探树图的进一步图像说明。
图12A是将着色的包含有场景中某些单元内的物体的场景图像说明。
图12B是当说明图12A中器官时生成的试探树图的图像说明。
图12C-12E是当说明图12A中器官时生成的试探树图的图像说明。
图13是包含息肉的虚拟结肠的二维表示,其中息肉的层可以被移除。
图14是根据本发明的用于实行人体器官虚拟检查的系统的图表。
图15是说明改进的图像分割方法的流程图。
图16是体素强度对典型腹部CT数据组频率的图像。
图17是包含感兴趣体素和其被选中的相邻物体的强度向量结构透视图。
图18A是从人体腹部区域的CT扫描切片的示意图,主要说明了包含肺的区域。
图18B是说明图18A的图像切片中肺区域的鉴定的图示。
图18C是说明图18B中确认的肺体积的移除的图示。
图19A是从人体腹部区域的CT扫描切片的示意图,主要说明了包含一部分结肠和骨头的区域。
图19B是说明图19A的图像切片中结肠和骨头区域的鉴定的图示。
图19C是说明有被移除骨头区域的图19A的图像扫描的图示。
图20是说明应用纹理到单色图像数据上的方法的流程图。
图21是说明应用快速透视光线投射技术实行体积着色的方法的流程图。
图22是说明应用体积缩减技术确定通过结肠内腔的中心行进路径的方法的流程图。
图23是进一步说明图22中说明的方法所使用的体积缩减技术的流程图。
图24是生成了中心行进路径的分割的结肠内腔的三维图像表示。
图25是说明应用分割技术生成通过结肠内腔的中心行进路径的方法的流程26是基于个人计算机总线结构体系的系统具体实施例的框27是使用图26中系统实行体积成像的方法的流程图。
较佳实施例详细说明这里的应用中所述的方法和系统可以被应用到被检查的任何物体,较佳的实施例是人体器官的检查,特别是结肠检查,下面将会说明较佳实施例。结肠是长而曲折的,这使它特别适合于虚拟检查,节省了病人的钱,减少了物理探查的不舒服和危险。可以被检查的器官的其他例子包含肺,胃和胃—肠系统的部分,心脏和血管。
图1说明了使用体积可视化技术实行虚拟结肠镜检查的必要步骤。步骤101准备被扫描的结肠,为了医生或者特定扫描仪器需要检查。准备可以包含以“鸡尾酒”或者液体清洁结肠,它们在咽下并经过胃后进入结肠。鸡尾酒迫使病人排除结肠里的废物。它的一个替代品是Golytely。而且,在结肠情况下,空气或者CO2可以被强迫进入结肠,以扩张结肠,便于扫描和检查。最后是用小管子放入直肠,泵入结肠大约1000cc空气,用于扩张结肠。依赖于所使用扫描器的类型,有可能需要病人饮用对比物质,例如钡,以覆盖任何未擦掉的粪便,区分结肠里的废物和结肠本身的壁。可替换的,虚拟检查结肠的方法可以先于或者在虚拟检查时清除虚拟废物,如本说明书下述。如图1中虚线所显示的,步骤101不需要在所有的检查中实行。
步骤103扫描了将被检查的器官。扫描器可以是在此领域熟知的设备,例如扫描结肠的螺旋CT扫描器或者例如用氙气示踪的扫描肺的Zenita MRI机器。扫描器必需可以在暂停呼吸时间中从身体周围不同位置获取多重成像,以产生体积可视化必需的数据。单个CT成像的例子可以使用5mm宽度的X射线束,1∶1到2∶1间距,40cm观察范围,从结肠的脾脏的弯曲部分的顶端到直肠实行观察。表示所述物体的离散数据可以除了扫描外的其他方法产生。表示物体的体素数据可以通过下述技术从几何模型中得到美国专利号No.5,038,302,题为“Method of Converting Continuous Three-DimensionalGeometrical Representations into Discrete Three-Dimensional voxel-BasedSystem”发明人Kaufman,发布时间1991年8月8日,申请时间1988年7月26日,这里列举作参考。而且,数据可以由图像的计算机模型产生,其可以被转化成三维体素并且被根据本发明探测。这种类型数据的一个例子是航天飞机周围紊流的计算机模拟。
步骤104转化被扫描图像为三维体积元素(体素)。在结肠检查的较佳实施例中,扫描数据被重新格式化为5mm厚度的增量为1mm或者2.5mm的切片,以及重建成1mm切片,每个切片表示512乘512像素的矩阵。依靠扫描的长度生成了大量的2D切片。这套2D切片接着重建成3D体素。扫描器的2D图像转化成3D体素的过程可以由扫描器本身实现或者通过单独的机器,例如有本专业中熟知的技术(例如,参考美国专利号No.4985,856,题为“Method andApparatus for Storing,Accessing,and Processing voxel-based Data”发明人Kaufman等,发表日1991年1月15日,申请日1988年11月11日;这里引用作参考)的计算机实现。
步骤105允许操作员确定被检查器官的部分。内科医师可能对结肠的特定部分感兴趣,例如发育息肉。内科医师可以观察二维切片整体图来指出要被检查的部分。观察路径的开始点和结束点可以由内科医师/操作员指定。通常的计算机和计算机界面(例如,键盘,鼠标或者滚球)可以被用于指定要被检查的结肠部分。有坐标的网格系统可以被为键盘输入使用或者内科医师/操作员可以“点击”需要的点。如果需要,结肠的整体图像也可以被观察。
步骤107实行被检查虚拟器官的设计或者引导行进操作。实行导引行进操作被定义为沿预定或者自动预定的行进路线导引通过环境,行进路径可以被操作员在任何时间调节。在扫描数据被转化成3D体素,器官的内部必需横贯选中的开始点到选中的终点。虚拟检查被模拟成有一微小照相机从虚拟空间穿过,镜头向着终点。导引行进技术提供了与照相机一定程度的交互,这样在没有操作员交互的情况时,照相机可以自动的行进通过虚拟环境,并且同时允许必要时由操作员控制照相机。完成导引行进的较佳实施例是使用基于物理的照相机模型,它使用势场来控制照相机的移动并且将在图2和图3中详细描述。
步骤109,可以与步骤107同时发生,从照相机模型的视点沿导引行进操作所选中的路径显示器官内部。三维显示可以使用此领域内熟知的技术生成,例如边界立方体技术。然而,为了生成结肠的实时显示,需要一种技术来减小显示虚拟器官所需要的计算量,图9详细说明了这个显示步骤。
图1中说明的方法也可以应用于同时扫描人体内多个器官。例如,病人可以同时检查结肠和肺里的癌肿瘤。图1的方法将被修改为在步骤103扫描所有感兴趣区域并且可以在步骤105选择被检查的当前器官。例如,内科医生/操作员可以首先选择结肠来探测并且随后探测肺。另一方面,两个特长不同的医生可以虚拟探测不同的关于其特长的被扫描器官。步骤109后,将被检查的下一个器官被选中并且它的部分将被确定和探测。这一直持续到所有需要被检测的器官都被处理为止。
与图1相关的步骤已经被应用于任何可以被体积元素表示的物体的探测。例如,一个建筑结构或者无生命的物体可以以同样方式被表示并且探测。
图2说明了一个“潜水艇”照相机控制模型,它在步骤107实行导引行进技术。当导引行进中没有操作员控制时,默认行进与计划的行进相似,它自动的指引照相机沿从结肠的一个选择端到另一个的行进路线。在计划行进阶段,照相机停留在结肠的中心以获得对结肠表面较好的观察。当遇到感兴趣区域,使用导引行进的虚拟照相机的操作员可以交互的把照相机放到特定区域并且指引照相机的移动和角度以详细的研究感兴趣区域,不需要不自愿的与结肠内壁相撞。操作员可以用标准界面设备例如键盘,鼠标或者非标准设备例如滚球来控制照相机。为了在虚拟环境完全操作照相机,照相机需要有六个自由度。照相机必需可以水平的,垂直的,和Z方向(轴217)移动,还可以在三度自由度(轴219)上旋转以允许照相机移动或者扫描虚拟环境的所有边和角。导引行进照相机模型包含不可延伸的无重杆201,它连接质点x1203和x2205,两个质点属于势场215。势场是定义为在器官壁上最高,为了使照相机远离壁。
质点的位置由x1和x2给定,并且它们被假设有相同的质量m。照相机被附在潜水艇x1203的顶端,潜水艇的观察方向是x2x1方向。由于两个质点被从下面将定义的势场V(x)的力,任何摩擦力,和任何模拟外部力影响,潜水艇可以在模型块x中心周围实行平移和旋转。x1,x2,x之间的关联如下x=(x,y,z),r=(rsinθcosφ,rsinθsinφ,rcosθ),x1=x+r,x2=x-r, (1)其中,r,θ和φ是向量xx1的极坐标。
模型的动能,T,被定义为x1和x2的移动的动能的和T=m2(x·12+x·22)]]>=mx·2+mr·2]]>=m(x·2+y·2+z·2)+mr2(θ·2+φ·2sin2θ).---(2)]]>接着,潜水艇模型运动方程通过使用拉格朗日方程得到ddt(∂T∂q·j)-∂T∂qj=Σi=12(Fi·∂xi∂qj),---(3)]]>其中qj是模型的广义坐标,并且它们可以被认为是时间t的变量(q1,q2,q3,q4,q5,q6)=(x,y,z,θ,φ,Ψ)=q(t), (4)其中Ψ表示照相机系统的摆动角,稍后将说明。Fi是称为广义力。潜水艇的控制由给x1施加模拟外部力实行,Fext=(Fx,Fy,Fz),并且假定x1和x2是被从势场的力和摩擦力影响,摩擦力作用方向与每个质点速度方向相反。结果,广义力由以下等式计算F1=-m▿V(x1)-kx·1+Fext,]]>F2=-m▿V(x2)-kx·2,---(5)]]>其中k表示系统的摩擦系数。外力Fext由操作员简单的在生成图像中需要的方向207点击鼠标施加,如图2所示。照相机模型可以接着以那个方向移动。这允许操作员仅仅通过点击鼠标来控制照相机至少5个自由度。从等式(2),(3)和(5),可以求出潜水艇模型的五个参数的加速度x··=-12(∂V(x1)∂x+∂V(x2)∂x)-kx·m+Fx2m,]]>y··=-12(∂V(x1)∂y+∂V(x2)∂y)-ky·m+Fy2m,]]>z··=-12(∂V(x1)∂z+∂V(x2)∂z)-kz·m+Fz2m,]]>θ··=φ·2sinθcosθ]]>-12r[cosθ{cosφ(∂V(x1)∂x-∂V(x2)∂x)+sinφ(∂V(x1)∂y-∂V(x2)∂y)}]]>-sinθ(∂V(x1)∂z-∂V(x2)∂z)]]]>-kmθ·+12mr(Fxcosθcosφ+Fycosθsinφ-Fzsinθ),]]>φ··=1sinθ[-2θ·φ·cosθ]]>-12r{-sinφ(∂V(x1)∂x-∂V(x2)∂x)+cosφ(∂V(x1)∂y-∂V(x2)∂y)}]]>-kmφ·sinθ+12mr(-Fxsinφ+Fycosφ)],---(6)]]>其中 和 表示x的一阶导数和二阶导数,并且 表示势场在点x的梯度。 的表达式中的 和 的表达式中的 被称为向心力和Coriolis力,它们与潜水艇的角速度的交换相关。由于模型没有为潜水艇的刚杆定义的惯量矩,这些项将导致φ的计算数值偏大。幸运的是,仅当潜水艇模型的角速度很大(这意味着照相机运动的太快)时,这些项才很大。因为照相机运动太快将不能适当的观察器官,允许照相机运动很快毫无意义,在我们的实施例中这些项都被最小化以避免偏大的问题。
从等式6的前三个等式,知道如果满足以下条件,潜水艇不能被外力推动逆向势场。
|▿V(x1)+▿V(x2)|>|Fext|m.]]>由于在我们的实施例中潜水艇的速度和外力Fext有上限,通过在物体边界指定足够高的势场值,将可以保证潜水艇不会撞向物体或者环境内壁。
如上所述,需要考虑照相机系统的摆动角Ψ。一个可能的选择是允许操作员完全控制角度Ψ。然而,尽管操作员可以在模型刚杆周围自由旋转照相机,他可能很容易变得失去方向感。较佳的技术假定照相机的上方向与质量m2的摆301相连,如图3所示,它可以自由的绕潜水艇的刚杆旋转。摆的方向r2表示为r2=r2(cosθcosφsinΨ+sinφcosΨ,cosθsinφsinΨ-cosφcosΨ,-sinθsinΨ).
尽管可以计算摆随同潜水艇运动的精确运动,但这样使系统方程太复杂了。从而,假定除了摆动角Ψ外所有的广义坐标是常量,并且这样定义了摆系统的独立动能为Tp=m22r·22=m2r222ψ·2.]]>这简化了模型的摆动角。假定模型中作用在质点m2的重力为Fg=m2g=(m2gx,m2gy,m2gz)可以使用拉格朗日方程计算Ψ的加速度为ψ··=1r2{gx(cosθcosφcosψ-sinφsinψ)]]>+gy(cosθsinφcosψ+cosφsinψ)]]>+gz(-sinθcosψ)}-k2m2ψ·.---(7)]]>从等式(6)和(7),广义坐标q(t)和它的导数 可以使用泰勒级数逼近,为q(t+h)=q(t)+hq·(t)+h22q··(t)+O(h3),]]>q·(t+h)=q·(t)+hq··(t)+O(h2),]]>以自由的移动潜水艇。为了平滑潜水艇的移动,时间步长h被选择为在为平滑移动的最小可能值与减小计算复杂性的最大必要值之间的平衡值。
势场定义为了保证潜水艇照相机没有与壁或者其他边界相撞,通过指定高势场给边界,在图2中潜水艇模型的势场定义了虚拟器官边界(壁或者其他东西)。如果照相机模型企图由操作员移动入高势能区域,照相机模型将对这样做有限制,除非例如操作员想检测边界后面的器官或者在息肉里面。在实行虚拟结肠镜检查时,势场值被赋给体积测量结肠数据的每片(体积元素)。当在图1中步骤105特定的感兴趣区域被指定了起始点和终点,被扫描结肠的所选择区域里的体素被使用通常的分块操作标识。结果,势能值被指定给选中的体积的每个体素,基于下面三个距离值离终点的距离dt(x),离结肠表面的距离ds(x)和离结肠空间中心线的距离dc(x)。dt(x)使用通常的增长策略计算。离结肠表面的距离ds(x)是使用从表面体素向内增长的传统技术计算,为了确定dc(x),首先从体素中提取结肠中心线,并且接着使用传统的增长的策略从结肠的中心线计算dc(x)。
为了计算由用户指定的起始点到用户指定的终点确定的选中结肠区域的中心线,ds(x)的最大值被定位并且表示为dmax。接着对于感兴趣区域里的每个体素,指定了dmax的代价值-ds(x)。这样靠近结肠表面的体素有较高的代价值并且靠近中心线的体素有相对较低的代价值。接着,基于代价值指定,本领域熟知的单源最短路径技术被应用于有效的计算从源点到终点的最小代价路径。低代价线说明了中心线或者需要被探测的结肠部分的基干。确定中心线的技术是本发明较适宜的技术。
为了计算感兴趣区域内体素x的势能值V(x),应用了下面的等式V(x)=C1dt(x)μ+C2(ds(x)dc(x)+ds(x))ν,---(8)]]>其中C1,C2,μ和ν为此目标选择为常量。为了避免虚拟照相机和虚拟结肠表面的碰撞,所有在结肠外面的点被指定了足够大的势能值。势场的梯度将从而变得很显著,在运动时潜水艇模型照相机将不会与结肠壁碰撞。
确定结肠里中心线路径的另一个技术是“剥落层”技术,图4到图8显示了这项技术。
图4显示了体积测量结肠的2D横截面,显示了结肠的两侧壁401和403。两个阻挡壁由操作员选择,以确定结肠中感兴趣的部分。在阻挡壁外面什么也看不见。这帮助减小了显示虚拟表示时的计算量。阻挡壁与侧壁确定了被探测结肠包含的的体积外形。
图5显示了虚拟检查行进路径的两个端点,起始体积元素501和终点体积元素503。起始点和终点由操作员在图1中步骤105中选择。在开始和结束点和结肠壁之间的体素被辨别和标记,如图6中标为“x”的区域所显示的。体素是图像元素的三维表示。
剥落层技术接着被应用于辨别和标记图6中的体素。所有体素的最外层(靠近结肠壁)被一步接一步的剥落,直到仅仅剩下一个体素里层。换句话,如果被移除的没有使在起始体素和结束体素之间路径的断开,移除每个远离中心点的体素。图7显示了一定次数的反复剥落虚拟结肠里体素的过程完成后的及时结果。最靠近结肠壁的体素被移除。图8显示了所有的反复剥落操作完成后,照相机模型的沿结肠中心的最终行进路径。这在结肠中心必然产生了骨干图,并且此骨干成为照相机模型的行进路径。
Z-缓冲辅助可见性图9说明了在器官的虚拟三维体积表示中显示照相机所见虚拟成像的实时可视性技术。图9显示了使用修正Z缓冲的显示技术,相应于图1中步骤109。可以从照相机模型观察的体素的个数是极大的。除非必需被计算并可视化的元素的整个数目(或者多边形)是从被扫描环境的整套体素中简化而来,整体计算量使可视化显示过程在较大内部区域时很慢。然而,在本发明中仅仅在结肠表面可见的图像需要被计算用于显示。扫描环境可以被细分为小部分,或者单元。Z缓冲技术接着着色仅仅从照相机可见的那部分单元。Z缓冲技术也被用于三维体素表示。修正Z缓冲的使用减少了需要计算的可视体素数目并且允许医生或者医务技师实时的检查虚拟结肠。
在步骤107从感兴趣区域计算了中心线,当显示技术被应用时,此感兴趣区域被细分为单元。单元是成为可视单元的集合组。每个单元里的体素将显示为组。每个单元包含许多入口,通过这些入口可以观察其他单元。从结肠中选择的起始点开始并且向终点方向沿中心线1001移动,细分结肠。当沿中心线到达预定的界限距离,接着将结肠分成单元(例如,图10中的单元1003,1005和1007)。界限距离是基于实行可视化技术的平台的规格,并且此平台可以储存和处理。单元大小直接与体素的数目相关,平台可以储存和处理此数目。界限距离的一个例子是5cm,尽管距离可以很不相同。如图10,每个单元有两个作为入口的横截面,便于从单元外面观察。
图9中的步骤901确认了所选择器官里的单元,此单元现在包含照相机。当前单元将与所有其他单元一样显示,这些其他单元是从给定的照相机的方向可见的。步骤903建立了从照相机(从确定的入口)潜在可见的单元的等级数据的试探树(树图),下面将会详细说明。试探树为每个照相机可能可见的单元包含一个节点。一些单元可能是透明的,没有任何成块主体,这样在单个方向将可见多个单元。步骤905储存了单元的体素的子集,子集包含相邻单元边缘的交集并且为了更有效的确定哪些单元是可见的,将它们储存在试探树的外边缘。
步骤907检查试探树里是否有循环节点。当单个单元的两个或者更多边缘都与同一附近单元相邻时,会出现循环节点。当单个单元被另一个单元包围时会出现循环节点。如果在试探树上确认了循环节点,方法继续到步骤909。如果没有循环节点,流程到步骤911。
步骤909合并两个单元,使循环节点成为一个大节点。相应的修改了试探树。这解决了由于循环节点引起的两次观察同一个单元的问题。在所有确认的循环节点上实行此步骤。流程到步骤911。
步骤911接着以最大Z值初始化Z-缓冲。Z值规定了沿骨干路径离照相机的距离。接着遍历树,首先检查每个节点的交集值。如果一个节点交集被包含,意味着当前入口序列是封闭的(这由Z缓冲检测确定),接着停止在树的当前分枝遍历。步骤913遍历每个分枝以检查节点是否被包含,并且如果它们没有被包含就显示它们。
步骤915接着使用此领域多种已知技术(例如,利用合成的体积着色)之一从步骤913中确认的可见单元里的体积元素建立显示在操作员屏幕上的图像。显示的单元仅仅是那些被确认为潜在可见的。技术限制了单元的数目,为了实现实时显示和为了较好性能而相应的增加显示速度,需要计算这个数目。现有技术计算所有可能可视数据点,无论它们是否实际可视,此技术对于现有技术是一个改进。
图11A是器官的两维入口表示,利用导引行进技术探测所述器官,并且该器官需要显示给操作员。器官1101显示了两侧壁1102和在路径中心的物体1105。器官被分成4个单元A 1151,B 1153,C 1155和D 1157。照相机1103朝向单元D 1157并且有由可视向量1107、1108定义的可视区域,可以确认锥形区域。有可能看到的单元是单元B 1153,C 1155和D 1157。单元C 1155被单元B完全包围并且这样组成了一个节点循环。
图11B是从图11A中生成的试探树图的表示。包含照相机的节点A 1109在树图的根部。视线或者视角,它们是没有被阻挡的可视路径,引向节点B1110。节点B引导可视线到节点C 1112和节点D 1114,并且图中以连接的箭头表示。在照相机观察方向的节点C 1112的视线与节点B 1110联合。节点C1112和节点B 1110将组成图11C中所示的大节点B` 1122。
图11C显示了包含照相机并且与节点B` 1122(包含节点B和节点C)相邻的节点A 1109和节点D 1114。节点A,B`和D将至少展示一部分给操作员。
图12A-12E说明了包含有阻挡视线物体的单元的修正Z缓冲的应用。物体可以是在结肠某部分里的废物。图12A显示了有10个潜在单元的虚拟空间,10个单元为A 1251,B 1353,C 1255,D 1257,E 1259,F 1261,G 1263,H 1265,I1267和J 1269。一些单元包含物体。如果照相机1201位于单元I 1267内并且照相机朝向单元F 1261,如可视向量1203所示。接着根据图9中流程图说明的技术生成试探树。图12B显示了有交集节点的生成试探树,用于显示图12A中所示的虚拟表示。图12B中,单元I 1267是树图的根节点,因为它包含照相机1201。节点I 1211指向节点F 1213(图中的箭头所示),这因为单元F直接与照相机的视线相连。节点F 1213指向节点B 1215和节点E 1219。节点B 1215指向节点A 1217。节点C 1202完全挡开照相机1201视线,由此它不包含在试探树图中。
图12C显示了节点I 1211在显示给操作员中着色后的试探树图。因为节点I 1211已经被显示了,接着它离开了试探树图,节点F 1213成为根节点。图12D表示节点F1213现被描色而与节点I1211相连。接着检查树中由箭头相连的下一级节点,看它们是否已经被包含(已经被处理)。在此实施例中,从位于单元I1267中的照相机的所有相交节点都被包含,这样节点B 1215(并且从而依赖节点A)不需要着色用于显示。
图12E显示了被检查以确定是否包含了其交集的节点E 1219。由于它已经被包含,在图12A-12E的此例中仅仅着色的节点是节点I和F,同时由于节点A,B和E是不可见的,它们不必要准备其单元被检查。
图9中说明的修正Z缓冲技术允许小计算量并且可以应用于由体素或者其他数据元素表示的物体,例如多边形。
图13显示沿其一壁有大息肉的结肠的两维虚拟视图。图13显示将被进一步检查的所选择病人结肠部分。视图显示了两结肠壁1301和1303,肿瘤显示为1305。层1307,1309和1311表示肿瘤的内层。医生可以剥落息肉或者肿瘤的层以观察肿块里面是否有癌症的或者其他有害的物质。这个过程将有效的实行虚拟活组织切片检查而不需要切入组织。一旦体素虚拟地表示结肠,剥落物体的层的过程可以用图4到8中相关说明方法简单的实行。肿块也可以被切片,这样可以检查特定的横截面。在图13中,可以生成平截面1313,这样可以检查肿瘤的多个特定部分。而且,用户确定的切片1319可以在肿瘤中使用任何方法得到。可以如下所述的剥落或者修改体素1319。
转移函数可以在感兴趣区域的每个体素上实行,它可以使物体透明,半透明或者不透明,通过改变表示每个体素的透明度的系数。基于其密度指定不透明系数给每个体素。映射函数接着转化密度值为表示其透明度的系数。扫描体素的高密度将表示壁或者除了简单开放空间的其他密集物质。操作员或者程序将改变一个体素或者一组体素的不透明系数以使它们在潜水艇照相机模型中显示为透明的或者半透明的。例如操作者可以观察整个肿瘤的内部或外部。或者使一个透明的体素显现出来如图9中显示步骤所不显示的。物体部分的合成物可以使用此部分体素不透明系数的加权平均值产生。
如果医生想观察息肉的不同层以寻找癌症区域,可以移除息肉1305的外层,现出第一层1307。而且,第一内层1307可以被剥开以观察第二内层1309。第二内层可以被剥开以观察第三内层1311,等。医生也可以切开息肉1305并且观察仅仅位于期望部分的那些体素。切片区域可以完全由用户确定。
增加不透明系数也可以使用其他方法用于帮助虚拟系统的探测。如果显示废物并且废物有相同于一定已知范围内的其他属性的密度,废物可以通过在检测中改变其不透明系数变成对虚拟照相机透明的。这将允许病人不必在检查手续前服清洗剂并且使检查更快更简单。根据实际应用,可类似地使其他物体不显现。而且,可以通过对比剂接着使用合适的转移函数以电子方式加强一些物体,例如息肉。
图14显示了使用此说明书所述的技术实行物体(例如人体器官)虚拟检查的系统。病人1401躺在平台1402上,同时扫描设备1405扫描包含有被查器官的区域。扫描设备1405包含扫描部分1403,它可以真实的取得病人的图像,设备还包含电子部分1406。电子部分1406包含接口1407,中央处理器1409,用于暂时储存扫描数据的内存1411,和第二接口1413用于发送数据到虚拟行进平台。接口1407和1413可以包含于单个接口元件或者是同一个元件。部分1406中的元件与通常的连接器相连。
在系统1400中,设备1403的扫描部分提供的数据被转移到部分1405用于处理并且内储存在内存1411中。中央储存单元1409转化扫描的2D数据成3D体素数据并且储存结果到内存1411的另一个部分。另一方面,转化后数据还可以直接送到接口单元1413以便转移到虚拟行进终端1416。2D数据的转化可以在从接口1413发送到后在虚拟行进终端1416中实行。在较佳实施例中,转化后数据通过载体1414传送到虚拟行进终端1416,为了便于操作员进行虚拟检查。也可以使用其他传统的方法(例如储存数据到储存媒介并且物理的转移它到终端1416或者使用卫星传送)传送数据。
扫描数据可以不被转化成3D表示直到可视化着色引擎需要它为3D的格式。这节省了计算过程和储存空间。
虚拟行进终端1416包含观察虚拟器官或者其他扫描图像的屏幕,电子部分1415和接口控制1419例如键盘、鼠标或者滚球。电子部分1415包含接口端口1421,中央处理器1423,其他运行终端必要的元件1427和存储器1425。终端1416中元件与通常的连接器相连。转化后体素数据在接口端口1421中收到并且储存在存储器1425里。中央处理器1423接着汇编3D体素为虚拟表示并且运行潜水艇照相机模型以实行虚拟检查,如图2和3所述。当潜水艇照相机通过虚拟器官,图9中所述的可视化技术仅仅计算那些从照相机可以看见的区域并且将它们显示在屏幕1417上。也可以在生成表示中使用图形加速器。操作员可以使用接口设备1419来指示想探测扫描身体的那个部分。界面设备1419还可以用于控制和移动潜水艇照相机,如图2所述和其相应描述所期望的。终端部分1415可以是Cube-4的专用系统包,一般可以从位于Stony Brook的纽约州立大学计算机科学系得到。
扫描设备1405和终端1416,或者其中部分,可以是同一单元的部分。可以使用单一平台接收扫描图像数据,如果必要转化它为3D体素并且实行导引行进。
系统1400中一个重要特征是可以稍后检查虚拟器官而不需要病人在场。而且,虚拟检查可以在扫描病人的同时进行。扫描数据也可以被送到多个终端,这将允许多个医生同时的观察器官内部。这样位于纽约的医生可以与位于加州的医生同时观察器官的同一部分并且讨论病案。还可以在不同时间观察数据。两个或者多个医生可以在不同情况实行他们各自的对相同数据的检查。可以使用多个虚拟行进终端观察同一扫描数据。通过离散数据组以虚拟器官再现器官,在此领域中有很多好处,例如精确性,费用和数据可操作性。
上述的技术可以在虚拟结肠镜检查应用中通过使用改进的电子结肠清洁技术进一步提高。改进的电子检查清洁技术使用改进的肠准备操作,接着图像分割操作,这样在计算机X射线断层造影(CT)或者核磁共振成像(MRI)扫描时留在结肠里的液体和粪便可以检测到并且从虚拟结肠镜成像中移除。通过使用这样的技术,通常的物理清洗结肠,和其相关的不便和不舒服,被最小化或者完全避免。
参考图15,电子结肠清洁的第一步是肠准备(步骤1510),它先于实行CT或者核磁共振成像(MRI)扫描操作,并且它企图使残留在结肠里的粪便和液体的成像属性与充气的结肠内部和结肠壁的成像属性有极大差别。示例的肠准备操作包含在CT或者MRI扫描前一天服250cc剂量的2.1%W/V的硫酸钡悬浮液,例如纽约Westbury的E-Z-EM公司生产的。一天三次并且可以随饭服。硫酸钡用作增强残留在结肠中粪便的成像。除了服硫酸钡,最好在CT或者MRI扫描前一天多喝液体。越桔果汁可以提供较多的肠液体并且最好使用它,尽管也可以喝水。在CT扫描前夜和CT扫描早上,可以服60ml的泛影葡胺甲基葡胺和泛影葡胺钠溶剂(商品名MD-Gastroview,密苏里州St.Louis的Mallinckrodt公司生产)以增强结肠液体的成像属性。可以添加磷酸钠到溶液中以液体化结肠内的粪便,它提供了更加一致的对结肠液体和残留粪便的成像属性的增强。
上述实施例首先的肠准备操作可以避免对通常的结肠清洗规程的需要,通常它需要在CT扫描前服用一加仑Golytely溶液。
实行CT扫描前,静脉内注射1ml高增血糖素,(由印第安纳州印第安纳波利斯的Ely Lily and Company生产)可以控制最小化结肠折叠。接着,使用大约1000cc压缩气体(例如CO2或者室内空气)充气结肠,可以从直肠管引入。在此,进行通常的CT扫描以获得结肠区域的数据(步骤1520)。例如,可以使用GE/CTI螺旋方式扫描器以5mm螺旋模式,1.5-2.0∶1间距重建1mm切片,运行得到数据,其中间距是基于病人的高度以已知方法调节。此操作可以使用120kVp和200-280ma的图像传输协议。可以获得数据并且以1mm厚度切片图像,在观察区域512×512象素的阵列大小(依赖于病人的大小从34cm到40cm不等)重建图像。这些情况下切片的数量依赖于病人的高度从300到450不等。成像数据被转化成体积元素或者体素(步骤1530)。
可以用很多方法实行成像分割。在成像分割的一个现有方法中,使用局部邻接技术根据相似强度值分类图像数据的体素。在此方法中,获得的图像的每个体素参考一组相邻体素计算。感兴趣体素参照中心体素并且有相关强度值。通过比较中心体素的值和它每个邻接的值建立每个体素的分类指示器。如果邻接有与中心体素相同的值,分类指示器的值增加。然而,如果邻接有与中心体素不同的值,分类指示器的值减少。中心体素接着分类为最大指示器值,它指示在局部邻接中最一致的邻接。每个分类指示特定的强度范围,强度范围反过来表示一个或者多个种类的被成像材料。可以使用混合概率函数到得到的近似分类来进一步改进方法。
成像分割的可替换过程是实行下面两个重要操作低层处理和高层特征抽取。在低层处理时,身体轮廓以外的区域不作进一步处理并且身体轮廓内的体素根据很好定义过的强度特征类别进行粗分类。例如,腹部区域的CT扫描生成了一套数据,它往往展示较好定义的强度分布。图16中的图像以示例性柱状图说明了强度分布,柱状图包含四个较好定义的峰值,1602、1604、1606、1608,可以根据强度阈值分类它们。
腹部CT数据组的体素被根据强度阈值粗分类为四个簇(步骤1540)。例如,簇1可以包含强度小于140的体素。此簇一般对应于充气结肠内最低密度区域。簇2可以包含强度值超过2200的体素。这些强度值相应于增强了成像属性的结肠内粪便和液体和骨头。簇3包含强度值在大约900到1080范围里的体素。此强度范围一般表示软组织,例如脂肪和肌肉,它们与结肠没有关联。剩下的体素可以接着分组成簇4,它们与结肠壁(包含结肠壁周围的黏膜和部分体积混合物)和肺组织和软骨有关联。
簇1和3在确定结肠壁中不是特别有用并且从而在虚拟结肠镜检查的成像分割过程中不是属于基本处理。与簇2相关的体素在将粪便和液体隔离开结肠壁中是重要的并且在高层特征抽取操作中进一步处理。低层处理集中于第四簇,它最高可能性相应于结肠组织(步骤1550)。
对于第四簇中的每个体素,使用其本身或者其邻接生成了一个强度向量。强度向量提供了给定体素的周围体素的强度改变的指示。用于建立强度向量的邻接体素的数目不是关键的,但是包含处理代价和精确性之间的权衡。例如,一个简单的体素强度向量可以用七(7)个体素建立,它包含了感兴趣的体素,它的前邻接和后邻接,它的左邻接和右邻接和它的顶邻接和底邻接,在三维正交基中所有围绕着感兴趣体素的体素。图17是说明示例性强度向量以25个体素强度向量模式的透视图,它包含选中体素1702和体素1702的第一、第二和第三次序邻接。选中的体素1702是此模型的中心点并且被看做是固定的体素。体素的平切片,在固定体素所在平面包含12个邻接,称为固定切片1704。在固定切片的邻接平面上是两个最近的切片1706,各有5个体素。邻接第一最近切片1706的是两个第二最近切片1708,各有一单个体素。第四簇里每个体素的强度向量集合称为局部向量序列。
因为腹部图像的数据组包含多于300个切片图像,每个为512×512的体素阵列,并且每个体素与25个体素局部向量相关,期望在局部向量序列上实行特征分析(步骤1570)以减少计算负担。一个这样的特征分析是主要成分分析(PCA),它可以应用于局部向量序列以确定簇4中体素的特征向量序列和正交变换矩阵的维数。
已经了解,CT图像强度的柱状图(图16)趋向对于特定扫描器,给定等量准备和扫描参数,从病人到病人都是不变的。依赖于此观察,可以建立正交变换矩阵,它是一个利用在相似条件下使用相同扫描器得到的许多套试验数据预定的矩阵。从此数据,变换矩阵,例如Karlhunen-Loeve(K-L)变换,可以以已知的方法产生。变换矩阵应用于局部向量序列以产生特征向量序列。一旦在特征向量空间范围,向量量化技术可以用于分类特征向量序列。
可以使用一个解析的自适应算法来分类特征向量。定义此算法中,设置{Xi∈R4i=1,2,3,...,N}为特征向量序列,其中N是特征向量的数目;K表示分类的最大数目;T是适用于数据组的门限。对于每个类,通过算法生成的表示元素。设ak为类k的一个表示元素并且nk是那个类中特征向量的个数。
算法的提纲是1.Set n1=1;a1=X1;K=1;2.获得类数目和类参数(ak,nk)for(i=1;i<N;i++)for(j=1;j<K;j++)计算 dj=dist(Xi,aj);end forindex=arc min dj;if((dindex<T)jor(K=K))更新类参数aindex=1nindex+1×(nindex·aindex+Xi);]]>nindex=nindex+1;end if
else生成新类ak+1=Xi;nk+1=1;K=K+1;end elseend for3.根据最靠近邻接原则给每个特征向量标号for(i=1;i<N;i++)for(j=1;j<K;j++)计算 dj=dist(Xi,aj);end forindex=arc min dj;给体素i标号类indexend for在此算法中,dist(x,y)是向量x和y之间的欧氏距离,并且arc min dj给定整数j,它体现dj的最小值。
上述算法仅仅依赖参数T和K。然而,K的值关于每个体素中分类的数目,它不是关键的并且可以被设置成常量,例如K=18。然而,T是向量相似门限,极大的影响分类结果。如果T的选择值太大,将仅仅只生成一个单类。另一方面,如果T的值太小,结果类将显示不需要的冗余。通过设置T的值与特征向量序列的最大组件偏差相等,得到最大数量的不同的分类。
初始分类过程的结果是,选中簇的每个体素被指定到一个分类(步骤1570)。在虚拟结肠镜检查的实施例中,在簇4中有很多类。这样,下一个任务是确定簇4中几个类中哪个相应于结肠壁。特征向量的第一坐标,它是显示最高偏差的特征向量的坐标,它反映了3D局部体素强度平均信息。特征向量剩下的坐标包含局部邻接里方向强度改变信息。因为结肠内壁体素一般很接近簇1的气体体素,可以通过从典型CT数据组的典型结肠壁强度中所选的数据采样粗分辨结肠壁体素选择物来确定门限间隔。为每个特殊成像协议和设备选择了特殊的门限值。门限间隔可被应用于所有的CT数据组(用相同的机器,使用相同的成像协议获得)。如果表示元素的第一坐标位于门限间隔内,相应的类被认为结肠壁类并且那个类中的所有体素被标为结肠壁类似的体素。
每个结肠壁类似的体素是结肠壁体素的候选物。不是结肠壁有三个可能情况。第一情况关于靠近结肠内粪便/液体的体素。第二种情况当体素位于肺组织区域内时出现。第三种情况表示粘膜体素。接着很清楚,低层分类带来一定的分类不确定性。低层分类不确定性的原因不同。例如,由包含多种材料类型(例如液体和结肠壁)的体素引起的部分体积影响导致第一种不确定。第二和第三中不确定是因为部分体素影响和CT图像的低对比度。为了解决这些不确定,需要额外信息。这样,基于CT图像的先验解剖知识,本方法应用高层特征抽取过程以进一步将结肠壁候选物从其他结肠壁相似体素中分出(步骤1580)。
高层特征抽取过程的初始步骤是从低层分类结果中消除肺组织区域。图18A是示例性的切片图像,清楚的说明了肺区域1802。肺区域1802可以辨认为被结肠壁类似体素包围的一般连续三维体积,如图18B中所示。有此特征,可以使用区域增长策略辨认肺区域。此技术的第一步是寻找增长区域中的种子体素。较佳的,实行CT成像扫描的操作员设置成像区域,这样CT扫描的最顶端切片将不包含任何结肠体素。在肺的内部应该充入空气,低层分类通过简单选择空气体素提供了种子。一旦确定了图18的肺区域轮廓,可以从图像切片中移除肺体积(图18C)。
实行高层特征抽取的下一步是将骨头体素从簇2中增强了成像属性的粪便/液体体素中分开。骨头组织体素1902一般离结肠壁较远并且位于结肠体积外。相反的,残留粪便1906和液体1904包围在结肠体积里。合并先验的近似信息和从低层分类过程得到的结肠壁信息,生成了粗略的结肠壁体积。被多个预定数目(例如,3个)的体素单元从结肠壁和结肠体积外面的分割的任何体素,将标为骨头并且接着从图像中除去。簇2中剩下的体素可以被假定为表示结肠体积里的粪便和液体(参考图19A-C)。
结肠体积中的标为粪便1906和液体1904的体素可以从图像中移除以生成清洁过的结肠内腔和结肠壁图像。一般的,有两种粪便/液体区域。一个区域类型是附着在结肠壁上的小块残留粪便1906区域。另一个区域类型是大体积的液体1904,它们集合在盆状的结肠褶皱里(参考图19A-C)。
附着的残留粪便区域1906可以被确认并且移除,因为它们位于低层分类过程产生的大体结肠体积内部。在盆状的结肠褶皱里的液体1906有一水平的表面1908,因为重力的影响。表面上通常是气体区域,它显示了相对于液体强度非常高的对比度。这样,液体区域的表面界面可以简单的标记。
使用区域增长策略,附着粪便区域1906的轮廓可以被画出,并且远离结肠壁体积的部分可以被移除。相似的,液体区域1904的轮廓也可以被画出。在消去水平表面1908后,结肠壁轮廓也可以展现并且可以得到清洁过的结肠壁。
很难将粘膜体素和结肠壁体素分开。即使上述三维处理可以移除一些粘膜体素,但移除所有的粘膜体素很困难。在光学结肠镜检查中,医生直接的检查结肠粘膜并且基于粘膜的颜色和纹理寻找身体病变。在虚拟结肠镜检查中,结肠壁上的多数粘膜体素可以不理,以保留更多的信息。这多三维体素着色是很有用的。
从分割的结肠壁体积,结肠内表面,结肠外表面和结肠壁本身可以以虚拟物体抽取和观察。在结肠外壁可以和结肠内壁一样检查时,这相对于传统的光学结肠镜检查提供了很大优势。而且,结肠壁和结肠内腔可以分别从切片获得。
因为结肠基本先于成像排空,通常遇到的问题是结肠内腔在许多地方塌陷。尽管用压缩气体(例如空气或者CO2)膨胀结肠,减少了塌陷区域的产生频率,但还是出现塌陷区域。在实行虚拟结肠镜检查中,很希望自动的维持通过塌陷区域的行进路径并且还希望使用扫描图像数据以至少部分的在塌陷区域重新生成结肠内腔。上述的成像分割方法有效的导出结肠外壁和结肠内壁,这信息可以用于增强生成通过塌陷区域的行进路径。
在延伸通过结肠塌陷区域或者扩张结肠塌陷区域的行进路径中,第一步是诊察塌陷区域。在结肠壁外周围得图像数据灰度值比结肠壁本身里面的灰度值改变得快得多,在其他区域例如脂肪,肌肉和其他类型的组织中也一样,利用这种规则,可以使用熵分析来诊察结肠图像区域。
灰度值改变程度,例如沿中心线,可以由熵值表示或者测量。为了计算熵值,选择了结肠壁外表面的体素。从上述的成像分割技术确定了这些点。一个5×5×5的立方窗口应用于这些象素,以感兴趣象素为中心。在计算熵值前,稍小的窗口(3×3×3)可以应用到感兴趣象素,为了从成像数据中过滤噪声。所选择的关于象素的窗口的熵值可以由下等式确定
E=Σic(i)ln(c(i))]]>其中E是熵并且C(i)是灰度值为i(i=0,1,2,...,255)的窗口中点的数目。计算得到的每个窗口的熵值接着与预定的门限值比较。对于空气区域,当与组织区域比较时,熵值将很低。从而,沿结肠内腔中心线,当熵值增加并且超过预定的门限值,显示了塌陷区域。门限的确切值并不关键并且将部分依赖成像协议和特定成像设备。
一旦诊察到塌陷区域,以前确定的中心线行进路径可以通过一个体素宽的行进线穿过塌陷区域中心延伸通过这些区域。
除了自动延续虚拟照相机通过结肠内腔的行进路线,通过使用物理建模技术,结肠塌陷区域可以虚拟的张开,可以产生结肠壁的物理属性的模型。从此模型,估计了拉格朗日等式中的运动参数,物质密度,阻尼密度,拉伸系数和屈服系数。接着,根据结肠的弹性属性,用公式表达了扩张力模型(即,泵入结肠的气体或者液体,例如空气)并且应用,如拉格朗日等式所定义的,这样结肠成像的塌陷区域被还原成自然形状。
为了模拟结肠,可以在结肠内腔的塌陷区域或者障碍区域使用有限元模型。这可以通过将元素以规则的网格状分布,例如一个8体素小长方块,接着使用传统的体积着色技术。可替换的,不规则体积表示方法,例如四面体可以应用于塌陷区域。
在应用外力(空气泵入)模型到结肠模型中,首先确定的外力的大小以便合适的分割塌陷结肠壁区域.。可以使用三维增长模型以平行方式描绘结肠壁内表面和结肠壁外表面。从塌陷区域的起始点到增长源点,标记各自表面,并且力模型被用于扩张表面到自然方式。外表面和内表面之间的区域,即结肠壁,分类为共享区域。外部排斥力力模型应用于这些共享区域以分割并且扩张塌陷结肠壁部分到自然状态。
为了更清楚的可视化虚拟物体(例如虚拟检查中的结肠)的特征,提供物体以不同纹理着色是很有利的。可以光学结肠镜检查中显示的色彩图像中观察到的这些纹理,常常在CT图像数据提供的黑色和白色的灰度图像中丢失。从而在虚拟检查中需要纹理成像的系统和方法。
图20是说明生成有纹理成分的虚拟物体的现有方法的流程图。此方法的目的是根据灰度单色CT图像将光学结肠镜检查得到的纹理转换为红绿蓝(RGB)色彩空间,如从人体中看到的,以生成虚拟物体。用传统的数字成像获得技术得到光学结肠镜检查图像,例如数字“画面强取者”1429从照相机(例如视频照相机)接收模拟光学图像,并且转化图像为数字数据,此数字数据可以通过接口端口1431(图14)提供给CPU 1423。此过程的第一步是分割CT成像数据(步骤2010)。上述的图像分割技术可以应用于在灰度图像中选择强度门限以归类CT图像数据为不同的组织类型,例如骨头,结肠壁组织,空气,或者其他。
除了在CT图像数据上实现成像分割,也需要从光学图像数据中抽取光学图像的纹理特征(步骤2020)。为此,可以应用高斯滤镜到光学图像数据,接着二次采样以分解数据为多解金字塔,也可以应用拉普拉斯滤镜和可控的滤镜到多解金字塔以获得有方向和无方向数据特征。此方法在抽取和获得纹理特征方面有效,实施此方法需要大量的内存和运算处理能力。
从光学图像中抽取纹理特征的另一个方法是利用子波变换(wavelettransform)。然而,子波变换一般计算方面有效率,通常的子波变换限于仅仅捕获方向平行于轴的特征并且不能直接应用于感兴趣区域。为了克服这些限制,可以使用无分割滤镜。例如,可以应用上升计划以在任何维数建立子波变换的滤镜组,使用以下两步,预报和更新方法。可以使用多维多项式插值的Boor-Rom算法合成这样的滤镜组。
从光学图像数据中抽取纹理特征后,必需生成模型以描述这些特征(步骤2030)。这是可行的,例如,使用基于估计和操作可归因于自然纹理的非高斯熵分布的无参数多标度统计模型。
一旦从光学图像数据生成了纹理模型,必需实行纹理匹配以将这些模型与分割的CT图像数据相关(步骤2050)。在纹理是连续的CT成像数据区域,匹配纹理分类简单。然而,在两个或者多个纹理区域的边界区域,处理较复杂。边界区域周围的CT数据分割常常导致失真数据,即结果反映了从每个物质或者组织的纹理百分比并且依赖每个的不同加权而不同。加权百分比可以应用来调节匹配准则的重要性。
在无参数多标度统计模型的情况时,交叉熵或者Kullback-Leiber发散算法可以应用于测量边界区域里不同纹理的分布。
在纹理匹配后,在CT图像数据上实行纹理合成(步骤2050)。通过融合从光学图像数据得到的纹理到CT图像数据里。对于等方性纹理模型,例如骨头所呈现的,可以直接从光学数据到分割的CT图像数据采样纹理。对于非等方性纹理,例如结肠粘膜,适宜使用多解采样过程。在此过程,使用对同种和异种区域的选择性再采样。
体积着色除了上述的图像分割和纹理映射,可以使用体积着色技术到虚拟检查镜检查过程中以进一步增强结果图像的保真度。图21说明了透视的体积射线投射方法,此方法可以应用于根据本发明的体积着色中。从选择的虚拟视点,例如照相机位置,例如位于结肠内腔,射线通过每个最近图像象素投射(步骤2100)。对于每束射线,沿射线设置第一采样点为当前图像象素(步骤2110)。接着确定当前采样点和最近结肠壁之间的距离(d)(步骤2120)。将当前距离(d)与预定的采样间隙(i)比较(步骤2130)。如果距离(d)比采样间隙(i)大,则不采样并且沿射线的下一个采样点确定为沿射线跳过距离d。如果距离小于或者等于采样间隙(i)则通常的采样是在此点实行(步骤2150)并且下一个采样点根据采样间隙(i)确定(步骤2160)。例如,可以在8个相邻体素的密度值中实行三线插值以确定在采样点的新密度值。
图21的方法有效的加速了射线投射,因为使用了空间跳跃技术以快速的沿成像平面到结肠壁的射线跳过空区域。在此方法中,沿每束射线确定从采样点到最近结肠壁之间的距离。如果此距离大于如果距离比预定的采样间隙(i)大,则实行沿射线跳到下一个采样点。由于从应用于虚拟照相机控制的势场可以得到最近距离信息,不需要额外的编码计算。在此情况,表面着色和Z-缓冲变换都不需要,这节省了预处理时间和储存空间。
另一方面,空间跳跃方法可以从相应表面着色图像的Z-缓冲产生每束射线的距离信息。如果表面着色图像和体积着色图像都将产生,由于已经作为表面着色方法的结果提供Z-缓冲信息,此方法提供了最小的处理代价。这样,空间跳跃方法的形成仅仅需要额外处理实行从成像空间区域到整个空间区域的深度变换。
对于沿射线的距离(d)已经在步骤2140中被越过的那些区域,沿射线的区域相应于开放空间并且可以根据开放空间转移函数指定其一个值。典型的,开放空间将不影响最终象素值。对于每个进行采样的点,可以应用一个或者多个限定的转移函数来映射原始体积数据采样值的不同范围到不同颜色和不透明度和其他可能的显示参数。例如,应用四个独立转移函数通过映射CT密度值范围到特定RGB颜色和不透明度(RGB颜色中每种原色的值在0到225之间)以确定不同材料。
虚拟活组织切片检查上述的技术也可以形成实行被检查区域的虚拟电子活组织切片检查以实行灵活的并且非侵入的活组织切片检查的系统的基础。如上所述,体积着色技术使用一个或者多个确定的转移函数来映射原始体积数据采样值的不同范围到不同颜色和不透明度和其他可显示的用于导引行进和观察的参数。在导引行进中,所选择的转移函数一般指定最大不透明度给结肠壁,这样可以轻易的观察外表面。一旦在虚拟检查中诊察到怀疑区域,医生可以在体积着色中交互的改变变换函数,这样观察的外部表面变得基本透明,允许了合成区域信息并且这样可以观察区域的内部结构。使用一定数量的预定转移函数,可以以一定数量的不同深度观察怀疑区域,在这个过程中可以指定不同的不透明度。
息肉诊察本系统和方法可以应用于实行自动的息肉诊察。参考图13,例如在结肠中出现的息肉1305,一般的是从结肠壁1301上的小凸起象小山的结构。它的几何特征与结肠壁褶皱不同。这样,可以使用不同的几何模型来诊察结肠壁上的息肉。
结肠内腔表面可以表示为三维欧氏空间里二阶可微的连续表面,例如使用C-2平滑表面模型。此模型在“Modern Geometry Methods and Application”,(B.A.Dubrovin等著,Springer-Verlag于1944年出版)中描述,这里引用全部文章作参考。在此模型中,结肠表面的每个体素都相关于有高斯曲率的几何特征(成为高斯曲率领域)。表面上的凸起,可能预示息肉,有高斯曲率领域独特的局部特征。相应的,通过寻找特定表面局部特征的高斯曲率领域,可以诊察息肉。一旦诊察到,受怀疑的息肉可以着重显示并且这样吸引了医生的注意,医生可以测量受怀疑的息肉并且使用上述的虚拟活组织切片检查方法来进一步调查研究被怀疑区域。
中心行进路径的生成在虚拟结肠镜检查中,确定合适的通过结肠内腔的导引行进线,或者行进路径,是所述系统和方法的重要方面。虽然参考图4-8讨论了此类确定虚拟照相机模型的行进路径的技术,但图22说明了生成通过结肠内腔的中心行进路径的另一个方法。当例如通过上述的图像分割方法确定结肠壁后,可以使用体积收缩算法以强调结肠内腔的趋向并且减少其后的在内腔体积里搜索时间(步骤2310)。
图23进一步说明了示例性体积收缩算法的步骤,此算法基于多解分析模型。在此过程中,由一栈有相同矩阵大小的二进制图像表示三维体积(步骤2310)。这些图像共同形成了一套二进制数据。可以应用离散子波变换到这套二进制数据,将产生一定数量的表示二进制数据的不同时间—频率成份的子数据。例如,离散子波变换可以产生8套子数据。将子数据与一定的阈值比较,这样确定了最低频率成份(步骤2330)。这个成份为后续的离散子波转换和定阈值步骤形成二进制数据组,该数据组被递归的施加到多解结构中(步骤2340)。在虚拟结肠镜检查中,离散子波变换和相关定阈值可以递归的三次应用于其后的表示最低频率成份的子数据(3级多解分解)。
回到图22,从缩减后的结肠体积模型,可以应用距离映射技术以生成结肠两端之间的最短路径,即从直肠到盲肠(步骤2215)。结果路径保持了结肠内腔的整体趋向信息,但忽略了局部褶皱显示的趋向。可以通过映射最短路径回原始数据空间确定整个结肠里的控制点(步骤2220)。例如,3级多解分解中,缩减体积是原始体积的1/3并且已知的仿射变换可以应用于准确的映射缩减体积模型回原始度体积。也可以映射缩减值的最短路径回原始标度体积,作为一系列点,这些点可用作结肠内的控制点。
较佳行进路径是在结肠内腔中心线的路径。然而,初始控制点可能不是准确位于结肠内腔中心线。这样,初始控制点可以居中,例如使用二截面平面算法(步骤2230)。例如,在每个选择的控制点二截面平面可以定义为与趋向方向垂直并且横截结肠内腔的平面。集中算法,例如最大圆盘算法,可以应用于每个二截面平面。这样的算法在文章“On the Generation of Skeleton from DiscreteEuclidean Distance Maps”(Ge等著,IEEE学报关于PAMI,Vol.18,pp.1055-1066,1996)中讨论,这里引作参考。
一旦控制点靠近中心,可以通过用线连接这些点确定行进路径(步骤2240)。在虚拟结肠镜检查中,希望连接这些点的线是平滑的并且基本在结肠内腔里居中。可以使用约束的三次B样条插值算法(基于微分几何理论里Serret-Frenet法则)建立合适的平滑曲线行进路径,在“Numeriacl Recipes in CThe Art ofScientific Computing″(Press等著,第二版,剑桥大学出版社,1992)中说明。
图24中分割的结肠内腔的图示和图25中的流程图提出了根据本发明的另一个生成行进路径的方法。在此可替换方法里,首先沿内腔2400的长方向将结肠内腔2400的图示分成一定数目的部分2402a-g(步骤2500)。从每个部分2402里选择了2404a-g作为代表点(步骤2520)。接着参照结肠壁使每个代表点2404a-g靠近中心(步骤2530),例如使用基于物理的可变形模型,此模型用于将点推到各自部分的中心。代表点居中后,连续的连接这些点以建立虚拟照相机模型中心线行进路径(步骤2540)。如果分割部分长度足够小,可以用直线段2406a-g连接这些中心点。然而,当应用线性曲线拟合技术来连接这些中心点时,可以得到平滑连续行进路径。
通过应用如图14所述的系统,使用控制CPU1409和CPU1423运行的合适软件,可以实行前述的每个方法。
适合于在个人电脑上实行的可替换的具体硬件实施例,在图26中说明。系统包含处理器2600,处理器应该是高速多任务处理器,例如时钟频率超过400MHZ的PIII处理器。处理器2600与通常的总线结构2625耦合,总线结构提供高速并行数据传输。存储器2630,图形卡2640,和体积着色卡2650也与总线结构2625耦合。图形卡2640最好可以实行纹理映射,例如DiamondMultimedia Systems生产的Diamond Viper v770图形卡。体积着色卡2650可以是三菱电子生产的VolumePro卡,其基于美国专利号Nos.5,760,781和5,847,711,这里引用仅作参考。显示设备2645,例如传统的SVGA或者RGB显示器,它与图形卡2640耦合以显示图像数据。还提供扫描器接口卡2660以接收成像扫描器(例如MRI扫描器或者CT扫描器)的数据,并且发送这些数据到总线结构2625。扫描器接口卡2660可以应用所选择成像扫描器的专用接口产品或者可以是一般用途的输入/输出卡。基于PC的系统2600一般将包含用于耦合I/O设备2680到处理器2620的I/O接口2670,I/O设备2680例如键盘,数字化指示器(例如,鼠标)和其他类似的。可替换的,I/O接口可以通过总线2625与处理器耦合。
在三维成像情况时,包含纹理合成和体积着色,需要大量的数据处理和运算。对于大的数据,例如那些表示结肠内腔和其包围区域的数据,这样的处理可能很消耗时间和内存。然而,使用根据图27流程图说明的处理方法的图26所示布局,这样的操作可以在相对低廉的个人电脑(PC)上实行。处理器2620通过扫描器接口卡2660和总线结构2625接收成像数据并且储存数据于主存2630。图像数据(象素)被转化为体积元素(体素)表示(步骤2710)。体积表示,它储存于主存2630里,被划分成,例如切片,例如沿主体积轴或者被成像区域的其他部分(步骤2720)。接着发送体积部分到体积着色卡并且暂时储存于体积着色存储器2655中以便体积着色操作(步骤2730)。本地着色储存器2655的使用提高了运行速度,这是由于当着色整个体积的每个切片时不必要在总线2625上交换数据。一旦每个切片的体积着色都完成,发送着色后数据回到主存2630或者发送到连续缓冲器里的图形卡2640(步骤2740)。使用感兴趣的切片都着色后,图形卡2640处理连续缓冲器的内容以在显示单元2645上显示(步骤2750)。
前面仅仅说明了本发明的主要部分。应该认识到,本领域技术熟练人员将可以具体实施本发明的主要部分,并且尽管这里没有明确显示或者说明,在由本发明权利要求书所限定的本发明的精神和范围内,可以设计许多系统、设备和方法。
例如,这里所述的方法和系统可以应用于虚拟检查动物,鱼类或者无生命物体。除了在医疗领域使用,本技术应用可以应用于检查不能被打开的封装物体的内容。此技术还可以被用于建筑结构内,例如建筑物或者洞穴并且可以使操作员可以在结构里导引行进。
权利要求
1.一种实行虚拟结肠内腔检查的方法,其特征在于,所述方法包含在检查内腔内选择观察点;从所述观察点投射射线通过每个图像象素;确定沿每束射线从观察点到结肠壁的距离;如果距离超过采样间隙,则沿射线跳过所述距离并且给沿射线在所述距离上的点指定一开放空间转移函数;如果所述距离不超过采样间隙,则采样此象素并且根据转移函数确定其值。
2.一种实行虚拟结肠内区域的活组织切片检查的方法,其特征在于,所述方法包含给所述区域指定一初始转移函数以在结肠里导引行进;使用所述初始化转移函数实行体积渲染着色;观察区域;动态的改变转移函数以有选择的改变观察区域的不透明度;以及使用所述改变后转移函数实行体积着色。
3.一种诊察由多个体积单元表示的虚拟结肠的壁上的息肉的方法,其特征在于,所述方法包含将所述结肠壁表面表示为二阶可微的面,其中每个表面体积单元有其相关的高斯曲率;在高斯曲率中寻找局部特征;以及从结肠壁表面将有相应于象小山小凸起的局部特征分类为息肉。
4.如权利要求3所述的方法,其特征在于,所述方法包含在分类为息肉的结肠表面区域实行虚拟活组织切片检查的步骤。
5.如权利要求4所述的方法,其特征在于,所述实行虚拟活组织切片检查的步骤包含给所述区域指定一初始转移函数以在结肠里导引行进;使用所述初始化转移函数实行体积渲染着色;观察区域;动态的改变转移函数以有选择的改变观察区域的不透明度;以及使用所述改变后转移函数实行体积渲染着色。
全文摘要
一种利用体积可视化技术生成物体(例如器官)三维虚拟图像并且利用导引行进系统探测图像的系统和方法,为了例如诊察可视化器官中的息肉,囊肿或者其他异常特征,它允许操作员沿行进路径观察并且可以调整视线到感兴趣图像的特定部分。也可以在确定的可视化物体里肿瘤或者块上实行电子活组织切片检查。改进的行进路径生成方法和体积着色技术提供了对导引行进通过感兴趣区域并对此区域进行检查的增强。
文档编号G06T15/00GK1900975SQ20061012150
公开日2007年1月24日 申请日期2000年3月17日 优先权日1999年3月18日
发明者A·E·考夫曼, 梁正荣, M·R·韦克斯, 宛铭, 陈冬青 申请人:纽约州立大学研究基金会