一种计算机数字图像快速处理算法
【专利摘要】本发明涉及一种使用改变图像的图像处理算法来对图像、特别是一种计算机数字图像快速处理算法,其中至少部分地在图形卡(4)上执行图像处理,该图形卡包括至少一个像素着色单元(7)和至少一个顶点着色单元(6)。在该方法中,首先将二维图像(9)变换为三维表示(12),利用该三维表示在所述顶点着色单元(6)上执行该图像处理算法的第一部分,然后变换为二维表示(10),利用该二维表示在所述像素着色单元(7)上执行该图像处理算法的第二部分。通过从二维图像(9)中人工产生三维表示(12),可以按照优选方式将图形卡(4)的顶点着色单元(6)也用于图像处理,从而可以最佳利用图形卡(4)的计算能力。
【专利说明】一种计算机数字图像快速处理算法
【技术领域】
[0001]本发明涉及一种使用改变图像的图像处理算法来对图像、特别是一种计算机数字图像快速处理算法,其中,至少部分地在图形卡上执行图像处理,该图形卡包括至少一个像素着色(Pixel Shader)单兀和至少一个顶点着色(Vertex Shader)单兀。
【背景技术】
[0002]本发明的主要应用领域是对图像照片的快速图像处理,例如在荧光透视中累积的图像。在诸如计算机断层造影、血管造影或者磁共振断层造影等成像的方法中,需要对利用对应的模态绘制的图像进行费事的图像处理。该图像处理应该一方面例如通过抑制噪声来改善图像质量,另一方面例如通过锐化边缘或滤波来突出图像中对相应诊断重要的结构。
[0003]首先,在其中按照较快的时间序列拍摄检查区域的X射线图像照片并立刻在显示器上为主治医生显示出来的荧光透视的领域中,要求进行快速的图像处理。在现代荧光透视系统中已经按照在30帧/秒的条件下的1024x1024像素的分辨率以及16比特的比特深度来处理图像。利用改变图像或者说改善图像的图像处理算法的图像处理在与绘制模态连接的图像计算机上进行。各种图像处理算法在所谓的后处理渠道(Pipeline)中得到综合。因为医生恰恰在特别是利用导管的干预中需要用于尽可能实时地对仪器进行导航的图像,所以图像处理的主要问题在于高的图像处理速度。
[0004]利用常见的主处理器不能在上述图像分辨率下达到为此所需的处理速度,因此迄今为止必须为这些应用开发并使用基于DSP(数字信号处理)板的专用硬件。在相同
【发明者】的一个平行专利申请中建议,将图像处理算法的至少一部分在现代图形卡上实施。该建议使得对于这类图像处理可以采用标准硬件,其引起的投资花费较小并且可以灵活地更新而没有巨大的开销。
[0005]现代的图形卡目前包括至少一个頂点着色单元和一个像素着色单元,利用这些单元可以将三维对象(例如为计算机游戏或动画)按照较高的速度变换成用于显示器的、实际的二维显不° 在“Programmierbare Pixeel-und Vertex-Shader am Beispiel desGeForce 3vonNIVIDIA”,专题研讨课SS 2001,第I至26页,eHB中公开了一种这样的图形适配器及其应用。US 2003/0020741A1描述了通过设置临时存储器更好地使用带有像素着色单元和图形着色单元的系统,由此通过不同的着色单元使用已经被处理过的数据并且可以改善图形应用的编程。在此,涉及的也是三维对象的二维显示。
【发明内容】
[0006]本发明要解决的技术问题是,提供一种使用改变图像的图像处理算法来对图像、特别是计算机数字图像进行快速图像处理的方法,该方法需要的投入费用很少并且对硬件新开发来说比公知系统具有更高的灵活性,以及特别是能够最佳地利用所使用的部件。
[0007]在该使用改变图像的图像处理算法来对改变图像的图像处理算法来对图像、特别是计算机数字图像进行快速图像处理的方法,至少部分地在图形卡上执行图像处理,该图形卡包括至少一个像素着色单元和至少一个顶点着色单元。像素着色单元是在3D图形芯片的渲染管线内部的可编程计算单元,其在计算机产生的视图中产生照明和表面效果。顶点着色单元在图形芯片中的可编程计算单元,利用其可以按照最佳的方式执行特别是计算机图形的三角点的三维变换。
[0008]在本发明的方法中,首先将二维输入图像变换为三维表示,利用该三维表示在顶点着色单元上执行该图像处理算法的第一部分。然后,将按照这种方式处理的三维表示变换回二维表示,然后利用该二维表示在像素着色单元上执行该图像处理算法的第二部分。
[0009]通过所提出的从二维图像中人工产生三维表示,可以按照优选的方式将顶点着色单元也用于二维图像的图像处理。在此,按照适当方式修改了否则将利用二维图像进行的处理算法(例如,滤波、噪声抑制、或边缘锐化),以便在三维表示中产生同样的效果。然后在像素着色单元上继续对变换回二维表示、并且已经部分处理过的图像进行剩余的图像处理,使得两个单元都被用于图像处理。通过图形卡的这种最佳利用,特别是构造成用于三维变换的顶点着色单元的利用,实现了对二维图像的较快的图像处理,这种较快的图像处理正是尤其在本文开始部分提到的荧光透视中的应用所需要的。
[0010]在成像的领域中,由对应的成像模态所绘制的图像一般是作为灰度图像出现。优选地,通过由二维图像像素灰度值产生灰度值山峰(Grauwertgebirgen)来将该二维图像变换至三维表示。为此,首先将灰度值图像按照一种可以被图形卡的顶点着色单元读出的结构进行存储。将该结构投影到一个平面的多边形网格上,使得该多边形的顶点分别位于一个像素中心。此时利用相应像素的灰度值对该多边形的位于该像素中心的顶点的Z坐标进行加权,使得从中得到的网格表示了图像的灰度值山峰。
[0011]现代的图形卡、如ATI的Radeon9700系列或其后续的模型,拥有带有可编程的顶点和像素着色单元的处理器。在顶点着色单元中执行顶点着色程序,在这些程序中定义了对每个三维点(顶点)进行变换的三维变换。在像素着色单元中执行像素着色程序,在这些程序中对结构的每个像素都计算输出彩色值。与灰度值山峰对应的多边形网格可以表示为能够在可编程的顶点着色单元中被处理的顶点集合。带有可编程顶点着色单元和像素着色单元的图形卡允许将计算结果从顶点着色程序中传递至随后的像素着色程序中。在本发明的方法中利用了这种可能性。
[0012]本发明的方法将图像处理算法分成两部分。在第一部分中,在变换成三维表示之后在顶点着色单元中对通过顶点表示的多边形网格的顶点进行计算。该多边形网格代表着灰度值山峰。在第二部分中,根据来自第一部分的计算结果,在变换回二维表示之后,对代表着当前灰度值图像的结构的每个像素都计算输出灰度值,该计算在像素着色单元中进行。在此,图像处理算法的划分可以这样实现,即在图形卡上形成最小的处理时间。在此,优化了 3D图像处理的现代图形卡的硬件性能被最佳地利用在二维图像的图像处理应用中。
【专利附图】
【附图说明】
[0013]图1表示本发明方法中数据流的一个例子;
[0014]图2表示用于说明通过2D图像处理在图像中进行边缘平滑的一个例子;
[0015]图3表示用于说明通过按照本发明方法的3D图像处理在图像中进行边缘平滑的一个例子。【具体实施方式】
[0016]图1示出了根据X射线图像数据在实施本发明方法时在图像计算机中的数据流的一个例子。在此,通过获取卡2读入利用X射线设备I绘制的原始数据并且传递至PC3。下面,将所需图像处理的一部分在PC3的主处理器上进行,这点通过参考标记.8示出。不过,这种在PC3上的图像处理并不是总是需要的,因为在计算能力充分的条件下也可以将所有的图像处理在图形卡4上进行。
[0017]在本发明的方法中,首先将图像数据变换为三维表示,并随后传送到现代图形卡4的顶点着色单元6上。在该顶点着色单元6中进行一部分图像处理,然后又将按照这种方式处理后的图像数据变换回二维表示。随后将变换回的数据传送至图形卡4的像素着色单元7,在该像素着色单元中进行剩余的图像处理。最后,通过图形卡4将按照这种方式处理后的图像显示在显示器5上。
[0018]在本发明方法中二维图像数据的人工产生的三维表示,使得可以按照优选的方式将现代图形卡的顶点着色单元用于二维图像的图像处理。通过由此实现的对图形卡的更好利用,实现了更快的图像处理。根据图2和3的示意图用例子说明了在此所选择的方式方法。在此,图2示出了在图像中进行边缘平滑的二维图像处理。在图的左边部分可以看出输入图像9,其带有应该通过图像处理而被平滑的灰度值级别。在这种情况下该平滑通过建立二维平均值来实现,如图2中表示的那样通过建立每三个相邻点的平均值实现。通过这种平均值的建立得到了输出图像10,其具有较平坦的灰度值过渡和因此平滑的边缘。
[0019]在本发明的方法的实施中,可以将这种二维的图像处理通过现代图形卡4的针对三维图像处理的顶点着色单元6来进行。为此,将二维图像9通过变换步骤11转换为表示该二维图像的灰度值山峰的三维表示12。在图3中用箭头表示出了在该灰度值山峰上的表面法线。这些表面法线相对于水平线的角度是对灰度值跃变的强度的一种量度。因此,表面法线15的强列偏离90°的角度代表了在二维图像9中的灰度值跃变。此时,边缘平滑可以在该三维表示中通过表面法线15的旋转16而实现,如在图3的下面部分所示出的那样。通过加大该表面法线15与水平线之间的扇度实现了边缘平滑。由此,通过在返回变换步骤11中将由此得到的平滑灰度值山峰13变换回二维表示10,实现了和通过图2的二维图像处理同样的结果。不过,通过这种方式明显更好地利用了现代图形卡的计算能力,该图形卡具有用于三维图像处理的一个或多个顶点着色单元。自然,也可以将这种技术用到其它迄今为止按照二维进行的图像处理技术中。
【权利要求】
1.使用一种使用改变图像的图像处理算法来对图像、特别是一种计算机数字图像快速处理算法,其中,至少部分地在图形卡(4)上执行图像处理,该图形卡包括至少一个像素着色单元(7)和至少一个顶点着色单元(6), 其中,首先将二维图像(9)变换为三维表示(12),利用该三维表示在所述顶点着色单元(6)上执行所述图像处理算法的第一部分,然后变换为二维表示(10),利用该二维表示在所述像素着色单元(7)上执行所述图像处理算法的第二部分。
2.利要求I所述的方法,其特征在于,通过由所述二维图像(9)的像素灰度值产生灰度值山峰来实现将该二维图像(9)至三维表示(12)的变换。
3.权利要求1或2所述的方法,其特征在于,将所述三维表示(12)产生为多边形网格。
4.权利要求1至3中任一项所述的方法,其特征在于,这样选择所述图像处理算法的第一和第二部分,使得在图形卡(4)上形成最小的处理时间。
【文档编号】G06T17/30GK103544726SQ201210243365
【公开日】2014年1月29日 申请日期:2012年7月13日 优先权日:2012年7月13日
【发明者】袁桦, 张玉 申请人:上海澜晶数码科技有限公司