CN1339142A - 使用通用3d图形管道进行成本低廉的数字图像和视频编辑的方法和装置 - Google Patents
使用通用3d图形管道进行成本低廉的数字图像和视频编辑的方法和装置 Download PDFInfo
- Publication number
- CN1339142A CN1339142A CN00803291A CN00803291A CN1339142A CN 1339142 A CN1339142 A CN 1339142A CN 00803291 A CN00803291 A CN 00803291A CN 00803291 A CN00803291 A CN 00803291A CN 1339142 A CN1339142 A CN 1339142A
- Authority
- CN
- China
- Prior art keywords
- image
- unit surface
- patterning unit
- jacquard patterning
- geometric jacquard
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
- Studio Circuits (AREA)
Abstract
本发明的方法允许使用标淮3D图形管道(70)处理二维像素阵列。该方法包括形成二维图像的线网。该线网包括三角形的集合,其中这些三角形的顶点和边位于x,y,z坐标空间中的同一平面中。然后,将2D图像映射到网中。然后,用通过3D图形管道处理的3D表示的相同方式处理产生的对象表示。
Description
发明背景
本发明涉及数字图像和视频处理。
在视频和图像编辑过程中,我们通过如将图像从屏幕的一部分移到另一部分,旋转图像,放大图像或缩小图像,改变一幅视频图像的部分或全部。其它常用图像处理包括翘曲图像(即,对图像进行三维变形),对图像的部分进行放大,对图像执行圆柱、球形、双曲线或抛物线转换(例如,让一幅二维图像呈环绕着圆柱、球形、双曲线、或抛物线的表面弯曲或翘曲状),使图像产生融化效果,等等。
经常,要处理的图像采用像素阵列的形式。也就是,图像存储为一个多个数据值的阵列,每个值对应于图像的一小块区域的色彩和亮度。当执行上述视频图像处理时,我们典型性地执行转换图像的每个像素的计算。例如,对于图像的每个像素,我们执行确定该像素在视频屏幕上的新位置的计算。大图像可以包含数百万像素。而且,对于图像流的情况(例如,在视频图像的情况下),每秒必须转换许多帧。因此,在很短的时间内,对每个转换,可能必须分析和修改数百万像素。这种转换需要巨大的CPU资源或特殊的硬件,以能够在很短的时间内转换大量的像素。
提供一种用于编辑和/或处理二维图像的方法是理想的。因此我们能够每秒编辑和/或处理很多帧二维图像,例如,象视频图像的图像流,是特别理想的。能够快速和有效地执行这些处理,而不必设计专用于该目的的,昂贵,复杂的硬件是理想的。
概要
本发明的方法包括将2D图像转换到3D空间,并且使用用于处理图像的3D图形管道的步骤。该方法释放CPU资源,减少执行图像处理所需的时间,并且允许新的特殊效果。
在本发明的一个实施例中,我们获得一幅采用像素阵列形式的图像。这可以通过如对图像进行数字化来实现。然后,我们通过使用3D图形管道,将这些图像"转换"到3D空间。该图形管道可以完全或部分地通过软件或硬件(例如,3D硬件加速器)进行实现。
存在几个将像素阵列转换到3D空间的方法。典型地,3D管道定义一个图像表面区域的集合,每个图像表面区域被分配给三维坐标系统的一个位置。然而,在本发明的实施例的情况下,所有的表面区域是共面的。在一个实施例中,表面区域均是多边形,如三角形,每个三角形是通过用x、y和z坐标指定位置的点的集合来定义的。(所有的坐标是采用让它们都位于同一平面中的方式进行建立的)。然而,表面区域也可以使用其它图形技术进行定义。例如,表面区域或整个表面可以采用"隐式"技术进行定义,其中,空间(表面区域)中的像素位置通过数学方程进行定义。
创建表面区域的集合之后,我们将2D像素阵列图像映射到表面区域的集合上。换句话说,我们将2D图像的一幅图片的一部分"绑定"到每个图像区域。执行该步骤之后,我们使用3D图形管道来处理已创建的、要执行所需图像和/或视频编辑的图像。
我们已经发现该技术对于快速处理很多2D图像是极其有效的。例如,该技术可以用于处理视频图像流,该图像流典型地包括每秒59.94帧,每帧对应于一个大的像素阵列。该技术也可以用于处理来自其它来源的2D图像,例如,数字扫描仪、照相机、从因特网下载的图像文件,或其它来源。
在一个实施例中,目前现有的非定制的3D管道和/或3D加速处理器用于执行该过程。因此,我们已经发现一种用于处理2D图像的新的廉价方法,而不必从零开始构建特殊处理软件和/或硬件。
我们采用新的方式使用3D图形管道将是值得重视的。以前,图形管道用于将纹理映射到一个几何对象上,作为给该几何对象一种特殊外观的方法,并且,创建一个包含这种对象的集合的新虚拟环境。这是通过向图形管道提供纹理和几何图形以创建一个新的虚拟图像来实现的。这与使用几何图形转换和编辑图像不同。
在本发明的方法中,我们将一个图像和一个几何图形应用于3D图形管道以生成一幅3D图像。然后,我们采用新的方式使用3D图形管道,以转换或处理该图像。
图像不仅仅是在如某些纹理的图案中的不断重复的单元,也不仅仅是几乎感觉不到的大小的图像。在构造一幅图像的过程中,我们不是简单地将一种纹理应用于一个表面,而是将一幅图像应用于一个几何表面,以将该图像置放于三维空间。该图像可以是一个三维对象的二维图像。
附图简述
图1A到1E示出3D图形管道的操作;
图2A和2B示出使用本发明的方法的2D图像的处理;
图3是一个用本发明的3D图形管道与图形控制器结合的个人计算机(personal computer,PC)的简化方框图。
详细描述
如上所述,本发明的方法包括采用新方式使用3D图形管道,以帮助数字图像(包括视频图像流)的处理。我们将首先说明3D图形管道通常是如何使用的。此后,我们将描述它在本发明的方法中的使用。
3D图形管道
本专利所提及的3D图形管道可以通过组合硬件元件(称作加速器)和软件(某些软件有时称作驱动程序)来实现。硬件和软件之间的划分可能根据系统中所使用的CPU和图像卡发生变化,但是,整个系统执行下面所述的方法步骤。管道任务部分能通过软件进行执行,目前软件比硬件便宜,但是通常比硬件解决方案慢。执行下述步骤的硬件和软件被简单地称作管道,而不考虑特定的划分。
下面是3D图形管道的简化概括性描述。它不试图描述任何特定产品(例如,本发明中后面将提及的产品)。相反,下面的描述仅是3D图形管道的概括性说明,以帮助读者的理解。
目前,使用3D图形管道创建的图形对象可以被描述为几何表面的集合。在图形管道中构建几何表面的一种方法是创建"图元"的"网状物"。一个"图元"是一个可以由顶点集合定义的小几何表面。例如,图元可以是,在管道内根据多边形的角点或顶点的位置(在x、y和z坐标空间中)定义的多边形(例如,三角形或者四边形)。几个图元的集合用于定义一个更大的3D表面。
不使用如多边形的图元,一些图形管道可以处理以其它方式,如数学方程式定义的几何表面区域。这种用于定义几何表面区域的方法被称为"隐式"。如下所述,两种用于定义这种表面区域的方法都可以用于执行本发明的方法。
为了说明清楚,我们将首先描述一种使用三角形图元处理几何表面区域的图形管道。其它类型的图形管道将在后面描述。
在这第一个例子中,3D图形管道从2D像素阵列(典型地称作"纹理图")构建对象的3D图像。图1A示出一幅"纹理"集合的2D图像2。(如下所述,该纹理图用于创建对象图像-在本例中是一所房子。图像2包括:具有砖外观的部分2a,具有屋顶瓦片外观的部分2b,具有门外观的部分2c,具有窗外观的部分2d。)2D图像2以像素阵列的形式存储在数字存储器中。存储器中的每个位置存储一个像素,每个像素是表示与该像素对应的色彩,色彩饱和度和亮度的一个或者多个字的数据。阵列中像素的位置典型地称作u、v坐标(不要和用于描述特定视频信号的Y、U和V信号名称相混淆)。(该u、v坐标和笛卡儿坐标系统的x、y坐标类似。在图1A中,像素阵列是一个n×m的阵列,其中n和m是整数。)
如上所述,图1A表示一个像素阵列。物理上,该阵列包括载入到存储器的数据。
该过程的下一步骤是提供或准备一个几何表面。在这个例子中,几何表面采用三维空间中图元5的网状物4的形式(图1B)。在图1B的情况下,图元是三角形,但是能使用其它类型的多边形。该图元的网状物表示3D空间中对象O的三维形状。(在图1B的情况下,是一所房子的形状)。相对于对象,网状物4内每个三角形的每个顶点的位置以x、y和z笛卡儿坐标形式存储在存储器中。这些坐标有时称作模型坐标("MC")。准备这种网状物的过程是众所周知的,并且在多个标准图形库中被描述,例如,由Real 3D,lockheed Martin公司Real 3D 1996年出版的Real 3D,和由New Riders出版社1997年出版的Direct 3D。
图1B的网状物不是如此显示的。相反,图1B的网状物是存储在数字存储器中的内容的表示。具体地说,存储器根据xy和z坐标,存储网状物4内每个顶点的位置。
下一步是将图1A的二维纹理图映射或"绑定"到图1B的网状物4上。这是通过将每个三角形的顶点映射到纹理图的一个位置来实现的。结果,关联网状物4的每个顶点和图1A纹理图中特定点(像素)的u、v坐标的数据点列表被准备。(顶点所绑定的纹理图的位置有时称作"控制点")。
该过程的这一部分大致类似于装潢人员选择一片织物,并且用一些钉子将它定位到正被装潢的长椅的角落上(这些钉子就像控制点)。然后,装潢人员要求他的学徒完成将该织物固定到长椅上。在本例中,不是学徒而是3D图形管道完成这一任务。
图1A和图1B描述将一幅纹理图(图1A)映射到表示一个对象O的一个网状物4的过程。图形管道可以,并且经常性如此,将一个或多个纹理图映射到同一个或几个不同的对象上。
该过程的下一步是建立要显示的各个对象的"真实坐标模型",这要求建立要显示的每个对象的位置和方位。例如,假定有两个要观察的对象:四面体T和立方体C(图1C)。在该过程的这个步骤中,管道被指示,立方体C面向一个特定的方向,并且相对于特定的参考框架,部分位于四面体T的前面。而且,图1C的结构本身不被显示。相反,图形管道建立与对象的位置和方位参数对应的模型坐标的处理。
下一步是选择参考框架。例如,可能确定"观察者"希望从真实坐标模型的一个角部位置观察该对象(例如,图1D的位置P)。因此,将选择虚拟视点,观察方向和孔径。与该"观察者"关联的多个参数定义屏幕坐标(screencoordinate,SC)系统。而且,可能确定观察者使用一个位于位置L的光源观察这些对象。图形管道将建立另一个处理管道,以将真实坐标数据处理成屏幕坐标数据,该数据让计算机屏幕显示的图像如同观察者在位置P所观察到的图像(例如,图1D的图像)。换句话说,计算机屏幕将提供一幅四面体T和立方体C的图像,其中,四面体T和立方体C就如同观察者站在位置P并且光源在位置L时所观察的一样。该图像最初作为帧缓冲器的一个像素阵列进行提供,然后通过计算机屏幕进行显示。帧缓冲器中的图像典型地以大约每秒50到120次进行刷新,即,根据编程到管道中的规格要求进行重新生成。存在很多不同的方法,用于优化管道并且最小化处理对象不可见部分(例如,远离观察者的立方体C的背面)的时间。这些细节为本领域的技术人员所熟知,在此不作详细讨论。
在上述构造像素阵列并且将它提供给帧缓冲器的过程中,管道a)提取"钉"到网状物4的顶点的纹理图2部分(并且因此沿每个三角形进行延展);b)在给定相对于观察者和光源位置的三角形方位时,确定纹理图的该部分应该如何以及在哪里进行显示;并且c)构造存储在帧缓冲器中的适当位图像素阵列。然后,该帧缓冲器的内容作为图像在计算机屏幕上进行显示。
此后,3D图形加速器允许我们以任何所需方式处理所显示的对象。例如,如果我们想以45度旋转四面体T(图1E),3D图形加速器将帮助这一处理。这是通过将一个表示四面体T的新位置和方位的真实坐标模型参数的新集合,提供给图形管道来实现的。此后,下次该图形管道重新生成在帧缓冲器中存储的图像时,所刷新的图像将反映四面体T的这种旋转。
同样地,假设要求显示如果观察者从位置P前进10步时,出现在他面前的图像。下次该图形管道重新生成该图像时,它将生成并且在帧缓冲器中存储与将出现在该观察者面前的图像对应的另一像素阵列,并且该像素阵列作为另一图像提供在计算机屏幕上。
因此可以看到,图形管道在如视频游戏的应用中极其有用,在这些应用中,如果游戏操作者走过一系列对象,就需要模拟出现在他面前的图像。
如上所述,一些图形管道使用隐式技术创建几何表面模型。这些表面经常描述为位置坐标函数,即f(x,y,z),或者,也可以包含一些顶点。与这些表面相关的控制点和附加公式用作将一个数字像素阵列(例如,图1A所示的阵列)绑定到隐式定义的表面,并且该过程如上所述进行。主要的差别是,表面区域是根据数学方程定义的,而不是根据带顶点的图元定义表面区域。
2D图像的处理
本发明过程的开始步骤是获取二维数字图像的步骤(例如,图2A的图10)。该步骤可以如通过使用传统的数字扫描仪扫描如照片或其它图像进行完成。数字图像也可以从传统的数码相机获取。图像还可以包括如来自直播或所存储的视频流(基本上是一系列快速、连续的2D图像)的数字视频图像。然而,也可以使用任何其它来源的2D数字图像。如上所述,数字图像典型地作为数字值的阵列存储在存储器中。在一个实施例中,该数字值采用如使用MEPG1、MPEG2或其它格式的压缩技术的压缩格式。在数字值经过压缩的情况下,在处理前,它们必须首先进行解压缩。另外,还可以使用所扫描的图像或来自任何如有线电视、天线、照相机等来源的数字化图像。
如上所述,对于视频图像的情况,每秒必须处理由每秒数百万像素组成的很多帧。我们发现标准图形管道可以用于充分快速地处理多帧数据,以处理视频图像。
任何类型的存储器可以用于存储数字2D图像,例如,半导体存储器(静态存储器SRAMs,动态随机存取存储器DRAMs,或其它半导体存储器),磁性存储器(例如,硬盘,软盘,磁带,或磁光盘),或者其它类型的存储器设备(例如,光盘)。与所存储图像对应的像素可以根据RGB值(例如,像素色彩的红、绿和蓝分量的强度),YUV值或其它值进行存储(对于YUV值,Y对应于像素值的幅度或亮度,U对应于色彩,并且V对应于饱和度。)。像素值也能以其它方式进行编码。在进一步处理之前,根据情况,可能要求进行转换。
下一步,建立3D图形管道,这是通过将对所要提供的数据做什么处理的指令提供给3D图形管道来完成的。建立图形管道本身为本领域所熟知,例如,如Microsoft Direct 3D SDK(software developer kit,软件开发工具包)或direct 3D所述。
此后,一个平面几何表面的计算机模型被生成。这个计算机模型可以包含图元的集合,例如,如三角形的多边形。在另一实施例中,计算机模型可以包括一个平面几何表面的隐式描述。这种隐式描述典型地是一个如上所述的数学函数(例如,x,y和z的函数)。
对于平面几何表面包含一个多个图元的网状物的情况,图元的数目和形状,以及图元的类型可以变化。图2B示出一个可以用于实行本发明方法的网状物12。网状物12和上面所述的网状物4相似。然而,和网状物4不同,网状物12的所有顶点是共面的(或大部分共面)。在一个实施例中,网状物12包括大约5000个三角形,这对于处理视频图像是可以接受的。当然,也可以使用其它图元数目。
在构建平面几何表面(例如网状物12)之后,图像10被映射或者绑定到该平面几何表面上。这是按照如下方式进行实现的。对于平面几何表面是一个如网状物12的网状物的情况,平面几何表面的每个顶点(例如,三角形的顶点)与一个图像像素的位置相关联(例如,控制点)。因此,每个控制点与一个与像素对应的纹理坐标(u,v)目关联。一个列出每个顶点及其关联的u、v纹理空间坐标的数据表被建立。这被称作"绑定"(参见Kamen,IEEE计算机协会,IEEE计算机图形和应用,1997年1-2月,第17卷,编号1)。对于隐式技术用于定义平面几何表面的情况,该隐式定义表面内的控制点采用与上面所讨论的三角形类似的方法,绑定到像素阵列坐标空间(u、v坐标)。
在图10被映射到网状物12之后,对象可以通过处理真实坐标进行处理。真实坐标描述在x、y、z空间中该平面出现在什么位置以及它的方位是什么(例如,对于观察者,它应该持什么角度)。另外,对象的屏幕坐标能进行改变。从而,在2D图像准备完毕时,它能够以反映所需处理的方式进行准备。例如,它可以围绕任何轴进行旋转、放大、缩小等等。
在建立真实坐标模型和屏幕坐标模型之后,管道在输出帧缓冲器(outputframe buffer,OFB)中准备一个包含显示所处理的纹理网状物12的像素的阵列。OFB中的像素阵列显示在CRT或其它类型的屏幕上。
我们可以通过,例如,改变真实坐标的参数来处理视频图像,例如通知管道围绕任一轴线倾斜视频图像(包括垂直于屏幕或屏幕平面中的轴线)。因此,当管道在OFB中重新生成像素阵列时,所重新生成的视频图像将显现为围绕选定的轴线产生倾斜。由于管道将根据所使用的系统以预编程的速率重新生成图像,因此直播视频将以直播视频的形式显现。这是由于每次生成新像素阵列时,包含输入视频帧缓冲器的纹理图,被重读并且发送到管道。由于纹理映射过程还包含用于像素插值的特性,因此发生自动分辨率适应。
我们可以通过移动映射图像的相关顶点来弯曲或翘曲图像。因此,我们可以改变图2B的平面几何面,从而翘曲图像。当管道重新生成帧缓冲器中的像素阵列时,图像将呈翘曲状。
我们可以移动顶点,从而网状物10变为一个圆柱体。当管道重新生成帧缓冲器中的像素阵列时,图像将呈环绕圆柱体翘曲状。(当然,网状物10能被改变为其它形状,并且该图像将环绕任何其它形状发生翘曲。)这些修改能以一定的速度进行,从而给观察者产生图像正在被翘曲或逐渐被翘曲的印象。
我们可以通过在真实坐标系统中,将顶点彼此移远或移近,或者将图像移近或远离观察者,或者通过重新参数化模型坐标到真实坐标的变换来放大或缩小图像。
我们能通过让顶点以不同的速度下落产生图像"融化"效果。
可能的3D处理的数目仅仅受限于要对它们进行全部试验的用户的精力。
用于实行一个本发明方法的实施例的硬件和软件
本发明的一个实施例可以使用一台PC进行实行,该PC包括:
1.例如Intel生产的如Celeron或Pentium的CPU,或者如Advanced MicroDevices生产的K6处理器。
2.32MB或更大的内存。
3.3D HW适配器。这是目前可在市场上得到的一种图形卡。该3D HW适配器需要具有4MB存储器(最好是8MB)和一个高级图形端口(AGP)接口(AGP接口是本领域所熟知的一种总线标准)。作为替换,周边连接接口(peripheral connection interface,"PCI")可以用来替代AGP。PCI是本领域所熟知的一种总线标准。合适3D HW适配器的例子包括:可从Riva得到的TNT-2、ATI Rage 128,Matrox G400,Trident Blade 3D和S3 Savage。
4.操作系统可以是Windows 95、Windows 98、Win2000或者支持direct 3D的任何其它操作系统。Windows操作系统包括称作Direct X Windows版的标准化平台。
在一个实施例中,用户在Direct 3D windows环境中建立平面几何表面(例如,一个三角形网状物)。然后,将指令集合提供给完成绘图处理的图形管道。然而,在另一实施例中,PC包括一个旁路机制,它允许我们直接使用由图像卡制造商提供的软件接口访问硬件加速器。
图3是一个执行本发明的方法的计算机系统50的方框图。结合图3,系统50包括CPU52,例如PentiumII类型CPU,它包括高速缓冲存储器52a、核心52b和用于实现核心52b和高速缓冲存储器52a之间通信的内部总线52c。核心52b通过CPU总线54和系统控制器56进行通信。系统控制器56通过存储器总线60和系统存储器58进行通信。系统存储器58包括存储系统存储器程序的第一部分58a,和存储如上所述的纹理图的第二部分58b。
另外,系统50中还包括PCI总线62,用于实现系统控制器56和I/O设备64,66和硬盘驱动器68之间的通信。I/O设备64可以是任何类型的I/O设备。在一个实施例中,I/O设备66是一个带有驱动程序的视频捕获卡。来自视频捕获卡的数据通过DMA(direct memory access,直接存储器存取)或CPU52载入到帧缓冲器中,典型地,位于主存储器58内。然而,帧缓冲器可能在系统50内的其它存储器中。
系统50还包括包含3D加速器的AGP图形控制器70。在一个实施例中,AGP图形控制器70利用AGP总线72和系统控制器56进行通信。在另一个作为替换的实施例中,AGP图形控制器70可以利用PCI总线62和系统控制器56进行通信(例如,如图3的虚线部分所示)。
图形控制器70使用自己本地存储器74,以生成并且存储要显示在视频显示单元76的像素阵列。
需要强调的是,系统50仅仅是一个执行本发明的方法的例子。其它硬件也可以进行使用。
发明应用
存在很多适合于本发明的应用。例如,本发明的方法可以用于处理如电视图像的图像流。由于在北美视频图像包括大约60帧/秒速率的连续帧,因此本发明的方法特别适合。例如,在NTSC情况下,要求大约每秒9.1MB的吞吐量。(NTSC是"North American Television Standard for Color(北美彩色电视标准)"的缩写。它是北美所使用的电视信号标准。)
本发明的另一应用是将不同视频图像或其它图像的部分,移动和倾斜到屏幕(如PC屏幕)的不同部分上。例如,该图像可以进行变换,以显现在多面体(例如,立方体)的多个面上。通过在计算机显示上单击适当图标,我们可以旋转多面体,以查看该多面体不同面上的不同图像。该多面体可以用作一种新型的计算机菜单选项显示。
根据本发明提供的经过处理的图像可以提供给任何合适输出设备,例如,电视屏幕,视频放映机,HDTV监视器或PC屏幕。根据本发明处理的图像可以来自大量来源中的任何一种,例如,模拟或数字视频输入,有线电视输入,卫星输入,因特网,数字扫描仪,数码相机,或很多其它来源。(在模拟输入的情况下,我们将首先对图像进行数字化。)
虽然本发明是对一个特定实施例进行描述的,但是本领域的技术人员应该理解,在不脱离本发明的精神和范围的情况下,可以对其进行形式和细节上的修改。例如,本发明可以用于将2D图像映射到大部分是平面的表面上,而不是完全平面的表面上。因此,所有这些修改将在本发明的范围内进行。
Claims (26)
1.一种方法,包括:
提供二维图像的数字表示;
提供几何表面的模型;
将所述数字表示绑定到所述几何表面的所述模型上;和
生成与要显示的图像对应的像素阵列,要显示的所述图像包括应用于所述几何表面的所述二维图像。
2.如权利要求1所述的方法,还包括将要显示的所述图像显示到显示设备的操作。
3.如权利要求1所述的方法,其中,在所述绑定的操作中,所述几何表面大体上是平的。
4.如权利要求3所述的方法,还包括修改所述几何表面的操作,从而在生成所述像素阵列之前它不再为大体上的平面,因此,所述显示图像不显现为大体上是平的。
5.如权利要求2所述的方法,还包括执行数字处理过程的操作,所述数字处理过程包括对要显示的所述图像进行翘曲、改变大小、融化,和旋转中的一种。
6.如权利要求2所述的方法,还包括建立所述几何表面在真实坐标系统中的地点和位置的操作,其中,生成所述像素阵列的所述操作考虑所述几何表面在所述真实坐标系统中的地点和位置。
7.如权利要求1的所述方法,其中,所述几何表面包括一个多边形的集合。
8.如权利要求1的所述方法,其中,所述几何表面使用隐式技术进行定义。
9.如权利要求1的所述方法,其中,所述生成操作是使用3D图形管道实现的。
10.如权利要求1的所述方法,其中,所述二维图像的所述表示是从视频图像获得的。
11.一种结构,包括:
第一存储器,用于存储二维图像的数字表示;
第二存储器,用于存储几何表面的模型;
第三存储器,用于存储真实坐标系统,所述真实坐标系统表示要显示对象的地点和方位;和
图像3D管道,用于将所述几何表面的所述模型绑定到所述二维图像上,并且生成与要显示图像对应的像素阵列,所述图像的所述生成,至少部分基于根据所述二维图像加上纹理的所述几何表面,所述图像根据所述真实坐标系统进行定向和定位。
12.如权利要求11所述的结构,还包括用于显示要显示的所述图像的显示器。
13.如权利要求11所述的结构,其中,所述几何表面大体上是平的。
14.如权利要求13所述的结构,其中,所述图形管道允许对所述大体上是平的几何表面进行处理,从而要显示的所述图像不显现为所述几何表面大体上是平的。
15.如权利要求11所述的结构,其中,所述第一,第二,第三存储器包括在同一存储器设备内的不同位置的集合。
16.一种方法,包括如下操作:
提供图像给3D图形管道;
提供几何表面给所述3D图形管道;和
基于至少部分所述图像到所述几何表面的绑定,生成像素阵列。
17.如权利要求16所述的方法,其中,所述图像是视频图像。
18.如权利要求17所述的方法,其中,当所述几何表面被绑定到所述视频图像时,所述几何表面是平的几何表面。
19.一种方法,包括如下操作:
提供二维图像给3D图形管道;
提供大体上是平的几何表面给所述3D图形管道;
基于至少部分所述二维图像到所述平面几何表面的绑定,生成像素阵列。
20.如权利要求19所述的方法,包括将所述二维图像绑定到所述几何表面,然后改变所述几何表面的操作,从而所述几何表面不再为大体上是平的。
21.如权利要求1或19所述的方法,其中,所述二维图像是数字化照片。
22.如权利要求1或19所述的方法,其中,所述二维图像是来自视频片断的帧。
23.如权利要求1或19所述的方法,其中,所述二维图像是三维对象的二维图像。
24.一种结构,包括:
视频图像源;和
3D图形管道,接收所述视频图像,并且通过将所述视频图像绑定到几何表面和基于至少部分所述视频图像到所述几何表面的绑定,生成像素阵列,来处理所述视频图像。
25.一种结构,包括:
包含二维图像表示的存储器;和
包含几何表面的存储器;和
3D图形管道,用于将所述二维图像绑定到所述几何表面,并且生成与所述绑定的二维图像对应的像素阵列。
26.如权利要求25所述的结构,其中,所述几何表面大体上是平的。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11850599P | 1999-02-03 | 1999-02-03 | |
US60/118,505 | 1999-02-03 | ||
US09/344,442 | 1999-06-25 | ||
US09/344,442 US6342884B1 (en) | 1999-02-03 | 1999-06-25 | Method and apparatus for using a general three-dimensional (3D) graphics pipeline for cost effective digital image and video editing, transformation, and representation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1339142A true CN1339142A (zh) | 2002-03-06 |
CN100458850C CN100458850C (zh) | 2009-02-04 |
Family
ID=26816446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB008032912A Expired - Lifetime CN100458850C (zh) | 1999-02-03 | 2000-02-03 | 编辑图像的结构及方法 |
Country Status (5)
Country | Link |
---|---|
US (2) | US6342884B1 (zh) |
EP (1) | EP1171847A4 (zh) |
JP (2) | JP2003528360A (zh) |
CN (1) | CN100458850C (zh) |
WO (1) | WO2000046754A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101219058B (zh) * | 2002-03-14 | 2012-01-11 | Netkisr有限公司 | 分析和显示计算机体层摄影术数据的系统和方法 |
WO2012040883A1 (en) * | 2010-09-30 | 2012-04-05 | Technicolor (China) Technology Co., Ltd. | Method and apparatus for encoding geometry patterns, and method and apparatus for decoding geometry patterns |
CN102737358A (zh) * | 2011-02-25 | 2012-10-17 | 奥多比公司 | 用于硬件加速媒体回放的独立分层内容 |
CN102542579B (zh) * | 2005-03-04 | 2016-04-20 | Arm挪威股份有限公司 | 用于编码数据的方法和设备 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000090289A (ja) * | 1998-07-13 | 2000-03-31 | Sony Corp | 画像処理装置および画像処理方法、並びに媒体 |
US6437791B1 (en) * | 1999-06-11 | 2002-08-20 | Creative Technology Ltd. | Method and apparatus for supporting texture patterns larger than supported natively by a graphics chip |
US6690380B1 (en) * | 1999-12-27 | 2004-02-10 | Microsoft Corporation | Graphics geometry cache |
US6421067B1 (en) | 2000-01-16 | 2002-07-16 | Isurftv | Electronic programming guide |
US6891533B1 (en) * | 2000-04-11 | 2005-05-10 | Hewlett-Packard Development Company, L.P. | Compositing separately-generated three-dimensional images |
JP3530125B2 (ja) * | 2000-09-27 | 2004-05-24 | 彰 川中 | 構造化ポリゴン・メッシュ・データの形成方法および装置、記憶媒体 |
US6650335B2 (en) * | 2001-02-22 | 2003-11-18 | Mitsubishi Electric Research Laboratories, Inc. | Method for extracting static and dynamic super-resolution textures form a sequence of images |
US20030058258A1 (en) * | 2001-09-24 | 2003-03-27 | Simpson Ted L. | Digital image morphing and mapping process |
JP4220182B2 (ja) * | 2002-05-31 | 2009-02-04 | 株式会社東芝 | 高次元テクスチャ描画装置、高次元テクスチャ圧縮装置、高次元テクスチャ描画システム、高次元テクスチャ描画方法並びにプログラム |
US7511714B1 (en) | 2003-11-10 | 2009-03-31 | Nvidia Corporation | Video format conversion using 3D graphics pipeline of a GPU |
US7630580B1 (en) * | 2004-05-04 | 2009-12-08 | AgentSheets, Inc. | Diffusion-based interactive extrusion of 2D images into 3D models |
US7995863B2 (en) * | 2004-05-04 | 2011-08-09 | AgentSheets, Inc. | Diffusion-based interactive extrusion of two-dimensional images into three-dimensional models |
US20060187297A1 (en) * | 2005-02-24 | 2006-08-24 | Levent Onural | Holographic 3-d television |
US7612775B2 (en) * | 2005-07-28 | 2009-11-03 | The Boeing Company | Real-time conformal terrain rendering |
US20070046699A1 (en) * | 2005-09-01 | 2007-03-01 | Microsoft Corporation | Three dimensional adorner |
US8464170B2 (en) * | 2005-09-09 | 2013-06-11 | Microsoft Corporation | 2D editing metaphor for 3D graphics |
US7596763B2 (en) | 2005-10-24 | 2009-09-29 | International Business Machines Corporation | Automatic 3D object generation and deformation for representation of data files based on taxonomy classification |
US8203564B2 (en) * | 2007-02-16 | 2012-06-19 | Qualcomm Incorporated | Efficient 2-D and 3-D graphics processing |
US20080284798A1 (en) * | 2007-05-07 | 2008-11-20 | Qualcomm Incorporated | Post-render graphics overlays |
US8675730B2 (en) * | 2009-07-13 | 2014-03-18 | Nvidia Corporation | Macroblock grouping in a destination video frame to improve video reconstruction performance |
WO2013082539A1 (en) | 2011-12-01 | 2013-06-06 | Lightcraft Technology Llc | Automatic tracking matte system |
US9501700B2 (en) | 2012-02-15 | 2016-11-22 | Xactware Solutions, Inc. | System and method for construction estimation using aerial images |
WO2014003736A1 (en) | 2012-06-27 | 2014-01-03 | Landmark Graphics Corporation | Systems and methods for creating a three-dimensional texture atlas |
EP3028464B1 (en) | 2013-08-02 | 2019-05-01 | Xactware Solutions Inc. | System and method for detecting features in aerial images using disparity mapping and segmentation techniques |
KR102082132B1 (ko) * | 2014-01-28 | 2020-02-28 | 한국전자통신연구원 | 2d 동영상으로부터 새로운 3d 입체 동영상 제작을 위한 장치 및 방법 |
US11094113B2 (en) | 2019-12-04 | 2021-08-17 | Geomni, Inc. | Systems and methods for modeling structures using point clouds derived from stereoscopic image pairs |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2951663B2 (ja) * | 1987-08-05 | 1999-09-20 | ダイキン工業株式会社 | テクスチャマッピング装置およびその方法 |
US5369735A (en) * | 1990-03-30 | 1994-11-29 | New Microtime Inc. | Method for controlling a 3D patch-driven special effects system |
US6011581A (en) * | 1992-11-16 | 2000-01-04 | Reveo, Inc. | Intelligent method and system for producing and displaying stereoscopically-multiplexed images of three-dimensional objects for use in realistic stereoscopic viewing thereof in interactive virtual reality display environments |
US5550960A (en) * | 1993-08-02 | 1996-08-27 | Sun Microsystems, Inc. | Method and apparatus for performing dynamic texture mapping for complex surfaces |
CA2180891C (en) * | 1995-07-12 | 2010-01-12 | Junichi Rekimoto | Notification of updates in a three-dimensional virtual reality space sharing system |
JP3834849B2 (ja) * | 1995-10-02 | 2006-10-18 | ソニー株式会社 | 画像制御装置および方法 |
JPH09147136A (ja) * | 1995-11-16 | 1997-06-06 | Sony Corp | モデリングデータ作成装置および方法 |
US5825369A (en) * | 1996-01-16 | 1998-10-20 | International Business Machines Corporation | Compression of simple geometric models using spanning trees |
US5991437A (en) * | 1996-07-12 | 1999-11-23 | Real-Time Geometry Corporation | Modular digital audio system having individualized functional modules |
US5751291A (en) * | 1996-07-26 | 1998-05-12 | Hewlett-Packard Company | System and method for accelerated occlusion culling |
US6047088A (en) * | 1996-12-16 | 2000-04-04 | Sharp Laboratories Of America, Inc. | 2D mesh geometry and motion vector compression |
JP2812674B2 (ja) * | 1997-01-10 | 1998-10-22 | コナミ株式会社 | 水面の画像表示装置及びその画像表示方法 |
US5945997A (en) * | 1997-06-26 | 1999-08-31 | S3 Incorporated | Block- and band-oriented traversal in three-dimensional triangle rendering |
-
1999
- 1999-06-25 US US09/344,442 patent/US6342884B1/en not_active Expired - Lifetime
-
2000
- 2000-02-03 EP EP00905959A patent/EP1171847A4/en not_active Withdrawn
- 2000-02-03 WO PCT/US2000/002838 patent/WO2000046754A1/en active Search and Examination
- 2000-02-03 CN CNB008032912A patent/CN100458850C/zh not_active Expired - Lifetime
- 2000-02-03 JP JP2000597760A patent/JP2003528360A/ja active Pending
-
2001
- 2001-12-04 US US10/004,737 patent/US6525728B2/en not_active Expired - Lifetime
-
2011
- 2011-04-27 JP JP2011099805A patent/JP2011170881A/ja active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101219058B (zh) * | 2002-03-14 | 2012-01-11 | Netkisr有限公司 | 分析和显示计算机体层摄影术数据的系统和方法 |
CN102542579B (zh) * | 2005-03-04 | 2016-04-20 | Arm挪威股份有限公司 | 用于编码数据的方法和设备 |
WO2012040883A1 (en) * | 2010-09-30 | 2012-04-05 | Technicolor (China) Technology Co., Ltd. | Method and apparatus for encoding geometry patterns, and method and apparatus for decoding geometry patterns |
CN103329169A (zh) * | 2010-09-30 | 2013-09-25 | 汤姆逊许可公司 | 几何图案编码方法和设备,以及几何图案解码方法和设备 |
US9002121B2 (en) | 2010-09-30 | 2015-04-07 | Thomson Licensing | Method and apparatus for encoding geometry patterns, and method for apparatus for decoding geometry patterns |
CN103329169B (zh) * | 2010-09-30 | 2016-01-27 | 汤姆逊许可公司 | 几何图案编码方法和设备,以及几何图案解码方法和设备 |
CN102737358A (zh) * | 2011-02-25 | 2012-10-17 | 奥多比公司 | 用于硬件加速媒体回放的独立分层内容 |
CN102737358B (zh) * | 2011-02-25 | 2016-12-07 | 奥多比公司 | 用于硬件加速媒体回放的独立分层内容 |
Also Published As
Publication number | Publication date |
---|---|
EP1171847A1 (en) | 2002-01-16 |
US6342884B1 (en) | 2002-01-29 |
EP1171847A4 (en) | 2009-04-29 |
WO2000046754A1 (en) | 2000-08-10 |
WO2000046754A9 (en) | 2001-09-13 |
CN100458850C (zh) | 2009-02-04 |
US6525728B2 (en) | 2003-02-25 |
JP2003528360A (ja) | 2003-09-24 |
JP2011170881A (ja) | 2011-09-01 |
US20020041286A1 (en) | 2002-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100458850C (zh) | 编辑图像的结构及方法 | |
US8947448B2 (en) | Image processing device, image data generation device, image processing method, image data generation method, and data structure of image file | |
DE60300788T2 (de) | Bild mit Feldtiefe aus Z-Pufferbilddaten und Alphamischung | |
US6879328B2 (en) | Support of multi-layer transparency | |
KR20160130433A (ko) | 가변 렌더링 및 래스터화 파라미터 하에서 가변 뷰포트에 대하여 오브젝트를 효율적으로 리렌더링하는 방법 | |
JPH0778267A (ja) | 陰影を表示する方法及びコンピュータ制御表示システム | |
WO1996036011A1 (en) | Graphics system utilizing homogeneity values for depth for occlusion mapping and texture mapping | |
CN1150675A (zh) | 用于纹理映射的方法和装置 | |
WO2000046753A1 (en) | Method and apparatus for 3d model creation based on 2d images | |
CN101059760A (zh) | Opengl到opengl│es翻译器和opengl│es仿真器 | |
CN106162140A (zh) | 一种全景视频的压缩方法及装置 | |
CN103679786A (zh) | 图形处理单元可编程着色器的纹元数据结构和其操作方法 | |
CN1618086A (zh) | 创建运动幻象的方法和设备 | |
US7133052B1 (en) | Morph map based simulated real-time rendering | |
JP3959862B2 (ja) | テクスチャマッピング方法及びその装置 | |
JPH10507858A (ja) | 3次元ワイヤフレーム上の写真現実表面に自動的に迅速に描画する方法および装置 | |
CN109829962B (zh) | 一种利用opengl的物体空间消隐线计算加速方法 | |
Peterson et al. | The Utah Raster Toolkit | |
JP2003168130A (ja) | リアルタイムで合成シーンのフォトリアルなレンダリングをプレビューするための方法 | |
JP3501479B2 (ja) | 画像処理装置 | |
CN108805964B (zh) | 基于OpenGL ES的VR机顶盒启动动画制作方法及系统 | |
CN110619669B (zh) | 一种支持多种图形样式的鱼眼图像渲染系统及方法 | |
Blythe et al. | Lighting and shading techniques for interactive applications | |
Froumentin et al. | An Efficient 2½ D rendering and Compositing System | |
JP3453410B2 (ja) | 画像処理装置及びその方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CX01 | Expiry of patent term |
Granted publication date: 20090204 |
|
CX01 | Expiry of patent term |