CN104821008A - 用于处理三维场景的几何图像的方法和设备 - Google Patents
用于处理三维场景的几何图像的方法和设备 Download PDFInfo
- Publication number
- CN104821008A CN104821008A CN201510055039.8A CN201510055039A CN104821008A CN 104821008 A CN104821008 A CN 104821008A CN 201510055039 A CN201510055039 A CN 201510055039A CN 104821008 A CN104821008 A CN 104821008A
- Authority
- CN
- China
- Prior art keywords
- pixel
- chart
- border
- mesh coordinate
- neighborhood
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
- Image Processing (AREA)
Abstract
一种用于处理从与3D场景相关联的网格生成并包含每个都表示3D场景的一部分的多个图表的几何图像的方法和设备,该方法包含:从与当前像素(203)相关联的网格坐标和与第一像素(213)相关联的网格坐标计算参考方向(21),第一像素(213)对应于沿着具有当前像素(203)作为原点的确定方向(20)所在的第一图表的边界的像素;比较参考方向(21)与每个都从与至少一个当前像素(203)相关联的网格坐标和与第一像素(213)的邻域的一个像素(222至226;212至214)相关联的间接网格坐标来计算的一组候选方向(22,23,24,25,26),间接网格坐标对应于与第一像素的邻域的像素相对应的第二图表的边界的像素的网格坐标;以及根据比较结果选择第二图表的边界的像素。
Description
技术领域
本公开涉及处理3D场景的一个或多个几何图像以及从相关联的几何图像重建3D场景的领域。本公开还在计算机生成图像(CGI或3D-CGI)几何处理和建模的背景下进行理解。
背景技术
根据背景技术,已知用网格数据结构表示3D场景。开发并优化了多种网格数据结构用于GPU使用。诸如半边缘数据表示、四叉树、八叉树、BVH等数据结构针对高效地对三角形信息进行编码。虽然这样的传统的方法允许存储网格的每个三角形,但是对于产生和使用,其比基于纹理的方法更复杂。在这后一类的数据结构中,网格信息被编码为使用着色器(shader)在GPU上易于访问的经典纹理。
在基于纹理的方法中,Gu等人在“Geometry images”(ACM Transactionson Graphics(TOG),第21卷,第355-361页,ACM,2002年)中引入了几何图像。从网格开始,首先计算表面参数化,使得网格在拓扑上等同于盘(disk)。然后,通过使用uv参数化而不是顶点位置将网格呈现为纹理来生成几何图像。结果是其中每个像素包含一个经插值的顶点位置值的网格的扁平纹理表示。还可以根据像素值存储诸如法线和纹理坐标等其他信息。然后,该几何图像可以用于近似地重建初始网格。
Sanders等人在“Multi-chart geometry images”(processings of 2003Eurographics/ACM SIGGRAPH symposium on Geometry processings,第146-155页,Euro-graphics Association,2003年)中将该工作扩展为多图表几何图像,以限制Gu等人引入的失真。为了做到这一点,在网格上找到多个切割(cut)以提取各种独立参数化的图表。然后,通过图表放置算法使图表分布于整个纹理上。最后,在第一遍中应用经典的几何图像呈现,以产生多图表几何图像。因为两个邻近的图表的边界上的光栅化可能对每个图表给出不同的值,所以它们应用边界拉合算法(border zippering algorithm)。该算法避免裂缝并且确保在图表边界处的连续性。在第二遍中,在每个图表周围创建一个像素的大边界,以迫使相邻图表共享完全相同的边界。获得更好的重建,使失真伪像最小化。
几何图像已经被用于GPU上的网格的高效光线跟踪,证明该结构适合于GPU。然而,虽然基于多图表几何图像的重建由于边界拉合是无缝的,但是几何图像的每个图表都与其近邻无关。该表示不允许在运行时地从一个图表跳到另一个图表。例如,在几何图像的源图表的边界像素上,不存在在目的地图表中发现其近邻的解决方案。虽然几何图像对于快速GPU访问是良好的网格数据结构,但是由于图表总是独立的,所以不可能使用这样的表示在对象周围任意地移动。
发明内容
本公开的目的是克服背景技术中的这些不足中的至少一项。
更具体地,本公开的目的是将几何图像的图表相互链接。
本公开涉及一种处理几何图像的方法,几何图像从与3D场景相关联的网格产生,几何图像包含第一图表和至少一个第二图表,每个第一和第二图表表示3D场景的一部分。该方法对于与形成第一图表的边界的第一图表的像素不同的第一图表的至少一个当前像素,包含以下步骤:
-从与至少一个当前像素相关联的网格坐标和与第一像素相关联的网格坐标计算参考方向,第一像素对应于沿着具有至少一个当前像素作为原点的确定方向所在的第一图表的边界的像素;
-比较参考方向与一组候选方向,每个候选方向从与至少一个当前像素相关联的网格坐标和与第一像素的邻域的一个像素相关联的间接网格坐标来计算,间接网格坐标对应于与第一像素的邻域的像素相对应的至少一个第二图表的边界的像素的网格坐标;以及
-根据比较结果选择至少一个第二图表的边界的像素。
根据具体特征,用于计算候选方向的第一像素的邻域的像素属于第一图表的边界。
有利地,用于计算候选方向的第一像素的邻域的像素在第一图表的边界的外部,并且邻近所选择的像素。
根据具体特征,对应于第一像素的邻域的像素的至少一个第二图表的边界的像素通过比较第一像素的邻域的像素的网格坐标和至少一个第二图表的边界的多个像素的网格坐标来确定,所确定的至少一个第二图表的边界的像素是使其网格坐标与第一像素的邻域的像素的网格坐标之间的差异最小的像素。
有利地,所选择的像素对应于参考方向和关联到所选择的像素的候选方向之间的差异关于参考方向和其他候选方向之间的差异最小的像素。
根据另外的特征,该方法还包含确定用于扫描对应于所确定的方向的至少一个第二图表的方向,该方向根据所确定的方向、第一像素处的第一图表的边界的切线和所选择的像素处的至少一个第二图表的边界的切线来确定。
本公开还涉及一种被配置为处理几何图像的设备,几何图像从与3D场景相关联的网格产生,几何图像包含第一图表和至少一个第二图表,每个第一和第二图表表示3D场景的一部分,该设备包含对于与形成第一图表的边界的第一图表的像素不同的第一图表的至少一个当前像素,被配置为进行以下处理的至少一个处理器:
-从与至少一个当前像素相关联的网格坐标和与第一像素相关联的网格坐标计算参考方向,第一像素对应于沿着具有至少一个当前像素作为原点的确定方向所在的第一图表的边界的像素;
-比较参考方向与一组候选方向,每个候选方向从与至少一个当前像素相关联的网格坐标和与第一像素的邻域的一个像素相关联的间接网格坐标来计算,间接网格坐标对应于与第一像素的邻域的像素相对应的至少一个第二图表的边界的像素的网格坐标;以及
-根据比较结果选择至少一个第二图表的边界的像素。
有利地,所述至少一个处理器还被配置为比较第一像素的邻域的像素的网格坐标与至少一个第二图表的边界的多个像素的网格坐标,以确定对应于第一像素的邻域的像素的至少一个第二图表的边界的像素,所确定的至少一个第二图表的边界的像素是使其网格坐标与第一像素的邻域的像素的网格坐标之间的差异最小的像素。
根据具体特征,所述至少一个处理器还被配置为确定用于扫描对应于所确定的方向的至少一个第二图表的方向,该方向根据所确定的方向、第一像素处的第一图表的边界的切线和所选择的像素处的至少一个第二图表的边界的切线来确定。
根据另一特征,所述至少一个处理器是图形处理器单元(GPU)。
本公开还涉及一种计算机程序产品,其包含用于当程序在计算机上被执行时,由至少一个处理器执行以执行处理几何图像的方法的程序代码的指令。
本公开还涉及一种处理器可读取的介质,其中存储用于使处理器执行处理几何图像的方法的指令。
附图说明
通过阅读下面的说明,将更好地理解本公开,并且将呈现其他具体特征和优点,说明参照附图,附图中:
-图1示出根据具体实施例的包含多个图表的几何图像;
-图2示出根据具体实施例的位于图1的几何图像的第一图表的边界处的像素的块;
-图3示出根据具体实施例的图1的几何图像的第一图表和第二图表的边界;
-图4A和4B分别示出根据具体实施例的位于图3的第一图表的边界处的像素的块和位于第二图表的边界处的像素的块;
-图5是图示根据具体实施例的实现处理图1的几何图像的方法的设备;以及
-图6示出根据具体实施例的处理图1的几何图像的方法。
具体实施方式
将参考处理从表示虚拟3D场景的网格产生的几何图像的方法的具体实施例来描述本公开。几何图像有利地包括多个图表,例如第一图表和一个或多个第二图表,每个第一和第二图表示3D场景的一部分。通过将第一和第二图表相互组装,能够重建网格,并且从而重建3D场景。有利地,通过使用与不同于形成第一图表的边界的像素的第一图表的当前像素相关联的网格坐标和与属于第一图表的边界并且沿着具有当前像素作为原点的所确定的方向所在的第一像素相关联的网格坐标来计算参考方向。然后,有利地,将参考方向与多个候选方向进行比较。每个候选方向具有当前像素作为原点,并且被定义为通过对应于属于第一像素的邻域的像素的第二图表的边界的像素,第二图表的边界的像素的网格坐标(被称为间接网格坐标)与属于对应于第二图表的边界的后面的像素的第一像素的邻域的像素相关联。基于比较结果,选择候选方向之一,这使得能够选择可以对应于当前像素的第二图表的边界的像素。这样的信息在从图表重建3D场景时非常有用,因为其使得能够确定在脱离沿着所确定的方向的第一图表的当前像素时,哪个第二图表(以及第二图表的边界的哪个像素)与第一图表相关联。
图1示出根据具体且非限制性的实施例的与3D虚拟场景相关联的几何图像1。3D虚拟图像包含虚拟对象,其表面有利地用在世界空间(亦即,3D虚拟场景的空间)中表示的顶点坐标(x,y,z)定义的多边形的网格表示。有利地,使用诸如在由Sheffer等人在“Mesh parameterization methods and theirapplications”(Foundation and Trends in Computer Graphics and Vision,2(2):105-171,2006年)中描述的方法这样的任何已有的多图表展开方法通过网格的参数化来获得几何图像1。根据这些方法,首先将网格分割成多个图表,其中每个图表对应于3D虚拟场景的片段,亦即由网格定义的3D表面的片段。然后,将网格图表映射在像素的2D栅格上,其对应于几何图像1。因此,几何图像1包含多个图表,在光栅化处理期间,对图表的每个像素分配通过网格的顶点的坐标的插值获得的网格坐标。对位于两个图表之间的像素不分配任何网格坐标,因为它们不对应于3D虚拟场景的任何元素。
在图1的示例中,几何图像1包含5个图表A 10、B 11、C 12、D 13和14,每个图表具有任意的边界和形状。有利地,间接信息与位于图表10至14的边界处的像素相关联。间接信息对应于可以用于根据所确定的方向从一个图表跳到另一个图表的间接指针。间接信息例如与形成图表的边界的像素一起存储。可以将这样的像素称为内部边界像素。根据另一示例,间接信息与位于图表外部但是邻近形成图表的边界的像素的像素一起存储。可以将这样的像素称为外部边界像素。当以图表A 10(称为第一图表A 10)为例时,包含内部边界像素的边界用参考100标识,并且包含外部边界像素的外部边界用参考101、102、103和104标识。与第一图表A 10相关联的外部边界101面向图表B 11。与第一图表A 10相关联的外部边界102面向图表C 12。与第一图表A 10相关联的外部边界103面向图表C 13。与第一图表A 10相关联的外部边界104面向图表D 14。在其余的描述中,将图表B 11、C 12、D 13和E 14称为第二图表。通过图1上的箭头例示从第一图表A 10跳动第二图表B 11、C 12、D 13或E 14的所确定的方向的示例。
自然,第二图表的内部边界像素或外部边界像素还可以包含用于从所考虑的第二图表跳到另一个第二图表或第一图表的间接信息。
图表的数量不限于如图1的示例中的5,而是扩展至大于或等于2个图表的任何数量。
图2示出根据具体且非限制性的实施例的位于几何图像1的第一图表的边界处的像素的块2。以深灰色示出的像素201、202、203和204被称为内部像素,因为它们位于第一图表的内部,并且它们不同于形成第一图表的边界的第一图表的像素。以白色示出的像素211、212、213、214、215、216和217被称为内部边界像素,因为它们属于并且形成第一图表的边界。这些像素211、212、213、214、215、216和217中的每一个邻近内部像素201至204中的至少一个。每个内部像素201至204和每个内部边界像素211至217被分配对应于网格的顶点的坐标或者通过对网格的顶点的坐标进行插值获得的坐标的网格坐标。以浅灰色示出的像素221、222、223、224、225、226、227、228和229被称为外部边界像素,因为它们不属于第一图表,但是对应于在从内部像素201至204中的任何一个向第一图表的外部扫描几何图像1时跨越的第一图表的外部的第一像素。这些外部边界像素221至229中的每一个邻近于内部边界像素211至217中的至少一个。外部边界像素221至229建立第一图表的像素和不属于图表的像素之间的边界。以白色示出的像素231、232、233、234和235对应于不属于任何图表并且不属于图表的任何外部边界的像素。它们对应于位于不同图表之间的像素,并且也可以被称为背景像素。与属于图表的像素形成对比,不对外部边界像素221至229和像素231至235分配网格坐标,因为它们不参考3D虚拟场景的表面。
箭头20对应于所确定的方向,对应于任意方向。这样的所确定的方向可以在从几何图像1重建3D虚拟场景时使用。为了重建3D虚拟场景,需要通过匹配图表的边界将图表放回到一起。为此,一个图表可以从源图表(例如,第一图表)脱离,并且根据一个或多个所确定的方向来扫描几何图像,以便发现根据这个或这些所确定的方向,哪个图表和图表的哪个像素对应于第一图表的边界。根据所确定的方向20确定参考方向21,从与当前像素203(对应于所确定的方向20的原点)相关联的网格坐标以及作为所确定的方向20所跨越的第一图表的边界的第一像素的像素213的网格坐标来计算参考方向21。
然后,有利地,将参考方向21与一组候选方向22、23、24、25和26进行比较。用与当前像素203(作为所确定的方向20和参考方向21的原点)相关联的网格坐标和与第一像素213的邻域的像素相关联的间接网格坐标来定义每个候选方向。通过第一像素213的邻域理解邻近第一像素213的外部边界的像素,亦即在图2上的像素222、223、224、225和226。与每个像素222至226相关联的间接网格坐标对应于在重建3D虚拟场景时将面向第一图表的第二图表的边界的像素的网格坐标。例如,与像素222(相应地,像素223、224、225和226)相关联的间接网格坐标对应于与第一图表的边界的像素212(相应地,像素223、224、225和226)相对应的第二图表的边界的像素的网格坐标。有利地,通过比较第二图表的边界的像素的网格坐标与像素212(相应地,像素223、224、225和226)的网格坐标来确定对应于第一图表的边界的像素212(相应地,像素223、224、225和226)的第二图表的边界的像素,对应于像素(相应地,像素223、224、225和226)的第二图表的边界的像素是使网格坐标之间的差异最小的一个。根据变型,通过比较对应于邻近像素222的内部边界的像素(亦即,像素211、212和213)的网格坐标的中值和第二图表的边界的像素的网格坐标来确定与像素222相关联的间接网格坐标,对应于像素222的第二图表的边界的像素是使网格坐标之间的差异最小的一个。候选方向对应于经过当前像素203和作为对应于与候选方向相关联的邻域的像素的第二图表的像素的第二图表的像素的方向。然后,将每个候选方向22至26与参考方向21进行比较,并且选择使差异最小的一个。所选择的候选方向对应于在一组候选方向中最平行于参考方向21的候选方向。选择候选方向使得能够选择与候选方向相关联的第二图表的边界的像素。根据图2的示例,可以注意到,最平行于参考方向21的候选方向是候选方向24,这意味着被选择为对应于第一像素213的第二图表的边界的像素是第二图表的边界的像素,其网格坐标与像素224相关联,而所确定的方向通过20与第二图表的边界的另一像素相关联的像素225。这种差异例如可能是由于使用内部边界的像素的中值网格坐标来确定与第一图表的外部边界的像素相关联的第二图表的边界的像素。
根据变型,通过使用下面的对第一像素213的邻域的每k个像素222、223、224、225和226计算的匹配值来选择候选方向:
其中,curPos对应于当前像素(例如像素203)的网格坐标,
innerPos对应于第一像素213的网格坐标,
outerPos对应于与第一像素213的邻域的k个像素222、223、224、225、226相关联的间接网格坐标。
根据该变型,然后将具有最接近于1的匹配值的间接像素(亦即,与像素222至226之一相关联的第二图表的边界的像素之一)选择为用于沿着所确定的方向20的间接的最佳匹配像素。
根据另一变型,用于计算候选方向的第一像素213的邻域的像素属于第一图表的边界。根据该变型,邻域的像素例如是等于或邻近第一像素213的第一图表的内部边界的像素,亦即在图2的示例性实施例中的像素212、213和214。除了像素212、213和214的网格坐标之外,间接网格坐标也与每个像素212、213和214相关联。与这些像素的每一个(例如与像素212)相关联的间接网格坐标对应于与该像素212相对应的第二图表的边界的像素的网格坐标,亦即,第二图表的边界的像素具有与像素212的网格坐标最接近的网格坐标。
有利地,对第一图表的若干当前像素和/或若干所确定的方向重复以上关于图2描述的处理。
图3示出根据具体且非限制性的实施例的几何图像1的第一图表10和第二图表11的边界的部分。d131有利地对应于被选择为最匹配所确定的方向20的候选方向。t132表示在对应于用于例示图2的示例性实施例的第一图表10的边界的第一像素的第一像素213处的边界300的切线矢量。由两个矢量d131和t132形成角度α。d234有利地对应于扫描几何图像(例如用于3D虚拟场景的重建目的)时的方向d131的行进方向。T233表示对应于第一像素213的第二像素313处的第二图表11的边界301的切线矢量。目的地行进方向d234是–π+α的t233的旋转。
根据用于组织几何图像内的图表的方法,邻近的图表(亦即第一和第二图表)可以具有多个方向。根据该观察,从第一图表A 10到第二图表(例如第二图表B 11)的相同行进方向只有在它们的邻近的边缘平行时才可以使用。然而,一旦对邻近的图表应用不同的旋转,就必须在从第一图表A跳到第二图表B时计算行进方向的新的取向。因此,在具有给定的第一2D行进方向d131的第一图表10上,在第二图表B 11的一致的第二2D行进方向是初始方向的旋转。
为了计算要对2D行进方向d234应用的旋转,计算在第一和第二图表的边界处的局部切线t132和t233。这对在参数化处理的图表放置步骤期间计算的旋转、平移和缩放操作是不变的,但是对镜像操作不是这样。因为旋转处理基于每个第一和第二图表的切线,两个图表必须在取向上一致。即,它们两者都必须顺时针或逆时针地取向。如果邻近的图表取向不一致,则行进处理将失败并且将该旋转逆转。
首先,如图4A所示,估计第一图表10的切线t132。在具有网格坐标nextTexCoord的第一图表10的外部边界像素424上,以顺时针次序扫描1环邻域(像素422、423、431、425、426、414、413和412)。在该扫描期间,将具有纹理坐标nextTexCoordTangent的背景像素431之后的第一外部边界像素425视为切线t1的一部分。因此,将该切线t1定义为:nextTexCoordTangent–nextTexCoord。关于用于标识像素的灰度,图4A使用与图2相同的约定(convention)。
计算切线t1和2D行进方向d131之间的角度α。然后,如图4B所示,在nextTexCoord处的外部边界像素424重定向至在newTexCoord处的第二图表11的内部边界像素462。扫描该内部边界像素462的1环邻域。这里,将具有纹理坐标newTexCoordTangent的内部像素451之后的第一内部边界像素463视为在第二图表11处的切线t233的一部分。因此,将目的地切线t2定义为:newTexCoordTangent–newTexCoord。关于用于标识像素的灰度,图4B使用与图2相同的约定。目的地2D行进方向d234是–π+α的目的地切线t132的旋转。然后,只取1环邻域来计算切线可能给出不一致的结果。例如,如果两个邻近的图表边界被稍微不同地光栅化,旋转可能被高估。通过计算各种像素距离处的切线来提供更好的切线估计。例如用一个像素、三个像素和五个像素边界切线的距离来调制最终的切线计算。中间切线的中值允许更平滑的切线估计。
图5图示被配置用于处理诸如几何图像1这样的几何图像的设备5的硬件实施例。设备5还可以被配置用于从创建表示从几何图像重建的3D虚拟场景的一个或若干合成图像的显示信号。设备5例如对应于个人计算机(PC)、膝上型电脑、平板电脑、智能电话或游戏控制台。
设备5包含下面的元件,彼此通过还传输时钟信号的地址和数据总线55连接:
-微处理器51(或CPU);
-图形卡52,包含:
·若干图形处理单元(或GPU)520;
·图形随机存取存储器(GRAM)521;
-ROM(只读存储器)类型的非易性存储器56;
-随机存取存储器或RAM 57;
-诸如键盘、鼠标、网络相机等一个或若干I/O(输入/输出)设备54;以及
-电源58。
设备5还包含直接连接到图形卡52以例如实况地显示在图形卡中计算并组成的合成图像的显示屏幕类型的显示设备53。使用专用总线将显示设备53连接到图形卡52提供具有高得多的数据传输比特率并因此降低显示由图形卡组成的图像的延迟时间的优点。根据变型,显示设备在设备5的外部,并且通过电缆或无线地连接到设备5以便传输显示信号。例如图形卡52的设备5包含用于适于将显示信号传输给诸如LCD或等离子屏幕或视频投影仪等外部显示装置的传输或连接的接口(在图5中未示出)。
注意,在描述存储器521、56和57时使得的词语“寄存器”是指在每个所提及的存储器中的低容量的存储器区域(一些二进制数据)以及大容量的存储器区域(能够存储整个程序或者表示所计算的数据或要显示的数据的所有或部分数据)这两者。
在接通时,微处理器51加载并执行在RAM 57中包含的程序的指令。
随机存取存储器57特别包含:
-在寄存器570中,负责接通设备5的微处理器51的操作程序;
-表示几何图像的参数571(例如与图表的像素相关联的网格坐标)。
在与实现这些步骤的设备5相关联的图形卡52的存储器GRAM 521中存储实现特定于本公开和在下文描述的方法的步骤的算法。当接通时,并且一旦表示环境的参数571被加载到RAM 57中,图形卡52的图形处理器520就将这些参数加载到GRAM 521中,并且例如使用HLSL(高级着色器语言)语言或GLSL(OpenGL着色语言)来执行以“着色器”类型的微程序形式的这些算法的指令。
随机存取存储器GRAM 521特别包含:
-在寄存器5211中,表示几何图像的参数;
-在寄存器5212中,与图表的边界的像素或者在图表的边界的外部和邻近的像素相关联的间接网格坐标。
根据变型,第一和第二标识符和距离存储在RAM 57中,并由微处理器51处理。
根据另一变型,如果GRAM 521中可用的存储器存储空间不足,则由CPU 51分配RAM 57的一部分用于存储标识符和距离。然而,该变型造成包含由包含在GPU中的微程序合成的环境的表示的图像的合成中更大的延迟时间,因为数据必须经过总线55从图形卡传输给随机存取存储器57,总线55的传输能力一般低于在用于将数据从GPU传输给GRAM以及相反过程的图形卡中可用的那些传输能力。
根据另一变型,电源58在设备5的外部。
图6示出根据非限制性的有利实施例的例如在设备5中实现的处理几何图像的方法。
在初始化步骤60期间,更新设备5的不同参数。具体地,以任何方式初始化表示几何图像1的参数。
然后在步骤61期间,通过使用与几何图像的第一图表的两个像素相关联的值来计算参考方向,几何图像包含第一图表和至少一个第二图表。几何图像是表示用多边形的网格表示的3D虚拟场景的合成图像的参数化处理的结果。用于计算参考方向的值有利地对应于与第一图表的像素相关联的网格坐标,网格坐标从当对几何图像进行光栅化时的参数化处理得到。用于计算参考方向的第一图表的两个像素对应于当前像素和第一像素。当前像素对应于除形成第一图表的边界的像素之外的图表的像素之一。第一像素对应于被具有当前像素作为原点的所确定的方向跨越的第一图表的边界的第一像素。所确定的方向是任意方向,也被称为第一2D行进方向,因为所确定的方向例如在使用几何图像重建3D虚拟场景时对应于用于扫描图表的方向。实际上,为了从图表重建3D虚拟场景,需要通过考虑边界,亦即通过匹配第一图表的边界的像素与第二图表的边界的像素,将图表相互结合。
然后,在步骤62期间,将参考方向与一组候选方向进行比较。通过使得与当前像素相关联的网格坐标和与属于用于计算参考方向的第一像素的邻域的一个像素相关联的间接网格坐标相关联的网格坐标来计算每个候选方向。间接网格坐标有利地对应于第二图表的边界的像素(被称为第二像素)的网格坐标,第二像素是对应于用于计算参考方向的第一像素的邻域的像素的第二图表的像素。第二图表(第二图像是根据所确定的方向的第一图表的补充图表)的边界的像素是在该第二像素的网格坐标最接近于对第一图表补充的第二图像的边界的多个像素中的邻域的像素(用于计算候选方向)相关联的网格坐标时第一像素的邻域的像素的所述对应的像素。例如通过比较第二图表的边界的多个像素的网格坐标和与第一像素的邻域的像素相关联的网格坐标,并且通过选择使网格坐标之间的差异与第二图表的边界的其他像素比较时最小的第二图表的边界的像素,来确定第二像素。
属于第一像素的邻域并且用于计算候选方向的像素有利地属于在第一像素周围并且邻近第一像素但是不属于第一图表的1环像素。换言之,第一像素的邻域的像素是位于第一图表外部但是邻近第一图表的边界(并且邻近第一像素)的一些像素。邻域的这些像素对应于第一图表的外部边界,并且形成在第一图表外部并且围绕第一图表的像素的第一线。使用这些外部边界像素来计算候选方向是有利的,因为作为参数化处理的结果,没有与它们相关联的网格坐标(因为它们不参考作为图表的外部的3D虚拟场景的任何对象的表面)。因此,能够使用与这些像素相关联的自由缓冲器空间来存储用于计算候选方向的间接网格坐标。如以上所解释的那样,通过比较第二图表的边界的像素的网格坐标和与该外部边界像素相关联的网格坐标来确定与这些外部边界像素中的每一个相关联的间接网格坐标。因为作为参数化处理的结果,没有与该外部边界像素相关联的网格坐标,用于比较的网格坐标对应于与完全邻近该外部边界像素的第一图表的边界的像素相关联的网格坐标。根据变型,要用于比较的网格坐标对应于第一图表的边界的若干像素(例如2,3,4或5)的网格坐标的中值,例如,第一图表的边界的像素与外部边界像素的像素相接触。
根据变型,属于第一像素的邻域并且用于计算候选方向的像素对应于与第一像素相接触的第一图表的边界的像素。该变型的优点是不需要搜索与这些像素相关联的网格坐标以确定间接网格坐标,因为已经计算出从参数化处理得到的网格坐标,并且由于它们属于第一图表而已经与这些像素相关联。
然后,在步骤63期间,将第二图表的边界的像素选择为第一像素的对应像素,第二图表的该像素的选择基于参考方向和每个候选方向之间的比较结果。选择第二图表的边界的像素以作为第一像素(其属于第一图表的边界)的对应像素使得能够通过最佳地考虑(用与第一和第二图表的像素相关联的网格坐标表示的)网格的一致性来匹配第一图表的边界的像素与第二图表的边界的像素,来(例如在从几何图像重建3D虚拟场景时)将第一图表和第二图表放回到一起。第二图表的边界的所选择的像素是使(在比较步骤中使用的多个候选方向中的)相关联的候选方向最平行于参考方向的一个。换言之,所选择的像素对应于使参考方向与关联到该所选择的像素的候选方向之间的差异关于参考方向与其他候选方向之间的差异最小的像素。
自然地,可以迭代步骤61至63用于若干不同的所确定的方向和/或用于第一图表或不同于第一图表的其他图表的若干不同的当前像素。
根据可选的变型,该方法还包含确定用于扫描第二图表的方向(被称为2D行进方向)的步骤。该第二2D行进方向使得能够根据对应于所确定的方向的方向来扫描第二图表。有利地,通过使用所确定的方向(其也被称为第一2D行进方向)、在第一像素处的第一图表的边界的切线和在所选择的像素处的第二图表的边界的切线来确定该第二2D行进方向。
自然,本公开不限于先前所述的实施例。
具体地,本公开不限于处理几何图像的方法,而是还延伸到实现该方法的任何设备,特别是包含至少一个GPU的任何设备。处理几何图像所需的计算的实现方式不限于实现为着色器类型微程序,而且还延伸到以任何程序类型的实现方式,例如可以由CPU类型微处理器执行的程序。本公开的方法的使用不限于实况应用,而是还延伸到任何其他应用,例如用于在录音棚中用于例如合成图像的显示的被称为后期制作处理的处理。
本公开还涉及用于从几何图像重建3D虚拟场景(或者其一部分)的方法(和所配置的设备)。
在本文中描述的实现方式例如可以实现为方法或处理、装置、软件程序、数据游戏或信号。虽然只在单一形式的实现方式的背景下进行了论述(例如,只作为方法或设备进行了论述),所述特征的实现方式还可以以其他形式实现(例如程序)。例如,装置可以实现为专用硬件、软件和固件。例如,方法可以实现在诸如一般被称为处理设备的处理器(例如,包括计算机、微处理器、集成电路或可编程的逻辑设备)这样的装置中。处理器还包括通信设备,诸如智能电话、平板、计算机、移动电话、便携式/个人数据助理(“PDA”)以及其他便于在终端用户之间进行信息通信的设备。
在本文中描述的各种处理和特征的实现方式可以实施为多种不同的装置和应用,例如,与数据编码、数据解码、视图产生、纹理处理以及图像和相关纹理信息和/或深度信息的其他处理相关联的装置或应用。这样的装置的示例包括编码器、解码器、处理来自解码器的输出的后处理器、向编码器提供输入的预处理器、视频编码器、视频解码器、视频编码解码器、网络服务器、机顶盒、膝上型电脑、个人计算机、手机、PDA和其他通信设备。应当清楚的是,装置可是移动的,并且甚至可以安装在移动交通工具中。
另外,方法可以通过由处理器执行的指令来实现,并且这样的指令(和/或通过实现生成的数据值)可以存储在处理器可读取的介质中,诸如集成电路、软件载体或诸如硬盘、压缩盘(“CD”)、光盘(诸如通常被称为数字多功能盘或数字视频盘的DVD)、随机存取存储器(“RAM”)或只读存储器(“ROM”)。指令可以形成有形地具体化在处理器可读取的介质上的应用程序。指令可以例如在硬件、固件、软件或者其组合中。指令例如可以存在于操作系统、单独的应用或者两者的组合中。因此,可以将处理器表征为例如既被配置为执行处理的设备,又被配置为包括个有用于执行处理的处理器可读取的介质(计算如存储设备)的设备。另外,除了指令之外,或者替代指令地,处理器可读取的介质还可以存储由实现方式生成的数据值。
对于本领域的技术人员将很显然的是,实现方式可能生成多种被格式化以携带例如可以被存储或传输的信息的信号。信息例如可以包括用于执行方法的指令或者由所述实现方式之一生成的数据。例如,信号可以被格式化以携带用于写入或读取所述实施例的语法的规则作为数据。例如,这样的信号可以被格式化为电磁波(例如,使用频谱的射频部分)或者基带信号。格式化例如可以包括对数据游戏进行编码和用经编码的数据流对载波进行调制。信号携带的信息例如可以是模拟或数字信息。已知地,信号可以通过各种有线或无线链路进行传输。信号可以存储在处理器可读取的介质上。
已经描述了许多实现方式。然而,应当理解的是可以进行各种修改。例如,可以组合、补充、修改或去除不同实现方式的元素以生成其他实现方式。另外,本领域的技术人员将理解到,其他结构和处理可以替换所公开的那些,并且得到的实现方式将以与所公开的实现方式至少基本相同的方式执行至少基本相同的功能,以获得与所公开的实现方式至少基本相同的结果。相应地,本申请预想到了这些及其他实现方式。
Claims (15)
1.一种处理几何图像(1)的方法,几何图像(1)从与3D场景相关联的网格产生,几何图像包含第一图表(10)和至少一个第二图表(11,12,13,14),每个第一和第二图表表示3D场景的一部分,其特征在于,该方法对于与形成第一图表的边界的第一图表的像素(211至217)不同的第一图表(10)的至少一个当前像素(203),包含以下步骤:
-从与至少一个当前像素(203)相关联的网格坐标和与第一像素(213)相关联的网格坐标计算(61)参考方向(21),第一像素(213)对应于沿着具有至少一个当前像素(203)作为原点的确定方向(20)所在的第一图表的边界的像素;
-比较(62)参考方向(21)与一组候选方向(22,23,24,25,26),每个候选方向从与至少一个当前像素(203)相关联的网格坐标和与第一像素(213)的邻域的一个像素(222至226;212至214)相关联的间接网格坐标来计算,间接网格坐标对应于与第一像素的邻域的像素相对应的至少一个第二图表的边界的像素的网格坐标;以及
-根据比较结果选择(63)至少一个第二图表(11,12,13,14)的边界的像素。
2.根据权利要求1所述的方法,其中,用于计算候选方向的第一像素(213)的邻域的像素(211至213)属于第一图表(10)的边界。
3.根据权利要求1所述的方法,其中,用于计算候选方向的第一像素(213)的邻域的像素(222至226)在第一图表(10)的边界的外部,并且邻近第一像素(213)。
4.根据权利要求1至3中的任一项所述的方法,其中,对应于第一像素(213)的邻域的像素的至少一个第二图表(11,12,13,14)的边界的像素通过比较第一像素的邻域的像素的网格坐标和至少一个第二图表的边界的多个像素的网格坐标来确定,所确定的至少一个第二图表的边界的像素是使其网格坐标与第一像素的邻域的像素的网格坐标之间的差异最小的像素。
5.根据权利要求1至3中的任一项所述的方法,其中,所选择的像素对应于参考方向(21)和关联到所选择的像素的候选方向(24)之间的差异关于参考方向(21)和其他候选方向(22至26)之间的差异最小的像素。
6.根据权利要求1至3中的任一项所述的方法,其中,该方法还包含确定用于扫描对应于所确定的方向的至少一个第二图表(11)的方向(34),所述方向(34)根据所确定的方向(31)、第一像素(213)处的第一图表(10)的边界的切线(32)和所选择的像素(313)处的至少一个第二图表(11)的边界的切线(33)来确定。
7.一种被配置为处理几何图像的设备(5),几何图像从与3D场景相关联的网格产生,几何图像包含第一图表和至少一个第二图表,每个第一和第二图表表示3D场景的一部分,其特征在于,该设备包含对于与形成第一图表的边界的第一图表的像素不同的第一图表的至少一个当前像素,被配置为进行以下处理的至少一个处理器(520):
-从与至少一个当前像素相关联的网格坐标和与第一像素相关联的网格坐标计算参考方向,第一像素对应于沿着具有至少一个当前像素作为原点的确定方向所在的第一图表的边界的像素;
-比较参考方向与一组候选方向,每个候选方向从与至少一个当前像素相关联的网格坐标和与第一像素的邻域的一个像素相关联的间接网格坐标来计算,间接网格坐标对应于与第一像素的邻域的像素相对应的至少一个第二图表的边界的像素的网格坐标;以及
-根据比较结果选择至少一个第二图表的边界的像素。
8.根据权利要求7所述的设备(5),其中,用于计算候选方向的第一像素的邻域的像素属于第一图表的边界。
9.根据权利要求7所述的设备(5),其中,用于计算候选方向的第一像素的邻域的像素在第一图表的边界的外部,并且邻近所选择的像素。
10.根据权利要求7至9中的任一项所述的设备(5),其中,所述至少一个处理器(520)还被配置为比较第一像素的邻域的像素的网格坐标与至少一个第二图表的边界的多个像素的网格坐标,以确定对应于第一像素的邻域的像素的至少一个第二图表的边界的像素,所确定的至少一个第二图表的边界的像素是使其网格坐标与第一像素的邻域的像素的网格坐标之间的差异最小的像素。
11.根据权利要求7至9中的任一项所述的设备(5),其中,所选择的像素对应于参考方向和关联到所选择的像素的候选方向之间的差异关于参考方向和其他候选方向之间的差异最小的像素。
12.根据权利要求7至9中的任一项所述的设备(5),其中,所述至少一个处理器(520)还被配置为确定用于扫描对应于所确定的方向的至少一个第二图表的方向,所述方向根据所确定的方向、第一像素处的第一图表的边界的切线和所选择的像素处的至少一个第二图表的边界的切线来确定。
13.根据权利要求7至9中的任一项所述的设备(5),其中,所述至少一个处理器(520)是图形处理器单元(GPU)。
14.一种计算机程序产品,其特征在于,其包含用于当所述程序在计算机上被执行时执行根据权利要求1至3的一项所述的方法的步骤的程序代码的指令。
15.一种处理器可读取的介质,其中存储用于使处理器至少执行根据权利要求1至3中的一项所述的方法的步骤的指令。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP14305145.6 | 2014-02-03 | ||
EP14305145.6A EP2902973B1 (en) | 2014-02-03 | 2014-02-03 | Method and device for processing a geometry image of a 3d scene |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104821008A true CN104821008A (zh) | 2015-08-05 |
Family
ID=50137595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510055039.8A Pending CN104821008A (zh) | 2014-02-03 | 2015-02-03 | 用于处理三维场景的几何图像的方法和设备 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9747720B2 (zh) |
EP (1) | EP2902973B1 (zh) |
JP (1) | JP2015146181A (zh) |
KR (1) | KR20150099414A (zh) |
CN (1) | CN104821008A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107016731A (zh) * | 2015-10-13 | 2017-08-04 | 韦伯斯特生物官能(以色列)有限公司 | 网格的体素化 |
CN109274951A (zh) * | 2017-07-13 | 2019-01-25 | 富泰华工业(深圳)有限公司 | 深度计算方法及其装置 |
CN112449078A (zh) * | 2019-08-29 | 2021-03-05 | 福建天泉教育科技有限公司 | 一种生成缩略图的方法及终端 |
CN117838991A (zh) * | 2024-03-07 | 2024-04-09 | 深圳市美迪泰克医药有限公司 | 一种用于口腔麻醉的电子助推仪及该助推仪的标定方法 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3259739A4 (en) * | 2015-02-17 | 2018-08-29 | NEXTVR Inc. | Methods and apparatus for generating and using reduced resolution images and/or communicating such images to a playback or content distribution device |
US10362290B2 (en) | 2015-02-17 | 2019-07-23 | Nextvr Inc. | Methods and apparatus for processing content based on viewing information and/or communicating content |
TWI564866B (zh) * | 2015-07-03 | 2017-01-01 | 點晶科技股份有限公司 | 顯示器及其顯示方法 |
US10282888B2 (en) | 2016-01-28 | 2019-05-07 | Biosense Webster (Israel) Ltd. | High definition coloring of heart chambers |
AU2018203327A1 (en) | 2018-05-11 | 2019-11-28 | Canon Kabushiki Kaisha | System and method for processing a graphic object |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1549593A (zh) * | 2003-05-23 | 2004-11-24 | 华亚微电子(上海)有限公司 | 一种像素静止检测的多窗口多阈值方法 |
CN101578633A (zh) * | 2007-01-10 | 2009-11-11 | 通腾科技股份有限公司 | 数据处理方法和装置 |
US20100289798A1 (en) * | 2009-05-13 | 2010-11-18 | Seiko Epson Corporation | Image processing method and image processing apparatus |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7265752B2 (en) | 2004-01-09 | 2007-09-04 | Microsoft Corporation | Multi-chart geometry images |
US7733350B2 (en) * | 2006-06-30 | 2010-06-08 | Microsoft Corporation | Anisometric texture synthesis |
WO2013133757A2 (en) * | 2012-03-09 | 2013-09-12 | Flatfrog Laboratories Ab | Efficient tomographic processing for touch determination |
-
2014
- 2014-02-03 EP EP14305145.6A patent/EP2902973B1/en active Active
-
2015
- 2015-01-23 JP JP2015011216A patent/JP2015146181A/ja active Pending
- 2015-02-02 KR KR1020150016099A patent/KR20150099414A/ko not_active Application Discontinuation
- 2015-02-02 US US14/611,323 patent/US9747720B2/en active Active
- 2015-02-03 CN CN201510055039.8A patent/CN104821008A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1549593A (zh) * | 2003-05-23 | 2004-11-24 | 华亚微电子(上海)有限公司 | 一种像素静止检测的多窗口多阈值方法 |
CN101578633A (zh) * | 2007-01-10 | 2009-11-11 | 通腾科技股份有限公司 | 数据处理方法和装置 |
US20100289798A1 (en) * | 2009-05-13 | 2010-11-18 | Seiko Epson Corporation | Image processing method and image processing apparatus |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107016731A (zh) * | 2015-10-13 | 2017-08-04 | 韦伯斯特生物官能(以色列)有限公司 | 网格的体素化 |
CN107016731B (zh) * | 2015-10-13 | 2021-12-21 | 韦伯斯特生物官能(以色列)有限公司 | 用于网格的体素化的方法和设备 |
CN109274951A (zh) * | 2017-07-13 | 2019-01-25 | 富泰华工业(深圳)有限公司 | 深度计算方法及其装置 |
CN109274951B (zh) * | 2017-07-13 | 2020-11-10 | 富泰华工业(深圳)有限公司 | 深度计算方法及其装置 |
CN112449078A (zh) * | 2019-08-29 | 2021-03-05 | 福建天泉教育科技有限公司 | 一种生成缩略图的方法及终端 |
CN117838991A (zh) * | 2024-03-07 | 2024-04-09 | 深圳市美迪泰克医药有限公司 | 一种用于口腔麻醉的电子助推仪及该助推仪的标定方法 |
CN117838991B (zh) * | 2024-03-07 | 2024-05-10 | 深圳市美迪泰克医药有限公司 | 一种用于口腔麻醉的电子助推仪及该助推仪的标定方法 |
Also Published As
Publication number | Publication date |
---|---|
EP2902973A1 (en) | 2015-08-05 |
US9747720B2 (en) | 2017-08-29 |
EP2902973B1 (en) | 2018-06-27 |
JP2015146181A (ja) | 2015-08-13 |
KR20150099414A (ko) | 2015-08-31 |
US20150221129A1 (en) | 2015-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104821008A (zh) | 用于处理三维场景的几何图像的方法和设备 | |
EP3021286B1 (en) | Device and method to compute shadow in a 3D scene | |
US9330475B2 (en) | Color buffer and depth buffer compression | |
KR101868200B1 (ko) | 타일 기반 렌더링에서의 테셀레이션 | |
CN106548498B (zh) | 用于处理压缩纹理的方法和设备 | |
EP3246879A1 (en) | Method and device for rendering an image of a scene comprising a real object and a virtual replica of the real object | |
CN105374005A (zh) | 数据处理系统 | |
US20180005427A1 (en) | Devices and methods for generating elementary geometries | |
EP3580726B1 (en) | Buffer index format and compression | |
US10074211B2 (en) | Method and device for establishing the frontier between objects of a scene in a depth map | |
US11481974B2 (en) | Mesh optimization for computer graphics | |
US11715253B2 (en) | Pixelation optimized delta color compression | |
US9607435B2 (en) | Method for rendering an image synthesis and corresponding device | |
KR20160068204A (ko) | 메시 지오메트리를 위한 데이터 처리 방법 및 이를 기록한 컴퓨터 판독 가능 저장 매체 | |
US11989807B2 (en) | Rendering scalable raster content | |
US10339704B2 (en) | Image data processing method in image processor and computer readable medium storing program therefor for rendering a texture based on a triangulation pattern | |
US11776179B2 (en) | Rendering scalable multicolored vector content | |
EP2801955A1 (en) | Method and device for visualizing contact(s) between objects of a virtual scene | |
US20070200848A1 (en) | Light Map Compression | |
JP2015090613A (ja) | 画像処理装置及び画像処理方法 | |
EP2902971A1 (en) | Method and device for deforming the geometry of a 3d virtual scene | |
CN106447593A (zh) | 图形处理 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150805 |