数据处理装置和数据处理方法

文档序号:6611809阅读:137来源:国知局
专利名称:数据处理装置和数据处理方法
技术领域
本发明涉及用于相互比较图片图像的技术,并且更具体地涉及用于对3D 图像执行配准(registration)的数据处理系统、数据处理方法和程序。
背景技术
图像配准方法是用于使两个3D图像(CT、 MRI等)同时作为用于相同 对象的输入、并且对它们进行配准的图像处理方法。用于该目的的图像处理 需要长时间计算。特别在医疗情况下,需要加速图像配准方法。图像配准方法获得线性变换参数,用于使在受到线性变换(旋转和平行 移动)的基准图像和运动图像之间的相互信息对于两个输入图像F (固定图 像)和M (运动图像)为最大的顺序优化问题(非专利文献l)。在图像配准 方法中,如果计算输入图像的所有像素,则在该计算中需要显著的时间。因 而,通过随机采样包括在图片图像中的像素数据来计算相互信息。结果,在 传统图像配准方法中,由像素的单元产生对主存储器稀疏的(sparse)存储器 访问模式。通常,允许主存储器有效地处理的访问单元是高速緩沖存储器线尺寸、 基于像素的空间访问是阻碍改进处理速度的因素的。作为包括离散访问的值 的计算,用于压缩主存储器中的离散数据的压缩方法是本领域中公知的。通 常,离散数据的访问模式依赖于应用算法或输入数据。因此,在现有的压缩 方法中,预测离散访问的模式并且压缩数据。因此,为了允许现有预测离散访问的模式的压缩方法以展现其效果,在 实际数据访问之前的足够时间需要预测访问模式。另一方面,如果不能在实 际数据访问之前立即预测访问模式,则不能获得足够的处理效果。这是个问 题。当处理算法加速并且用于进行立即预测的时间受限制时,该问题可能更 频繁地发生。在此情况下,用于改进图像配准方法的处理速度的访问模式可 能妨碍图像配准方法的处理速度的改进。用于匹配医疗图像的系统已经是公知的。例如,公开的未审专利申请No.2006-55432(专利文献1 )公开了用于对相同对象执行X射线CT检查的系统。 公开的未审专利申请No. 2006-20937 (专利文献2 )公开了用于对在不同时间 测量的医疗图像正确地进行配准的方法和装置。[非专利文献 1] P.Thevenzand M.Unser , " Optimization of Mutual Information for Multiresolution ImageRegistration" , IEEE Transaction on Image Processing, 9(12) 2000年12月。[专利文献1]公开未审专利申请No.2006-55432[专利文献2]公开未审专利申请No.2006-20937发明内容[本发明要解决的问题]本发明涉及提供用于改进图像配准方法的处理速度的数据处理装置、数 据处理方法和其程序。 [本发明概述]鉴于上述传统技术中的问题适用本发明。该图像配准方法在执行时像对 用于像素数据的数据访问模式具有自由。3D图像具有在与2D图像的平面垂直方向受到互相配准的多个2D图像 (下文称为切片(slice))的结构。块被分配到作为2D图像的切片,以便处 理3D图像为具有合适数据大小的各单元块的流。分配到块的像素数据作为 相互信息计算的处理对象的像素数据被寄存到主存储器。当寄存像素数据时, 要被处理的图像数据被存储为具有数据大小和结构的格式,该图像数据由局 部存储器和主存储器之间的传输单元可访问。此后,通过串行访问局部存储 器从主存储器中提取处理对象的像素数据。提取入局部存储器的像素数据被 随机采样并且临时存储在主存储器中作为可串行访问块数据。存储在主存储器中的块数据被提取入局部存储器用于相互信息计算。要 被访问用于相互计算的像素数据作为各单元块的流被提取入局部存储器用于 运动图像,所述运动图像是配准的对象,并且被提供用于相互信息计算。传统上,存在一个问题,其中固定图像能够被串行地提取,而运动图像 要求离散存储器访问。如上所述,通过在数据处理装置实现时进行相互信息 计算期间,消除对主存储器的离散数据访问减轻该问题,该数据处理装置使 得固定图像被划分并且采样以改进在提取对象图像(使串行存储器访问成为可能)中的效率。结果,根据本发明的数据处理装置能够实现高效存储器访 问并且加速配准处理。对作为存储在局部存储器中的各单元块的流的像素数据执行相互信息计 算。第一方面,相互信息计算中使用的像素数据用获得的线性变换参数决定 运动图像的边界框,并且包括在边界框中的像素数据被提取到局部存储器并 且执行。在本发明中,可以决定块组的大小使得固定图像的各块组的像素数 目和运动图像的边界框可是局部存储器中容纳的最大限度,以最大化效率存 储器访问效率。第二方面,随着线性变换参数的精度被改进,即使像素数据 没有被提取到局部存储器,通过使用近似像素数据而不访问主存储器,也获 得要在相互信息计算中使用的对象数据的像素数据作为外推值。在本发明中,要处理的图片图像,即固定图像和运动图像,减小它们的 分辨率使得连续降低分辨率。然后从低分辨率图片图像开始处理,并且设置 决定的线性变换参数为用于下一级中具有更高分辨率的图片图像处理的默认 参数。因为下一级中的配准处理使用对于具有较低分辨率的图片图像优化的 线性变换参数为默认值,所以下一级的配准处理能够改进线性变换参数的配 准精度。在本发明中,当处理对象的图片图像的采样率低于设置值时,通过切换相互信息计算和推测地(speculatively)预测运动图像的图像执行相互信息计 算。当推测地预测的运动图像的像素数据之前被提取到主存储器时执行相互 信息计算。在此方面,当推测失败时,通过使用近似像素数据的外推法,从 之前提取的像素数据获得要在相互计算中使用的像素数据,并且被提供用于 相互信息的计算。如上所述,在本发明中,能够通过用要在相互信息计算使用的被提取到 局部存储器的像素数据,消除对主存储器的离散访问来执行相互信息计算。 这能够改进相互信息计算中的并行处理,以进一步改进配准中的处理效率。本发明也能应用于其中在访问前不能立即正确预测用于运动图像的像素 数据的访问模式的情况。结果,这能够减轻权衡(tradeoff)问题,因为传统 地用于改进相互信息计算的处理效率的像素的离散采样相反限制了相互信息 计算的效率。


图1是显示数据处理装置的硬件配置的实施例的图;图2是显示数据处理装置的功能块的实施例的图; 图3是由数据处理装置执行的处理的实施例的流程图; 图4是显示低分辨率配准器的功能块的实施例的图; 图5是低分辨率配准器的处理的实施例的流程图; 图6是显示3D图像的数据结构的实施例的图; 图7 (a)、 (b)是显示在局部存储器中映射像素数据的实施例的图; 图8(a)、 (b)是显示用于关联在块中的像素数据到边界框的线性变换 的实施例的图;图9是显示高分辨率配准器的功能块的实施例的图;图10是具有高分辨率的配准器的处理的实施例的流程图;图11是显示其中由像素的单元确定预测误差的另一个实施例的图;图12是在图10中点A之后的处理的流程图;图13是显示比较本发明的配准器和使用传统处理的配准器的性能的结 果的图;以及图14是显示比较本发明的配准器和使用传统处理的配准器的性能的结 果的图。符号的描述10数据处理装置12中央处理单元(CPU)14主存储器16单元处理器18局部存储器20DMA22系统总线24图形驱动器26网络设备(NIC)28显示设备30I/O总线桥32I/O总线34存储设备36输入/输出i 40固定图像42运动图l象44至48:下采样处理部分 50至56:配准器 58至62:下采样处理部分64:线性变换参数70:块采样部分72:相互信息计算部分74:优化处理部分76:线性变换参数80:3D图像82:切片84:块86:角像素88:区域90:区域92:边界框94:角像素96:像素数据98:像素数据10():随机采样部分10:i:运动图像预测部分k相互信息计算部分麼K优化处理部分10〖"线性变换参数P:线性映射具体实施方式
尽管将参照在附图中显示的特定实施例描述本发明,但本发明不限于附 图中显示的实施例。图1显示数据处理装置10的实施例。图1中显示的数据处理装置10大 致适于做如个人计算机或工作站的计算机设备。图1中显示的数据处理装置10包括中央处理单元(CPU) 12和用于存储由CPU 12使用的数据的主存 储器14。主存储器14由如DRAM的固态存储器设备形成,用于从存储设备 34读出由数据处理装置IO在处理中使用的数据,存储该数据并且将该数据 提供给CPU12。在本实施例中,数据处理装置10具有512MB的容量。可用。在本实施例中,CPU12适于做对称多核心处理器。适于做多核心处理 器的各单元处理器16由高速总线互相连接用于执行并且行处理。各单元处理 器16的每一个还包括通用处理器核心和多个适用于图像处理的SPE(协作的 处理元件)。在本实施例中,单元处理器16包括八个SPE。每个单元处理器 16中的SPE管理256KB的局部存储器18,改进并且行处理的特征。局部存 储器18可以由如处理器的L2的普通高速緩冲存储器组成。每个SPE包括 DMA (直接存储器访问)20用于使得能够高速访问主存储器14中存储的数 据。CPU 12连接到数据处理装置10中的其它设备或驱动器,例如,经由系 统总线22连接到图形驱动器24和网络设备(NIC) 26。图形驱动器24经由 总线连接到显示设备28用于在显示屏幕上显示由CPU 12的处理结果。网络 设备26将数据处理装置10连接到使用适合的通信协议(如TCP/IP )的网络。I/O总线桥30进一步连接到系统总线22。在I/O总线桥30的下游 (downstream),存储设备34 (如硬盘、CD-ROM 、 CD-RW 、 DVD、 MO )经 由I/O总线32 ( PCI和USB )和各接口 (如IDE、 ATA、 ATAPI、串行ATA、 SCSI)连接。输入设备36 (如键盘和鼠标)经由总线(如USB)连接到I/O 总线32,用于使能用于数据处理装置10的配准条件设置和各种命令的输入。更具体地,作为数据处理装置10的CPU 12,单元BE处理器(注册商 标)(时钟频率3.2GHz,主存储器二512MB, 8SPE,每个SPE的局部存储器 256KB)是公知的。此外,如PENTIUM (注册商标)到PENTIUM (注册商 标)IV、兼容CPU、 POWER PC (注册商标)的PENTIUM (注册商标)的 CISC或RISC芯片是已知的。作为要被使用的操作系统(OS), MacOS(注册商标)、Windows (注册 商标)、Windows (注册商标)200X服务器、UNIX (注册商标)、AIX (注册 商标)、LINUX (注册商标)或其他适合的OS是已知的。数据处理装置10 存储并且执行使用传统编程语言或在上述OS上操作的面向对象编程语言(如 汇编语言、C、 C++、 Visual C++、 Visua旧asic、 Java (注册商标)、Perl、 Ruby) 写的应用程序,用于使能数据处理。图2显示图1中图示的数据处理装置IO的各功能块和各功能块之间的数 据流的实施例。如图2中所示,分别将固定图像和运动图像输入数据处理装 置10中。固定图像40是通过图像配准方法的配准中的基准的图像,包括过 去为预定病人获得的X射线照片、X射线CT图像、MRI图像等。运动图像 42被定义为要根据固定图像40受到配准的图像。运动图像42包括在获得固 定图像40之后捕获或记录的X射线照片、X射线CT图像、MRI图像等。在 本发明中,受到配准的图片图像的类型或属性不特别限制。固定图像40和运动图像42被创建为3D图像,其中多个切片通过使用 2D图像作为单元切片提供具有特定深度的部分。固定图像40和运动图像42 被存储在存储设备30 (如硬盘设备、CD-ROM、 CR-RW、 DVD、 MO等)中, 响应于处理请求被读出到主存储器14中并且由数据处理装置10在处理中使 用。数据处理装置10包括多个下采样处理部分。下采样处理部分44至48 和下采样处理部分58至62的每一个用作用于提取要处理的图片图像的像素, 并且以软件方式减小像素的分辨率的下采样处理装置。每个下釆样处理部分 用用于相同处理级的相同分辨率比率执行下采样,以便为固定图像40和运动 图像42提供具有对应的较低分辨率的图片图像。如同减小处理部分在每个处理级执行如上所述的相同处理,下面将描述 用于减小固定图像40的下采样处理部分44至48。如图2中所述,假设具有 原始分辨率的固定图像40具有X x Y像素。下采样处理部分44创建具有原 始像素数量的1/4的固定图像。下采样处理部分46创建固定图像,其是将由 下采样处理部分44创建的图像压缩至原始分辨率的1/16的低分辨率图像。 下采样处理部分48创建固定图像,其是将由下采样处理部分46创建的图像 压缩至原始分辨率的1/64的低分辨率图像。因此,在图中所示的实施例中,数据处理装置10创建图片图像,其以1(原始分辨率)—1/4—1/16—1/64的分辨率列降低分辨率。图片图像的像素数据被临时写入主存储器14中。写入主存储器14中的图片图像被举出到下述的各配准器的每一个并且被用于配准处理。在本发明中,并且不特别限制 要实现的下采样处理部分的数量。类似地,通过应用类似或相同的下采样处理部分58至62到运动图像42,用与创建固定图像40相同的分辨率比率创 建低分辨率图像,并且该固定图像40被存储在主存储器14中。当下采样处 理部分58至62实现与下釆样处理部分44至48分离时,对固定图像40和运 动图像42的减小处理能够实现为并且行处理。因而,本实施例在处理效率上 是优选的。在本实施例中,像素数据的采样时机的数量假设为原始分辨率中的像素 的总的数量的1/100。如此,当减小分辨率时,如果分辨率变为1/4、 1/16或 1/64,则通过增加用于具有每个分辨率的图片图像的采样率执行处理,使得 采样时机的数量保持为4/100、 16/100、 64/100。即,通过增加用于具有较低 分辨率的图片图像的采样率并且减少用于具有较高分辨率的图片图像的采样 率执行该处理,以保持要被处理的像素数量。为了处理效率和每个处理级中 的特定使用,采样时机的数量可以被适当地改变。数据处理装置10对一系列 创建的分辨率被减小的图片图像从低分辨率图片图像依次开始图像配准处 理。数据处理装置IO根据要处理的图像配准的采样率应用不同类型的采样处 理和不同类型的相互信息计算方法。数据处理装置IO设置由配准处理获得的线性变换参数为默认参数,该线 性变换参数对配准处理的每个处理级降低一级,除了第一级之外。因此,线 性变换参数(如仿射变换参数)在配准精度中依次被改进。因而,有效配准 方法被应用于分辨率被减小的图片图像的处理。数据处理装置10能够使用用 于推测地压缩运动图像的像素的配准方法,为该运动图像在具有预定的采样 率的处理级计算相互信息,对该预定的采样率改进了参数精度。在该级,改 进了线性变换参数的配准精度,即使像素数据被推测地获得并且压缩。因此, 局部存储器18中数据的未中的数量能够被降低。即使数据是未中,也能够通 过从压缩的运动图像的像素数据外推来被处理。在本实施例中,能够由其它 推测消除离散访问。同样在本实施例中,为预测值设置误差定义值并且访问 主存储器14,而当误差超出误差定义值时对精度更重视。对于第一级,能够 从存储在输入/输出设备36或存储设备34中的各值获得默认值。将描述图2中所示的參:据处理装置10。婆:据处理装置10包括配准器50 至56,每个用作根据图片图像的分辨率的配准装置。配准装置50至56被排 序为对应于各自处理级的Ro至Ra。配准装置50至56用作以软件方式形成 的配准装置。在图2中所示的特定的实现中,在配准器50至56中配准器50 和配准器52的每一个被形成为具有较低分辨率的配准器,其对具有较低分辨 率的图片图像应用块采样,提供第一配准装置。配准器54和配准器56的每一个提供第二配准装置,作为用于处理具有 高分辨率的图片图像的高分辨率配准器。具有高分辨率的配准器54、 56通过 使用随机采样和探测的方法执行配准处理。从配准器52至配准器54,在更 低一级的配准器决定的线性变换参数被设置为默认参数。用于最后级的配准 器56输出用于数据处理装置10的线性变换参数64,以最终在配准中使用。在本发明中,并且不特別限定具有低分辨率的各配准器和具有高分辨率 的各配准器的数量和组合,并且为了特定用途可以增加或减少它们,可以适 当地设置它们的组合。图3显示由数据处理装置IO执行的处理的实施例的流程图。图3中所示 的处理在步骤S100开始,并且在步骤SIOI,将固定图像和运动图像输入下 采样处理部分,创建具有不同分辨率的多个图片图像并且将它们写入主存储 器14中。在步骤S102,激活最低级的配准器50,用于使得它通过使用具有 最低分辨率的图片图像计算线性变换参数的粗略近似值。在步骤S103,通过 使用参数的粗略近似值作为配准器的默认值计算图片图像的相互信息,该配 准器执行具有更高一级的分辨率的处理,并且决定线性变换参数。在步骤S104,通过使用在前一级计算的线性变换参数计算用于具有较高 分辨率的图片图像的相互信息,进一步更新线性变换参数并且改进线性变换 参数的配准精度。在步骤S105,确定接下来要处理的图片图像的采样率是否 大于预设值。如果在步骤S105的确定确定采样率大于预设值(是),则对其 只使用块釆样的参数的更新在步骤S107保持。如果确定采样率没有达到设置 值(否),在本发明的特定实施例中,在步骤S106,执行使用随机采样和像 素数据的推测的提取的配准处理。在步骤S108,确定是否处理具有原始分辨率的图片图像。如果作为在步 骤S108的确定结果确定具有原始分辨率的图片图像已经被处理(是),则此 时的参数被寄存为输出参数。如果在步骤S108的确定确定具有原始分辨率的图片图像没有被处理(否),则分支处理到步骤S105以继续处理。对于具有 原始分辨率的图片图像是否已经被处理的确定,预先计算要被处理的图片图 像的像素的数量和高分辨率配准器的各处理级的数量,用于当最后级计数被 超过时确定处理是否结束。图3中在步骤S105的确定中使用的设置值对各个特定实施例可以不同。 在特定实施例中,假设采样率为16/100 (从分辨率的角度对应于1/16)。这是 因为在所述实施例中,使用随机采样和推测提取的配准器处理比对于采样率 低于16/100的图片图像使用块采样的配准处理(即,对应于具有高分辨率的 图片图像的处理)提供更高的处理效率。可以设置本发明的设置值使得它通 过特定的实现被适当地优化。图4显示本实施例中所用的低分辨率配准器50中各功能块的实施例。低 分辨率配准器50包括块釆样部分70、相互信息计算部分72和优化处理部 分74。块采样部分70将块分配到图片图像的多个切片,并且将所选块中包 括的整个像素数据从主存储器14提取到局部存储器18。然后,块采样部分 70随机采样分配到块的像素数据,并且将其寄存在主存储器14中。块采样 部分70进一步获得占据块的角落的角像素的3D坐标(在特定实施例中八个 样本),并且将其结合随机采样的像素数据保存在主存储器14中作为块数据。保存的块数据再次被提取到局部存储器18中以在相互信息计算部分72 中使用。相互信息计算部分72通过主存储器传输单元将块数据串行地提取到 局部存储器18。这里,从多个相邻块可以形成块组用于提取块组中的所有采 样像素。相互信息计算部分72通过使用各线性变换参数的值决定在对应于具 有相同分辨率的各运动图像中的块(或块组)的角落的各像素的3D坐标, 决定边界框。用于执行处理的软件装置形成边界框获得装置。然后,相互信 息计算部分72将包括在边界框中的运动图像的像素数据串行地从主存储器 14提取到局部存储器18。在本发明中,当计算用于块的相互信息时,块(或 块组)的数据大小被优化为用于不引起离散存储器访问主存储器的大小。当 使用块组时,存储器大小可以被动态地优化为具有使用的局部存储器18的大 小的各单元块的流,根据需要计算线性变换参数的值。相互信息计算部分72通过使用包括在块(或块组)中的像素数据和包括 在边界框中的运动图像的像素数据计算相互信息。优化处理部分74通过使用 用于每个计算的块的相互信息校正线性变换参数并且将校正的参数传递到相互信息计算部分72,重复相互信息计算以最大化相互信息。当在此时识别的 块和边界框之间的关系中相互信息被最大化时,或当达到预定重复数时,优化处理部分74完成处理,将线性变换参数76传递到下一级的配准器并且设置该参数为用于下一级的相互信息计算的默认参数。在本实施例中,相互信息计算部分72和优化处理部分74所用的定义公 式和各参数设置能够通过只改变要被初始化的线性变换参数的设置与非专利 文献1中公开的相同。为了概述,相互信息计算部分72计算概率密度函数 p(x)为所谓的Parzen预测值,并且通过使用如仿射变换的线性变换参数计算 Parzen直方图。使用直方图计算Parzen概率或频率,并且使用下面的公式(1 ) 给出相互信息S。<formula>formula see original document page 16</formula>在上面的公式中,l和k是离散变量,LT和LR是运动图像的深度数据 和固定图像的深度数据(对应于灰度级密度的位数)。M表示线性变换参数, p表示Parzen概率,以及PT、 PR表示运动图像的离散Parzen概率和固定图 像的离散Parzen概率。更具体地,参见非专利文献1。在本发明中,对线性变换参数M的值串 行地执行优化处理,以便最大化由上面公式(1)所示的相互信息S ( n )。 优化处理部分74对上述相互信息执行泰勒展开,并且决定用于最大化S( |i ) 的线性变换参数为要被输出的线性变换参数。图5是由图4中所示的低分辨率配准器50执行的处理的实施例的流程 图。图5中所示的处理开始于S200,并且在步骤S201将固定图像的块数据 的像素数据从主存储器14提取到局部存储器18。在步骤S202,随机地采样 提取到局部存储器18的像素数据,并且获得像素数据的深度数据(例如,16 位的灰度级值)和位置数据。在步骤S203,将获得的像素的深度数据和位置数据以及块的角像素的3D 坐标数据写入主存储器14作为用于相互信息的计算的块数据。在步骤S204, 确定对用于具有处理的分辨率的固定图像的所有块的处理是否已经完成。如 果处理还没完成(否),则返回处理至步骤S201。如果对所有块已经完成处理(是),则分支处理到S205,清除局部存储器18,并且将写入主存储器14的块数据提取到局部存储器用于相互信息的计算。在本发明的特定实施例中, 从正被处理的图片图像的处理效率的观点,通过使用单个块数据执行相互信息的计算,或从多个相邻块数据形成块组并且使局部存储器18提取块组中的 所有块数据。在步骤S206,对块数据的角像素执行线性变换,通过运动图像的像素数 据中的线性变换识别对应于固定图像的角的像素,并且定义其为边界框。然 后,在步骤S207,将包括在边界框中的运动图像的像素数据从主存储器14 提取到局部存储器18中。即,低分辨率配准器50在不对运动图像的要被处 理的像素数据使用推测的情况下提取局部存储器18 。在块S208,通过使用局部存储器18中的块数据和边界框中的像素数据 计算相互信息。由于当步骤S208的处理中计算相互信息时,能串行访问存储 在局部存储器18中的像素数据,而不通过存储在主存储器14中的像素单元, 因此改进了 CPU 12的处理效率。将用于块计算的相互信息存储在主存储器 14中并且合计。然后,在步骤S209确定是否已经对所有块数据结束处理。如果处理还没 有结束(否),则分支处理到步骤S205,并且对下一个块数据重复该处理。 如果在块S209对所有块数据的处理结束(是),则在S210激活优化处理部分 74,校正线性变换参数以最大化相互信息,或在步骤S211确定是否达到设置 的用于重复的次数。如果相互信息被最大化或达到设置的用于重复的次数 (是),则分支处理到步骤S212并且完成处理。如果相互信息被最大化或没 有达到设置的用于重复的次数(否),则分支处理到步骤S205,通过使用更 新的线性变换参数计算新的边界框以重复计算。这是因为,仍处于低分辨率,由于线性参数的精度不够高,所以优选通 过使用更新值校正边界框。当稍后要描述的高分辨率配准器通过低分辨率配 准器的上述处理提供具有高度精度的线性变换参数,"默认值"可以用作最新 的预测值。由图5中所示的低分辨率配准器50决定的线性变换参数被传递为 在下一级执行处理的低分辨率配准器52的线性变换参数的默认值。图6显示本发明中使用的3D图像的数据结构的实施例。图6中所示的 3D图像的数据结构与固定图像和运动图像的相同。如图6中所示,3D图像 80被给定为数据结构,其中寄存为2D图像的受影响的区域的切片82等在朝向受影响的区域的深度的X-Y的多个方向中受到配准。在本实施例中,块84 被分配到每个切片,该切片的分辨率被下采样处理部分减小。块84包括多片 像素数据。在图6中,只显示块84来表示具有阴影图案的所有块。在本实施例中,当处理块84时,包括在块84中的所有像素的像素数据 被提取到局部存储器18。结果,CPU12可有效地访问要在处理中使用的像素 数据,使得相关信息的计算更有效。此后,采样块84中的像素数据。此时的 采样率是根据分辨率的采样率,并且高釆样率被应用于低分辨率固定图像。 占据块角的角像素除了被随机采样之外被另外采样,并且用于定义边界框。 优化块的数据大小,用于在对块数据或局部存储器18中块组中的数据和运动 图像的数据计算相互信息期间,使得局部存储器18能够通过具有预定采样率 的采样被串行地访问。图7显示用于将寄存在块84中的像素数据提取到局部存储器18的特定 页的实施例。如图7中所示,临时写入主存储器14的块84中的所有像素数 据被提取到局部存储器18。对于局部存储器18,关于高速緩冲存储器优化由 行单元的从局部存储器的提取,这使得能够通过行单元传送数据。块采样部 分70随机采样在局部存储器18中提取的像素数据,将占据角的像素的角像 素86的3D坐标添加到随机采样的像素数据,并且将其压缩以便使串行访问 可用以将其创建为块数据,并且再次将其写入主存储器14。然后,相互信息计算部分72将包括角像素86的3D坐标的块数据从主 存储器14提取到局部存储器18的区域88。相互信息计算部分72进一步使 包括在运动图像的边界框中的像素数据被读入局部存储器18的区域卯,并 且使得相互信息计算被执行而不引起离散访问像素数据。能够从局部存储器 18提取包括多个相邻块的块组,使得块组中块的数量能够根据局部存储器的 大小和线性变换参数的值被动态优化。图8是显示包括两个固定图像84的块组和边界框92之间的的线性变换 关系的图。固定图像的块84包括多段像素数据。独立于像素数据96采样块 84的角像素86的值,其是通过随机釆样提取,并且作为块数据被临时写入 主存储器14。通过相互信息计算部分72将线性变换参数的值应用到角像素 86的3D坐标,并且给出应该对应于运动图像的角像素94的3D坐标,并且 定义运动图像上对应的边界框92。图8还显示具有由参考字符P表示的从每 个角像素86到运动图像的线性映射的两个块84。如图8中所示,由包括相邻两个块的块组的八个角像素86定义边界框92。在图8中,将属于固定图 像40的块84的3D图像中的方向X、 Y和Z设置为图6中所示的方向。边界框92是由下面显示的处理定义的矩形元件。(1 )通过对固定图像的 角像素86执行线性变换识别运动图像的对应八个角像素94。 (2)然后,从 运动图像的角像素94 (Mx, My, Mz, Mzmax)的八个值选择每个坐标值的最 大值和最小值,然后定义(Mxmax, Mymax, Mzmax)和(Mxmim, Mymin, Mzmin)为对角线。(3)边界框92是具有对角线的矩形空间,各对角线形成 为平行于用于定义运动图像的各坐标轴Bx、 By和Bz的各边。如上述定义的 边界框92能够称为轴对准边界框。边界框92产生为具有平行于各坐标轴Bx、 By和Bz的各边的矩形元件,使得能够快速计算包括在边界框92中的像素的 地址。然后,相互信息计算部分72识别包括在边界框92中的像素数据98,并 且将识别的像素数据从主存储器14提取到局部存储器18。此后,相互信息 计算部分72只通过数据访问局部存储器18而不对主存储器14执行离散访 问,对用于块和边界框的像素数据执行相互信息计算。当块组由多个块形成 时,能够动态地决定块组的大小,使得从主存储器提取的效率变为最大并且 块组的各采样像素的边界框和固定图像能够包含在局部存储器中。在本实施例中,在通过低分辨率配准器50和52的处理完成之后,执行 通过具有高分辨率的配准器54和56的配准,其中的每一个用作第二配准器。 图9显示高分辨率配准器54的功能块的实施例。由于高分辨率配准器54具 有与高分辨率配准器56相同的配置,因此将详述高分辨率配准器54的配置。 高分辨率配准器54包括随机采样部分100和运动图像预测部分102。随机采 样部分100采样指定的固定图像的像素,以便以指定采样率将块分配到被采 样的数据,将其压缩到主存储器14并且写入它以便使串行访问可用。运动图像预测部分102通过对随机采样的像素数据使用线性变换参数的 默认值,预测并且决定需要数据访问的运动图像的像素数据。运动图像预测 部分102进一步将对应于固定图像的块分配到决定的运动图像的像素数据, 将其压缩并且写入主存储器14,以便使串行访问可用。在此级,运动图像预 测部分102离散地访问存储在主存储器14中的像素数据。高分辨率配准器54还包括相互信息计算部分104和优化处理部分106。 相互信息计算部分104提取由随机采样部分100和运动图像预测部分102压缩并且分别写入主存储器14的像素数据到局部存储器18。然后,相互信息计算部分104能够只用对局部存储器18的数据访问执行指定块的相互信息的 计算。此时,本实施例的相互信息计算部分104和优化处理部分106能够执 行有效的数据访问而不执行离散访问。相互信息计算部分104和优化处理部 分106具有与低分辨率配准器50和52相同的配置。如果确定之前还没有被提取的像素数据需要计算线性变换参数,则如果 预测误差是微小的,那么相互信息计算部分104用从对象数据的相邻像素数 据外推计算该值,而不为了像素数据重新访问并且提取主存储器。因为具有 高分辨率的配准器使用其精度已由低分辨率配准器增加的线性变换参数,所 以不会出现对相互信息引起显著影响的误差。在对预定块的处理已经完成之 后,相互信息计算部分104对下一块执行处理,并且为每个块计算相互信息。优化处理部分106对由相互信息计算部分104用线性变换参数计算的结 果校正线性变换参数,将校正的线性变换参数返回相互信息计算部分104, 用于使得再次计算相互信息。优化处理部分106求和为各个块计算的相互信 息,并且决定线性变换参数108,使得相互信息的和变为最大并且将其输出。如果在下一级存在高分辨率配准器,则设置决定的线性变换参数为在下 一级的高分辨率配准器的线性变换参数的默认值,并且完成处理。图10显示由高分辨率配准器54执行的处理的实施例的流程图。图10中所示的处理在步骤S300开始,并且在步骤S301随机采样固定图像的像素数据。在步骤S302,将块分配到被采样的像素数据,压缩并且将其写入主存储器14。在步骤S303,荻得需要从线性变换参数的默认值访问的运动图像的像素数据并且将其压缩,并且将其制成块以便对应于固定图像的各块,并且 将其写入主存储器14。在步骤S304,从主存储器14将指定的固定图像的块和对应的运动图像 的块提取到局部存储器。然后在步骤S305,对运动图像确定是否需要新的像 素数据。如果在步骤S305确定需要新的像素数据(是),则在步骤S306确定 预测值是否小于预设误差定义值。如果作为在步骤S306的确定结果确定预测 误差更小(是),则分支处理至步骤S308。在步骤S308,通过对之前提取的 运动图像的像素数据执行外推计算应该被包括在像素数据中的位置数据和深 度数据的近似值,预测要被用在计算中的像素数据并且从点A转移到图12 中所示的处理。如果在步骤S306的确定确定预测值不小于预设错误定义值(否),则分支处理至步骤S307并且将运动图像的数据从主存储器14提取到 局部存储器18,从点A转移到图12中所示的处理并且执行精度达到第一的 处理。图11显示其中由像素单元确定预测误差的另一个实施例。如图11中所 示,假设固定图像40的块84中的像素数据96被线性映射在2 x 2 x 2的区域, 运动图像42的像素数据98为该区域一角。如果此时通过将线性变换参数应 用到像素数据96计算的线性映射足够接近预测的2x2x2像素区域(近处未 中),则使得通过使用推测的预测值执行图10中在步骤S308的确定。另一方面,如果线性映射不足够接近2x2x2像素区域(远处未中),则 使得处理在步骤S307再次从主存储器14提取像素数据。在本实施例中,通 过由处理对象的像素单元执行对近处未中/命中/远处未中的确定,能够在提取 上反映更多局部预测匹配。另一方面,如果在步骤S305确定不需要新的像素 数据(否),则从点A分支处理到图12中所示的处理。图12是显示在图10中点A之后处理的流程图。高分辨率配准器从点A 进入图12的处理并且在步骤S309通过使用像素数据执行相互信息的计算。 然后在步骤S310确定是否已完成对块中的所有采样的计算。如果在步骤S310 的确定确定没有对块中的所有采样完成计算(否),则从点B分支处理到图 10中的步骤S305,并且确定对下一个采样是否需要新的像素数据。如果在步骤S310的确定确定对块中的所有采样已完成计算(是),则分 支处理到步骤S311。在步骤S311确定是否已对所有块完成计算,并且如果 确定已对所有块完成计算(是),则在步骤S312决定线性变换参数以便最大 化相互信息。如果在步骤S311确定剩余块要被计算(否),则从点C分支处 理到步骤S304并且重复处理。在步骤S313,确定是否最大化相互信息或重复的数目是否达到设置值。 如果在步骤S313的确定确定相互信息已经被最大化或重复的数目已达到设 置值(是),则分支处理到步骤S314并且完成处理。如果在步骤S313的确定 确定相互信息没有被最大化或重复的数目没有达到设置值(否),则从点C分 支处理到步骤S304,并且保持处理直到相互信息被最大化或重复计数达到预 定的重复数目的设置值。本发明的配准器和使用常规处理的配准器通过使用上述配置在使用电子 数据表的模拟器中比较它们的性能。假设通过使用CELLBE处理器(3.2GB,主存储器4GB,每个SPE的局部存储器-256KB )预测的性能在来自国际商 用机器公司的BladeCenter (注册商标)QS20上实现,通过使用电子数据表 在计算像素所需时间的模拟中使用八个SPE。为了比较的目的,也模拟了执行该计算的传统串行优化方法,通过使用 具有采样率为1/100的传统连续串行优化方法(非专利文献l),执行对主存 储器的离散访问而不创建设为各单元块的流的处理数据,该各单元块能被提 取到局部存储器用于相互信息计算。结果在图13和14中显示。对象3D图 像假设为256 x 256像素的切片。假设模拟为对采样率为64/100、 16/100、 4/100、 1/100的低分辨率配准 器((a)至(d))的模拟和高分辨率配准器的模拟(e)。对于比较示例(f), 传统方法(非专利文献1 )用于进行模拟(f )。通过模拟每个像素的相互信息 的相互信息计算所需的时钟时间执行模拟,假设每个配准器执行一级处理。如图13中所示,在用于执行块采样的低分辨率配准器中,采样率越高, 执行时间越短(对应于较低分辨率),并且采样率越低,执行时间越长(对应 于较高分辨率)。这是因为当采样率(计算中所用的数据中要被釆样的数据率)低时,不 需要的像素数据被提取到局部存储器18作为块,这降低了块采样的效果。这 里证明优选地通过使用对低分辨率使用块采样的第 一配准器,和对高分辨率 通过使用第二配准器的具有更高精度的线性变换参数的推测预测实现。从如图13中所示的相互信息的计算处理时间还证明与传统方法相比本 发明的配准器具有足够改进的计算率。在图14中,比较使用传统串行优化方法的配准器的整个执行时间和本发 明的配准器的整个执行时间以观察具有作为比率的各个计算时间的相应数目 的本发明的性能。作为通过模拟的比较结果,证明因为本发明改进对主存储 器的离散访问,所以根据本发明的方法与传统方法相比缩短三倍的计算时间。当产生随机数序列而不划分块,并且通过使用分类的随机数序列采样所 有像素数据,以及对每个块执行处理而不是本发明的块采样也能够提供与本 发明的块釆样相同的效果。在本实施例中,用于执行分类处理的模块需要被 添加为软件资源。当在本实施例中通过使用并行处理执行图像处理时,需要 不添加分类处理的各处理之间的通信。在本发明的优选实施例中,能改进并 行处理的性能,而不需要各处理之间的通信。为了具有与其中形成上述块组并且动态优化大小的情况下相同的效果,每次当计算线性变换参数时需要分 类处理,其产生用于此目的的执行时间的开销。本发明的上述功能能够由以汇编语言、传统编程语言或如C、 C+十的面 向对象编程语言描述的程序实现,该程序能够在设备中执行并且能够被存储 并且分布在设备可读记录介质上。虽然已在图中所示的实施例中描述本发明,但本发明并不限于图中所示 的实施例,并且可以在本领域技术人员能够构想的范围内被改变,包括其他 实施例、增加、改变和删除。只要应用本发明的操作和效果,那些方面就可 以包括在本发明的范围内。
权利要求
1.一种数据处理装置,用于使用3D图像的固定图像和3D图像的运动图像之间的相互信息进行配准,其中所述数据处理装置包括下采样装置,用于顺序地减小所述固定图像的分辨率;第一配准装置,用于执行固定图像和运动图像之间的配准,并且输出用于配准的线性变换参数,所述固定图像的分辨率由所述下采样装置减小,所述运动图像的分辨率与所述固定图像一样被减小;第二配准装置,用于通过对分辨率被减小的固定图像和分辨率被减小的运动图像执行配准,更新所述线性变换参数的配准精度,其中每个通过使用从所述第一配准装置输出的所述线性变换参数为默认值具有按级更高的分辨率;通过当分辨率被减小的所述固定图像的采样率大于预设值时使用所述第一配准装置,并且通过当所述采样率没有达到所述预设值时使用所述第二配准装置,用于执行配准的装置;其中所述第一配准装置和所述第二配准装置在主存储器上存储在所述相互信息的计算中使用的、一组所述固定图像的像素数据和所述运动图像的像素数据,使得其能够作为各单元块的流被访问,并且将它们提取到局部存储器作为各单元块的流以执行所述相互信息的计算。
2. 如权利要求1所述的数据处理装置, 其中所述第 一配准装置包括块采样装置,用于将块分配到分辨率被减小的所述固定图像,将包括在 所述块中的所有像素数据提取到所述局部存储器,随机采样所述像素数据, 通过添加占据所述块的角的角像素的3D坐标创建块数据,并且将块数据写 入主存储器;边界框获得装置,用于通过将所述线性变换参数应用于使用所述块数据 的所述块数据的所述角像素的3D坐标,获得所述运动图像的边界框;相互信息计算装置,用于通过将包括在所述边界框中的像素数据提取到 所述局部存储器,并且通过访问所述局部存储器上的边界框和块数据计算相 互信息;以及优化处理装置,通过使用所述相互信息计算装置的计算结果并且通过计算所述线性变换参数,用于最大化所述相互信息。
3. 如权利要求1所述的数据处理装置, 其中所述第二配准装置包括随机采样装置,用于随机采样分辨率被减小的所述固定图像的像素数据,将块分配到该像素数据并且将其写入所述主存储器;运动图像预测装置,用于将所述线性变换参数的默认值应用于所述随机 采样的像素数据,决定要被访问的所述运动图像的像素数据,将对应的块分 配给它们并且将其写入所述主存储器;相互信息计算装置,用于将所述固定图像和所述运动图像的所述每段像 素数据从所述主存储器提取到所述局部存储器,并且执行所述相互信息的计 算;以及优化处理装置,通过使用所述相互信息计算装置的计算结果并且计算所 述线性变换参数,用于最大化所述相互信息。
4. 如权利要求2所述的数据处理装置, 其中所述边界框获得装置包括用于通过合并在空间上相邻的所述块数据而创建块组,并且形成对应于 所述块组的边界框,并且决定所述块组中的块数目,使得在局部存储中存储 所述块组和所述边界框并且最大化像素的数目的装置。
5. —种数据处理方法,用于使得数据处理装置使用3D图像的固定图像 和3D图像的运动图像之间的相互信息进行配准,其中所述数据处理方法使 得所述数据处理装置执行通过下采样装置顺序减小所述固定图像的分辨率;通过在分辨率被减小的所述固定图像和分辨率被减小的所述运动图像之 间执行配准,两者都由所述下采样装置减小,输出用于配准的线性变换参数;确定分辨率被减小的所述固定图像的采样率是否小于预设值;以及通过当所述采样率大于预设值时使用所述第一配准装置,并且通过所述 釆样率没有达到所述预设值时使用所述第二配准装置,通过在主存储器上存 储在所述相互信息的计算中使用的一组所述固定图像的像素数据和一组所述 运动图像的像素数据,使得它能够作为各单元块的流被访问,并且将它们提 取到局部存储器作为各存储器块的流,对分辨率被减小的所述固定图像和分 辨率也被减小的运动图像执行配准;其中所述第二配准装置通过使用作为默认值从所述第一配准装置输出的 所述线性变换参数,对分辨率被减小的所述固定图像和分辨率被减小的所述 运动图像进行配准,更新所述线性变换参数的配准精度。
6. 如权利要求5所述的数据处理方法,其中所述第 一配准装置包括将块分配到分辨率被减小的所述固定图像,将包括在所述块中的所有像 素数据提取到所述局部存储器,随机采样所述像素数据,通过添加占据所述 块的角的角像素的3D坐标创建块数据,并且将块数据写入主存储器;通过使用所述块数据,将所述线性变换参数应用于所述块数据的所述角 像素的3D坐标,定义所述运动图像的边界框;通过将包括在所述边界框中的像素数据提取到所述局部存储器,并且通 过访问所述局部存储器上的边界框和块数据计算相互信息;以及使用所述相互信息计算的计算结果并且决定所述线性变换参数,用于最 大化所述相互信息。
7. 如权利要求5所述的数据处理方法, 其中所述第二配准装置包括随机釆样分辨率被减小的所述固定图像的像素数据,将块分配到该像素 数据并且将其写入所述主存储器;将所述线性变换参数的默认值应用于所述随机釆样的像素数据,预测地 决定要被访问的所述运动图像的像素数据,将对应的块分配给它们并且将其 写入所述主存储器;将所述固定图像和所述运动图像的所述每段像素数据从所述主存储器提 取到所述局部存储器,并且计算所述相互信息;以及使用所述相互信息的计算结果并且决定所述线性变换参数,用于最大化 所述相互信息。
8. 如权利要求6所述的数据处理方法, 其中所述定义边界框包括通过合并在空间上相邻的所述块数据创建块组,并且形成对应于所述块 组的边界框,以及决定所述块组中的块数目,使得在局部存储中存储所述块組和所述边界 框并且最大化像素的数目。
9. 一种计算机可读程序,用于使得数据处理系统执行数据处理方法,用于使得所述数据处理装置使用3D图像的固定图像和3D图像的运动图像之间 的共有信息进行配准,其中所述程序使得所述数据处理装置执行通过下釆样装置顺序减小所述固定图像的分辨率;通过在分辨率被减小的所述固定图像和分辨率被减小的所述运动图像之 间执行配准,两者都由所述下采样装置减小,输出用于配准的线性变换参数;确定分辨率被减小的所述固定图像的采样率是否小于预设值;以及通过当所述釆样率大于预设值时使用所述第一配准装置,并且通过所述 采样率没有达到所述预设值时使用所述第二配准装置,通过在主存储器上存 储在所述相互信息的计算中使用的一组所述固定图像的像素数据和所述运动 图像的像素数据,使得它能够作为各单元块的流被访问,并且将它们提取到 局部存储器作为各存储器块的流,对分辨率被减小的所述固定图像和分辨率 也被减小的运动图像执行配准;其中所述第二配准装置通过使用作为默认值从所述第一配准装置输出的 所述线性变换参数,对分辨率被减小的所述固定图像和分辨率被减小的所述 运动图像进行配准,更新所述线性变换参数的配准精度。
10. 如权利要求9所述的程序,其中所述第一配准装置包括 将块分配到分辨率被减小的所述固定图像,将包括在所述块中的所有像素数据提取到所述局部存储器,随机采样所述像素数据,通过添加占据所述 块的角的角像素的3D坐标创建块数据,并且将块数据写入主存储器;素的3D坐标,定义所述运动图像的边界框;通过将包括在所述边界框中的像素数据提取到所述局部存储器,并且通 过访问所述局部存储器上的块数据和边界框计算相互信息;以及使用所述相互信息的计算结果并且决定所述线性变换参数,用于最大化 所述相互信息。
全文摘要
提供用于对3D图像进行配准的数据处理装置、数据处理方法和其程序。数据处理装置10包括用于减小固定图像40的分辨率的下采样装置44至48,和第一配准装置(50,52),用于在由下采样处理装置44至48减小分辨率的固定图像和与固定图像一样被减少分辨率的运动图像之间进行配准,以及第二配准装置(54,56),用于通过使用作为默认值从第一配准装置52输出的线性变换参数,对减少分辨率的固定图像和减少分辨率的运动图像进行配准,其中相互信息计算中所用的像素数据被保存在主存储器中,用于使能够串行访问并且通过提取局部存储器执行配准。
文档编号G06T7/00GK101221660SQ20071014416
公开日2008年7月16日 申请日期2007年11月16日 优先权日2006年12月6日
发明者井上拓, 小原盛干, 小松秀昭 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1