CN102087751A - 计算各向异性滤波的细节等级 - Google Patents

计算各向异性滤波的细节等级 Download PDF

Info

Publication number
CN102087751A
CN102087751A CN2010105353815A CN201010535381A CN102087751A CN 102087751 A CN102087751 A CN 102087751A CN 2010105353815 A CN2010105353815 A CN 2010105353815A CN 201010535381 A CN201010535381 A CN 201010535381A CN 102087751 A CN102087751 A CN 102087751A
Authority
CN
China
Prior art keywords
length
vector
minor axis
major axis
estimate
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
Application number
CN2010105353815A
Other languages
English (en)
Other versions
CN102087751B (zh
Inventor
L·塞勒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN102087751A publication Critical patent/CN102087751A/zh
Application granted granted Critical
Publication of CN102087751B publication Critical patent/CN102087751B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/12Indexing scheme for image data processing or generation, in general involving antialiasing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20004Adaptive image processing
    • G06T2207/20012Locally adaptive

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Image Generation (AREA)

Abstract

计算各向异性滤波的细节等级。可在图形处理中进行各向异性滤波而不必实际地计算椭圆加权平均椭圆。取而代之的是,可以对短轴的长度使用估计值。该估计避免了椭圆加权平均椭圆的计算中固有的复杂性并减少了开销,同时依旧获得足够的精度。

Description

计算各向异性滤波的细节等级
技术领域
本申请大体上涉及计算机处理以及,尤其涉及图形处理。
背景技术
在图形处理中,必须将屏幕空间中的像素投影或映射至纹理空间中来对其进行纹理化。将2×2的像素印章或像素方格从x,y屏幕空间投影到u,v纹理空间。这些原始像素的投影在纹理空间中形成了四个采样点。然后滤波每个采样点周围的四个纹理像素,以返回四个经滤波的颜色,每个采样对应一个经滤波的颜色。
如果投影的位置互相接近,则各投影之间的所有纹理像素皆对最终的颜色有贡献,得到消除了锯齿伪影的投影。如果投影的位置互相之间相距太远,则采样点之间的纹理像素对最终的颜色没有贡献。这就由于锯齿的存在而造成了低质量。如果投影之间的距离相似,则这可通过Mipmapping(MIP映射)技术来解决。如果投影之间的距离不相似,则用以防止锯齿的Mipmapping技术会由于引入模糊而导致低质量。在这种情况下必须使用各向异性滤波,来同时避免锯齿和模糊伪影二者。
各向异性滤波增强了相对于相机而处于斜视角的表面上(在此情况下纹理的投影看上去是非正交的)的纹理像素的图像质量。各向异性滤波可减少或消除锯齿效应而不引入模糊。
附图说明
图1是根据一个实施例,屏幕空间到纹理空间的映射的描述;
图2是本发明的一个实施例的流程图;以及
图3是一个实施例的示意图。
具体实施方式
通常,通过对多个普通的双线性或三线性纹理滤波器的结果进行混合,来实现各向异性滤波。这种混合包括计算细节等级以及要使用的纹理采样数,以便由采样所覆盖的纹理像素区域可以消除或者减少锯齿伪影。
椭圆加权平均定义了一个椭圆,其表示在纹理中的扭曲的滤波器区域。椭圆加权平均基于该椭圆加权平均椭圆的短轴或长轴长度来计算需要的细节等级和采样数。然而,进行真正的椭圆加权平均花销较大,以至于其并不能在图形处理单元中使用。
根据一些实施例,可以产生椭圆加权平均椭圆的长轴或短轴长度的相近的近似值,此举为各向异性纹理滤波产生相对较高质量的细节等级和采样位置数目,而不用花费采用真正的椭圆加权平均时所需要的芯片面积。
椭圆加权平均根据两个梯度向量生成一个椭圆,这两个梯度向量定义了在给定采样位置处的纹理扭曲(texture warp)。该纹理扭曲基本上是图像从屏幕空间至纹理空间的弯曲。这两个向量可以定义为(dudx,dvdx)和(dudy,dvdy)。dudx和dvdx项代表对应于在像素空间中沿着X轴移动一个像素,在纹理空间中的沿着U轴和V轴的距离。类似的,其他两项定义为对应于在像素空间中沿着Y轴移动一步。
可根据这些梯度来计算近似的长轴和短轴长度。这些近似的轴长的最大误差是2的平方根,但是这些长度的乘积精确地等于正确的或真正的椭圆加权平均长度的乘积。因此,可以通过计算修正因子来得到正确的轴长,将此修正因子乘以一个轴长以及除以另一轴长。这样可以计算基于经修正的椭圆加权平均的细节等级和采样数,而不会引入在使用真正的椭圆加权平均时所固有的芯片面积方面的开销。
此修正因子和椭圆的绝对尺寸或角度无关。相反,此修正因子依赖于近似的短轴和长轴的相对长度以及梯度向量之间的角度的余弦值,这两者的值都位于0到1的范围内。这样,对此精确的修正因子的简单近似得到的长轴或短轴的长度在真实值的百分之二以内。因此,可以高效地计算相近的近似值。
参考图1,可以通过将较长向量a作为长轴的长度来得到近似的长轴和短轴长度。将较短向量b在向量a上的高度c作为短轴长度。高度c可以是dudx*dvdy减去dvdx*dudy除以向量a的长度再取绝对值计算得到。将高度c作为近似的短轴长度。
这些近似的长轴和短轴长度以一个因子2的平方根不同于正确的椭圆加权平均的长轴和短轴长度。尽管如此,这些近似的长轴和短轴长度的乘积等于实际的椭圆加权平均的长轴和短轴长度的乘积。因此,两个假设长度以相同的因子偏移,但是是在相反的方向上偏移。该因子只依赖于两个向量a和b的相对长度以及这两个向量之间的角度。因此,基于dudx、dvdx、dudy和dvdy的四变量问题就减少为二变量问题。
当精确的修正相当复杂并且可能难以实现时,可以采用一种可以以实际的方式实现的近似。这两个向量之间的角度的余弦值和这两个向量的长度比皆限制在0到1的范围内。因此,它们可以被有效地表示为定点数。这两个向量间的角度的余弦值乘以它们的长度比的平方所得到的乘积也是0到1之间的值。因此这些乘法运算也可用高效的定点算法来计算。由此将该乘积从范围[0..1]按比例扩大到范围
Figure BSA00000337330500031
以生成所述近似修正因子,将该近似修正因子乘以长轴长度以及除以短轴长度。这个结果是在真正的椭圆加权平均的长轴或短轴长度的大约百分之二以内的轴长。
在某些实施例中,此计算可以由查找表来替代。在其他实施例中,可以使用类似的等式来基于两个变量,即向量的相对长度和向量之间的角度,来产生近似修正因子。
因此,参考图2,在此图中图示的序列10可由硬件或软件实现。在软件实施中,指令序列可存储在计算机可读介质中。合适的计算机可读介质包括任何存储设备,包括磁性存储器、光学存储器、或者半导体存储器。存储在这样的计算机可读介质中的指令序列由计算机或者处理器执行。作为两个实例,该计算机或者处理器可为通用处理器或者图形处理单元。首先,计算长轴的长度,如模块12所示。选择两个向量中较长的那个向量作为向量a。之后,计算向量b在向量a上的高度,如模块14所示。接着,将向量b在向量a上的高度设为等于短轴长度,如模块16所示。最后,如模块18所示,基于向量a和b之间的角度以及向量a和b的长度比来计算修正因子。如前所述,随后,用此修正因子乘以长轴长度以及除以短轴长度。
计算机系统130,如图3所示,可包括硬盘驱动器134和可移动介质136,其由总线104耦合至芯片组核心逻辑110。在一个实施例中,此核心逻辑可(通过总线105)耦合至图形处理器112和主处理器100。图形处理器112又可由总线106耦合至帧缓冲器114。帧缓冲器114可由总线107耦合至显示屏118,显示屏118又由总线108耦合至传统元件,如键盘或者鼠标120。
在软件实施方案中,用以实现序列10的相关代码可存储在包括主存储器132的任何合适的半导体存储器、磁性存储器、或者光学存储器中。因此,在一个实施例中,代码139可存储在机器可读介质中,如主存储器132或帧缓冲器114,以供处理器(如处理器100或者图形处理器112)执行。
在软件实施例中,图2中所示的序列10可为图形处理器112的一部分。然而,该序列也可在存储在帧缓冲器114或主存储器132中的软件(如139所示)中执行。当然,这种软件可驻留在图形处理器112或任何其他存储设备中。
这里描述的图形处理技术可在各种硬件结构中实现。例如,图形功能可集成于芯片组内。作为替代,可使用分立的图形处理器。作为再另一实施例,图形功能可由通用处理器(包括多核处理器)实现。
整个本说明书中提到的“一个实施例”或者“实施例”表示结合此实施例所述的特定的特征、结构或特性包括在本发明中包含的至少一个实现方式中。因此,短语“一个实施例”或“在实施例中”的出现并不必然指代同一实施例。而且,特定的特征、结构或特性可用除了所图示说明的特定实施例之外的其它合适的形式来实现,且所有这些形式皆包含在本申请的权利要求中。
虽然已经参照有限数目的实施例对本发明进行了描述,但本领域技术人员可以由此领会许多修改和变化。所附的权利要求旨在覆盖落入本发明实际精神和范围内的所有这样的修改和变化。

Claims (30)

1.一种方法,包括:
估计椭圆滤波器区域的短轴和长轴的初始长度;
生成用于所述估计的长度的修正因子;
使用所述修正的长度来对图形信息进行各向异性地滤波。
2.如权利要求1所述的方法,其中,估计包括:使用两个向量来定义所述椭圆滤波器区域。
3.如权利要求2所述的方法,其中,估计包括:使用所述向量的相对长度和所述向量之间的角度来估计所述长轴和短轴的长度。
4.如权利要求1所述的方法,其中,估计所述短轴的长度包括:基于用于所述长轴和所述短轴的向量之间的角度来进行估计。
5.如权利要求4所述的方法,包括:基于所述两个向量之间的所述角度的余弦值来进行估计。
6.如权利要求1所述的方法,包括:基于用于所述长轴和所述短轴的向量的长度的比值来进行估计。
7.如权利要求3所述的方法,包括:仅使用在0到1之间的数来进行估计。
8.如权利要求1所述的方法,包括:基于修正因子进行估计,将所述修正因子乘以所述长轴的长度以及除以所述短轴的长度。
9.如权利要求1所述的方法,包括:基于用于所述短轴的向量在用于所述长轴的向量上的高度来进行估计。
10.如权利要求1所述的方法,包括:使用较短向量在较长向量上的高度作为所述短轴的长度。
11.如权利要求10所述的方法,包括:将所述高度计算为dudx*dvdy减去dvdx*dudy除以用于所述长轴的向量的长度再取绝对值。
12.一种存储指令的计算机可读介质,所述指令由计算机执行来:
估计椭圆滤波器区域的短轴和长轴的初始长度;
生成用于所述估计的长度的修正因子;
使用所述修正的长度来对图形信息进行各向异性地滤波。
13.如权利要求12所述的介质,进一步存储用于以下的指令:使用定义了椭圆滤波器区域的两个向量来估计初始长度,以及使用所述向量的相对长度和所述向量之间的角度来估计所述长轴和所述短轴的长度。
14.如权利要求12所述的介质,进一步存储用于以下的指令:基于用于所述长轴和所述短轴的向量之间的角度来估计所述短轴的长度。
15.如权利要求14所述的介质,进一步存储用于以下的指令:基于所述向量之间的所述角度的余弦值来估计所述短轴的长度。
16.如权利要求12所述的介质,进一步存储用于以下的指令:基于用于所述长轴和所述短轴的向量的长度的比值来估计所述短轴的长度。
17.如权利要求15所述的介质,进一步存储用于以下的指令:仅使用在0到1之间的数来进行估计。
18.如权利要求12所述的介质,进一步存储用于以下的指令:基于修正因子来估计所述短轴的长度,将所述修正因子乘以所述长轴的长度以及除以所述短轴的长度。
19.如权利要求12所述的介质,进一步存储用于以下的指令:基于用于所述短轴的向量在用于所述长轴的向量上的高度来进行估计。
20.如权利要求12所述的介质,进一步存储用于以下的指令:使用用于所述短轴的向量在用于所述长轴的向量上的高度作为所述短轴的长度。
21.如权利要求20所述的介质,进一步存储用于以下的指令:将用于所述短轴的向量在用于所述长轴的向量上的所述高度计算为dudx*dvdy减去dvdx*dudy除以用于所述长轴的向量的长度再取绝对值。
22.一种装置,包括:
处理器,用于估计椭圆滤波器区域的短轴和长轴的初始长度;生成用于所述估计的长度的修正因子;以及使用所述修正的长度来对图形信息进行各向异性地滤波;以及
耦合至所述处理器的存储器。
23.如权利要求22所述的装置,所述处理器用于基于用于所述长轴和所述短轴的向量之间的角度来估计短轴的长度。
24.如权利要求23所述的装置,所述处理器用于基于所述两个向量之间的角度的余弦值来进行估计。
25.如权利要求22所述的装置,所述处理器用于基于用于所述长轴和所述短轴的向量的长度的比值来进行估计。
26.如权利要求24所述的装置,所述处理器用于仅使用在0到1之间的数来进行估计。
27.如权利要求22所述的装置,所述处理器用于基于修正因子来进行估计,将所述修正因子乘以所述长轴的长度以及除以所述短轴的长度。
28.如权利要求22所述的装置,所述处理器用于基于用于所述短轴的向量在用于所述长轴的向量上的高度来进行估计。
29.如权利要求22所述的装置,所述处理器用于使用较短向量在较长向量上的高度作为所述短轴的长度。
30.如权利要求29所述的装置,所述处理器用于将所述高度计算为dudx*dvdy减去dvdx*dudy除以用于所述长轴的向量的长度再取绝对值。
CN201010535381.5A 2009-12-03 2010-09-26 计算各向异性滤波的细节等级 Expired - Fee Related CN102087751B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/629,982 2009-12-03
US12/629,982 US8803902B2 (en) 2009-12-03 2009-12-03 Computing level of detail for anisotropic filtering

Publications (2)

Publication Number Publication Date
CN102087751A true CN102087751A (zh) 2011-06-08
CN102087751B CN102087751B (zh) 2014-07-02

Family

ID=43972570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010535381.5A Expired - Fee Related CN102087751B (zh) 2009-12-03 2010-09-26 计算各向异性滤波的细节等级

Country Status (5)

Country Link
US (1) US8803902B2 (zh)
CN (1) CN102087751B (zh)
DE (1) DE102010046507A1 (zh)
GB (1) GB2475944B (zh)
TW (1) TWI503791B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112686983A (zh) * 2019-10-17 2021-04-20 畅想科技有限公司 纹理滤波

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9569880B2 (en) * 2013-12-24 2017-02-14 Intel Corporation Adaptive anisotropic filtering
US9619898B2 (en) * 2013-12-28 2017-04-11 Intel Corporation Angle-dependent anisotropic filtering
US9710881B2 (en) 2014-04-05 2017-07-18 Sony Interactive Entertainment America Llc Varying effective resolution by screen location by altering rasterization parameters
US10783696B2 (en) 2014-04-05 2020-09-22 Sony Interactive Entertainment LLC Gradient adjustment for texture mapping to non-orthonormal grid
US9652882B2 (en) * 2014-04-05 2017-05-16 Sony Interactive Entertainment America Llc Gradient adjustment for texture mapping for multiple render targets with resolution that varies by screen location
US10068311B2 (en) 2014-04-05 2018-09-04 Sony Interacive Entertainment LLC Varying effective resolution by screen location by changing active color sample count within multiple render targets
US9495790B2 (en) * 2014-04-05 2016-11-15 Sony Interactive Entertainment America Llc Gradient adjustment for texture mapping to non-orthonormal grid
EP3129958B1 (en) 2014-04-05 2021-06-02 Sony Interactive Entertainment LLC Method for efficient re-rendering objects to vary viewports and under varying rendering and rasterization parameters
US11302054B2 (en) 2014-04-05 2022-04-12 Sony Interactive Entertainment Europe Limited Varying effective resolution by screen location by changing active color sample count within multiple render targets
US9836816B2 (en) 2014-04-05 2017-12-05 Sony Interactive Entertainment America Llc Varying effective resolution by screen location in graphics processing by approximating projection of vertices onto curved viewport
US9710957B2 (en) 2014-04-05 2017-07-18 Sony Interactive Entertainment America Llc Graphics processing enhancement by tracking object and/or primitive identifiers
US9865074B2 (en) 2014-04-05 2018-01-09 Sony Interactive Entertainment America Llc Method for efficient construction of high resolution display buffers
TWI511088B (zh) * 2014-07-25 2015-12-01 Altek Autotronics Corp 產生方位影像的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999006952A1 (en) * 1997-08-01 1999-02-11 Avid Technology, Inc. Texture mapping in 3-d computer graphics
US6292193B1 (en) * 1998-07-30 2001-09-18 Compaq Computer Corporation Techniques for anisotropic texture mapping using multiple space-invariant filtering operations per pixel
CN101142614A (zh) * 2004-09-09 2008-03-12 奥普提克斯晶硅有限公司 使用各向异性滤波的单通道图像变形系统和方法
US7369136B1 (en) * 2004-12-17 2008-05-06 Nvidia Corporation Computing anisotropic texture mapping parameters

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7558400B1 (en) * 2005-12-08 2009-07-07 Nvidia Corporation Anisotropic texture filtering optimization

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999006952A1 (en) * 1997-08-01 1999-02-11 Avid Technology, Inc. Texture mapping in 3-d computer graphics
US6292193B1 (en) * 1998-07-30 2001-09-18 Compaq Computer Corporation Techniques for anisotropic texture mapping using multiple space-invariant filtering operations per pixel
CN101142614A (zh) * 2004-09-09 2008-03-12 奥普提克斯晶硅有限公司 使用各向异性滤波的单通道图像变形系统和方法
US7369136B1 (en) * 2004-12-17 2008-05-06 Nvidia Corporation Computing anisotropic texture mapping parameters

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《SIGGRAPH'99:Proceedings of the 26th Annual Conference on Computer Graphic and Interactive Techniques》 19991231 McCormack et al Feline:Fast Elliptical Lines for Anisotropic Texture Mapping 243-250 1-11,22-30 , *
MCCORMACK ET AL: "Feline:Fast Elliptical Lines for Anisotropic Texture Mapping", 《SIGGRAPH’99:PROCEEDINGS OF THE 26TH ANNUAL CONFERENCE ON COMPUTER GRAPHIC AND INTERACTIVE TECHNIQUES》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112686983A (zh) * 2019-10-17 2021-04-20 畅想科技有限公司 纹理滤波
CN112686983B (zh) * 2019-10-17 2024-06-14 畅想科技有限公司 用于执行纹理滤波的方法和设备

Also Published As

Publication number Publication date
GB2475944A (en) 2011-06-08
DE102010046507A1 (de) 2011-06-09
TWI503791B (zh) 2015-10-11
US20110134136A1 (en) 2011-06-09
GB2475944B (en) 2013-10-02
US8803902B2 (en) 2014-08-12
CN102087751B (zh) 2014-07-02
GB201016207D0 (en) 2010-11-10
TW201131513A (en) 2011-09-16

Similar Documents

Publication Publication Date Title
CN102087751B (zh) 计算各向异性滤波的细节等级
EP3748584B1 (en) Gradient adjustment for texture mapping for multiple render targets with resolution that varies by screen location
US7280121B2 (en) Image processing apparatus and method of same
US8330767B2 (en) Method and apparatus for angular invariant texture level of detail generation
Jin et al. Nonhomogeneous scaling optimization for realtime image resizing
CN108229276B (zh) 神经网络训练及图像处理方法、装置和电子设备
US9202258B2 (en) Video retargeting using content-dependent scaling vectors
US8237738B1 (en) Smooth rasterization of polygonal graphics primitives
CN109978750B (zh) 执行基于采样的渲染的图形处理器和操作其的方法
JP5512218B2 (ja) グラフィックス処理システム
US7466322B1 (en) Clipping graphics primitives to the w=0 plane
KR20160031328A (ko) 렌더링 방법 및 장치
US6100898A (en) System and method of selecting level of detail in texture mapping
CN109325909B (zh) 一种图像放大方法和图像放大装置
AU2009202878B2 (en) A line stroking method and system
JPH11126261A (ja) テクスチャマッピング方法及びその装置
CN106920213B (zh) 一种高分辨率图像的获取方法及系统
Huang et al. Output-coherent image-space lic for surface flow visualization
US20130120461A1 (en) Image processor and image processing method
Yoon et al. Video painting based on a stabilized time-varying flow field
BR112021015772A2 (pt) Método para gerar uma imagem de intensidade de luz, aparelho para gerar uma imagem de intensidade de luz e produto de programa de computador
US7595806B1 (en) Method and system for implementing level of detail filtering in a cube mapping application
US11989807B2 (en) Rendering scalable raster content
CN115526903A (zh) 一种基于Canny算法的图像上采样的硬件计算系统及方法
US9215440B2 (en) Efficient EWA video rendering

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140702

Termination date: 20210926

CF01 Termination of patent right due to non-payment of annual fee