CN106570924A - 纹理处理方法和单元 - Google Patents
纹理处理方法和单元 Download PDFInfo
- Publication number
- CN106570924A CN106570924A CN201610881136.7A CN201610881136A CN106570924A CN 106570924 A CN106570924 A CN 106570924A CN 201610881136 A CN201610881136 A CN 201610881136A CN 106570924 A CN106570924 A CN 106570924A
- Authority
- CN
- China
- Prior art keywords
- passage
- texture
- spatial frequency
- filter
- control signal
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 21
- 238000001914 filtration Methods 0.000 claims abstract description 65
- 230000004044 response Effects 0.000 claims description 16
- 238000003860 storage Methods 0.000 claims description 11
- 208000031481 Pathologic Constriction Diseases 0.000 claims description 9
- 238000010276 construction Methods 0.000 claims description 9
- 210000001215 vagina Anatomy 0.000 claims description 9
- 230000005055 memory storage Effects 0.000 claims description 6
- 241000208340 Araliaceae Species 0.000 claims 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 claims 1
- 235000003140 Panax quinquefolius Nutrition 0.000 claims 1
- 235000008434 ginseng Nutrition 0.000 claims 1
- 238000000034 method Methods 0.000 description 37
- 238000010586 diagram Methods 0.000 description 28
- 230000008569 process Effects 0.000 description 16
- 230000006835 compression Effects 0.000 description 14
- 238000007906 compression Methods 0.000 description 14
- 238000005070 sampling Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 7
- 238000004040 coloring Methods 0.000 description 7
- 238000007670 refining Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000011469 building brick Substances 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/80—Shading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/12—Indexing scheme for image data processing or generation, in general involving antialiasing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20004—Adaptive image processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20024—Filtering details
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
提供一种纹理处理方法和单元。一种纹理处理单元包括:控制器,被配置为获取纹理坐标和与纹理坐标对应的纹理的每个通道的空间频率信息,并基于每个通道的空间频率信息确定纹理的每个通道的过滤控制信号;纹理过滤器,被配置为根据每个通道的过滤控制信号执行纹理的每个相应通道的过滤。
Description
本申请要求于2015年10月12日提交到韩国知识产权局的第10-2015-0142231号韩国专利申请的权益,所述申请的全部公开通过出于所有目的的引用被包含于此。
技术领域
本公开涉及一种纹理处理方法和单元。
背景技术
图形处理单元(GPU)可包括用于加速三维图形渲染的纹理处理单元。
纹理处理单元可产生用于纹理化(texturing)的纹理。纹理化是将预先准备的图像应用于三维空间中形成的对象,并且可以是用于减少计算量的三维图形渲染操作,从而提高处理速度。在这种情况下,预先准备的图像被称为纹理,并且可以以压缩形式预先准备纹理并将纹理存储在纹理处理单元的外部存储器中。
发明内容
提供一种用于执行纹理过滤的纹理处理方法和单元,所述纹理过滤基于纹理的每个通道的空间频率信息而独立于每个通道。
另外的方面将在以下描述中部分地被阐述,部分将通过描述而清楚,或可通过所提出的示例性实施例的实施被获知。
一种纹理处理单元包括:控制器,被配置为获取纹理坐标和与纹理坐标对应的纹理的每个通道的空间频率信息,并基于每个通道的空间频率信息确定纹理的每个通道的过滤控制信号;纹理过滤器,被配置为根据每个相应通道的过滤控制信号执行纹理的每个通道的过滤。
控制器可响应于包括在各个通道的空间频率信息中的各个通道的空间频率不同而针对各个通道独立地确定过滤控制信号。
控制器可针对各个通道确定过滤控制信号,以使得对满足确定在通道中出现走样现象的预定条件的通道执行基于通道的空间频率的反走样过滤。
每个通道的空间频率信息可响应于纹理产生而产生并被与纹理一起存储,控制器可从存储纹理的外部存储器获取每个相应通道的空间频率信息。
每个通道的空间频率信息可响应于由包括纹理处理单元的图形处理单元执行纹理化而被实时确定,控制器可从图形处理单元获取每个各自的通道的空间频率信息。
控制器可获取纹理的采样频率,基于每个通道的空间频率信息将具有最高空间频率的通道确定为参考通道,基于参考通道的空间频率和采样频率确定参考通道的过滤控制信号,将参考通道的空间频率与除参考通道外的其他通道的空间频率进行比较,并确定除参考通道外的其他通道的过滤控制信号。
控制器可获取纹理的采样频率,将包括在每个通道的空间频率信息中的每个通道的空间频率与采样频率进行比较,并确定每个通道的过滤控制信号。
纹理过滤器可基于每个各自通道的过滤控制信号独立地操作与每个通道对应的至少一个过滤器。
纹理过滤器可包括包含与构造纹理的通道对应的反走样过滤器的第一过滤器和包含根据过滤模式执行过滤的过滤器的第二过滤器,并且可根据每个通道的过滤控制信号针对每个通道来操作第一过滤器和第二过滤器。
每个通道的过滤控制信号可包括用于反走样过滤的每个通道的控制信号,以及用于过滤模式的每个通道的控制信号。
纹理处理单元还可包括被配置为存储纹理的纹理高速缓存。
一种纹理处理方法包括:获取纹理坐标和与纹理坐标对应的纹理的每个通道的空间频率信息;基于每个通道的空间频率信息确定纹理的每个通道的过滤控制信号;根据每个通道的过滤控制信号执行对纹理的每个相应通道的过滤。
确定每个通道的过滤控制信号的步骤可包括:响应于包括在每个通道的空间频率信息中的每个通道的空间频率不同,针对每个通道独立地确定过滤控制信号。
确定每个通道的过滤控制信号的步骤可包括:针对每个通道确定过滤控制信号,以使得对满足确定是否出现走样现象的预定条件的通道执行基于通道的空间频率的反走样过滤。
每个通道的空间频率信息可响应于纹理产生而产生并被与纹理一起存储,并且获取纹理坐标和每个通道的空间频率信息的步骤可包括从存储纹理的外部存储器获取每个通道的空间频率信息。
每个通道的空间频率信息可响应于在包括纹理处理单元的图形处理单元中执行纹理化而被实时确定,获取纹理坐标和每个通道的空间频率信息的步骤可包括从图形处理单元获取每个各自的通道的空间频率信息。
确定每个通道的过滤控制信号的步骤可包括:获取纹理的采样频率;基于每个通道的空间频率信息将具有最高空间频率的通道确定为参考通道;基于参考通道的空间频率和采样频率确定参考通道的过滤控制信号;将参考通道的空间频率与除参考通道外的其他通道的空间频率进行比较;确定除参考通道外的其他通道的过滤控制信号。
确定每个通道的过滤控制信号的步骤可包括:获取纹理的采样频率;将包括在每个通道的空间频率信息中的每个通道的空间频率与采样频率进行比较;确定每个各自的通道的过滤控制信号。
执行每个通道的过滤的步骤可包括:根据每个各自的通道的过滤控制信号,针对每个通道操作包括与构造纹理的通道对应的反走样过滤器的第一过滤器和包括根据过滤模式执行过滤的过滤器的第二过滤器。
每个通道的过滤控制信号可包括:用于反走样过滤的每个通道的控制信号,以及用于过滤模式的每个通道的控制信号。
附图说明
图1是示出根据实施例的图形处理单元的示图。
图2是描述根据实施例的由图形处理单元对三维图形进行处理的操作的示图。
图3是描述根据实施例的纹理处理单元的操作的配置的示图。
图4A、图4B、图4C、图4D和图4E是描述根据实施例的纹理的每个通道的空间频率与采样频率之间的关系的示图。
图5是描述根据实施例的控制器的操作的示图。
图6是描述根据实施例的控制器的操作的示图。
图7是描述根据实施例的纹理处理单元的操作的示图。
图8是描述根据实施例的纹理过滤器的配置的示图。
图9是描述根据实施例的纹理过滤器的配置和操作的示图。
图10是描述根据实施例的纹理处理单元的操作的示图。
图11是描述根据实施例的纹理过滤器的操作的配置的示图。
图12是描述根据实施例的纹理处理方法的流程图。
图13是描述根据实施例的在纹理处理方法中确定每个通道的过滤控制信号的操作的详细流程图。
图14是描述根据实施例的在纹理处理方法中确定每个通道的过滤控制信号的操作的详细流程图。
贯穿附图和详细描述,相同的标号指示相同的元件。附图可以不按比例绘制,并且为了清楚、说明和方便起见,可夸大附图中的元件的相对尺寸、比例和描绘。
具体实施方式
提供以下具体实施方式以帮助读者全面理解在此描述的方法、设备和/或系统。然而,在此描述的方法、设备和/或系统的各种改变、修改和等同物对本领域普通技术人员来说将是显而易见的。这里描述的操作的顺序仅为示例,除非操作必须按照特定顺序发生,否则操作的顺序不限于在此阐述的顺序,而可如本领域普通技术人员将清楚的那样改变。
在此描述的特征可以以不同的形式被实施,而不应被解释为受在此描述的示例所限制。相反,已提供在此描述的示例以使本公开将是彻底和完整的,并将本公开的完整范围传达给本领域普通技术人员。
图1是示出根据实施例的图形处理单元的示图。本领域普通技术人员会清楚,在全面理解本说明书之后,除了图1所示的组件外或替代图1所示的组件,还可包括其他通用组件。
参照图1,图形处理单元(GPU)100可包括光栅化器110、着色器核120、纹理处理单元130、像素处理单元140和图块缓冲器150。图形处理单元100可通过总线300与位于GPU100外部的存储器200收发数据。
图1所示的图形处理单元100可以是用于处理三维图形的设备,并可使用基于图块的渲染(TBR)方法。换言之,图形处理单元100可通过控制被划分成预定大小的多个图块由光栅化器110、着色器核120和像素处理单元140进行处理来将处理结果存储在图块缓冲器150中,以便产生与一帧对应的三维图形。图形处理单元100可使用多个管道来并行处理构造帧的所有图块,每个管道可通过(例如,包含)光栅化器110、着色器核120和像素处理单元140来配置。当与一帧对应的多个图块被处理时,图形处理单元100可将存储在图块缓冲器150中的处理结果发送到存储器200的帧缓冲器18(见图2)。
光栅化器110可通过几何变换操作对从顶点着色器(见图2中的12)产生的图元执行光栅化。
着色器核120可从光栅化器110接收光栅化的图元,并执行像素着色。着色器核120可执行像素着色以针对包括通过光栅化产生的图元的片元的图块分配包括在图块中的所有像素的颜色。着色器核120可在像素着色操作中利用使用纹理产生的像素值来产生逼真的三维图形。
着色器核120可包括像素着色器。此外,着色器核120还可包括顶点着色器,或者是组合顶点着色器和像素着色器(见图2中的15)的组合着色器。当着色器核120作为顶点着色器执行时,可产生表示对象的图元,并将产生的图元发送到光栅化器110。
当着色器核120请求纹理处理单元130发送与像素对应的像素值时,纹理处理单元130可发送通过处理预先准备的纹理而产生的像素值。纹理可被存储在纹理处理单元130内部或外部的预定空间中,或被存储在GPU 100的存储器200中。当用于产生着色器核120请求的像素值的纹理未在纹理处理单元130内部的预定空间中时,纹理处理单元130可从纹理处理单元130外部的空间或从存储器200获取纹理并使用纹理。
像素处理单元140可通过对与一个图块中的相同位置对应的像素经诸如深度测试等的操作确定最终显示的像素值,来确定与一个图块对应的所有像素值。
图块缓冲器150可存储从像素处理单元140发送的与一个图块对应的所有像素值。当对包括在一帧中的所有图块的图形处理操作完成时,存储在图块缓冲器150中的处理结果可被发送到存储器200的帧缓冲器18(见图2)。
图2是描述根据实施例的由图形处理单元对三维图形进行处理的操作的示图。
处理三维图形的操作可被划分为几何变换、光栅化和像素着色,以下将参照图2描述这个操作。参照图2,处理三维图形的操作将由操作11至操作18来表示。
操作11是产生顶点的操作。产生顶点以表示包括在三维图形中的对象。
操作12是对产生的顶点进行着色的操作。顶点着色器可通过指定在操作11中产生的顶点的位置来对顶点执行着色。
操作13是产生图元的操作。图元是指使用至少一个顶点形成的点、线、多边形等。作为示例,图元可表示通过连接顶点形成的三角形,但是可表示诸如四边形、五边形等的不同形状。
操作14是对图元进行光栅化的操作。对图元进行光栅化是指将图元划分为片元。片元可以是用于对图元执行图形处理的基本单位。由于图元仅包括关于顶点的信息,因此可通过在光栅化操作中在顶点之间产生片元来对三维图形执行图形处理。
操作15是对像素进行着色的操作。通过光栅化产生的构造图元的片元可以是构造图块的像素。诸如“片元”和“像素”的术语在一些情况下可互换使用。例如,像素着色器可被称为片元着色器。通常,构造图元的图形处理的基本单位可被称为片元,在此之后通过像素着色的图形处理的基本单位可被称为像素。像素的颜色可在像素着色中确定。
操作16表示用于确定像素的颜色的纹理化(texturing)的操作。纹理化是使用纹理(预先准备的图像)来确定像素的颜色的处理。由于计算并确定每个像素的颜色以表现真实世界的图案的各种颜色和外观的操作增加了处理图形所需的计算量和图形处理时间,因此可使用预先准备的纹理来确定像素的颜色。例如,对象的表面颜色可被存储为被称为纹理的单独的二维图像,并且可通过放大或缩小根据对象的屏幕的位置和尺寸等存储的纹理确定像素的颜色,或使用具有各种分辨率的纹理来混合纹理元素值。
可利用使用预先准备的纹理产生的像素值,以在像素着色操作期间执行更快的三维图形处理。在这种情况下,可通过预先准备具有不同分辨率以自适应地对应于对象的尺寸的多个纹理并组合所述多个纹理来产生像素值。在这种情况下,具有不同分辨率的预先准备的纹理被称为细化贴图(mipmap)。例如,为从两个预先准备的细化贴图产生具有中分辨率的对象的像素值,可通过从这两个预先准备的细化贴图提取与对象对应的位置的纹理元素值并过滤纹理元素值来产生构造对象的像素值。
操作17表示测试和混合的操作。可通过对与一个图块中的相同位置对应的像素经诸如深度测试等的操作确定最终显示的像素值,来确定与所述一个图块对应的像素值。可通过混合经所述操作产生的多个图块来产生与一帧对应的三维图形。
操作18表示将通过操作11至操作17产生的帧存储在帧缓冲器中并将存储在帧缓冲器中的帧显示在显示单元上的操作。
图3是描述根据实施例的纹理处理单元的操作的配置的示图。
参照图3,纹理处理单元130可包括控制器131、纹理高速缓存134和纹理过滤器137。
纹理处理单元130可从图形处理单元100的存储器200接收具有压缩形式的纹理,并可处理纹理。
控制器131可执行用于控制纹理处理单元130的操作,或可将控制信号发送到纹理高速缓存134和纹理过滤器137,并执行纹理处理单元130的总体控制。
控制器131可从着色器核120接收与将在着色器核120中被处理的像素的像素坐标对应的纹理坐标。
控制器131可针对每个通道产生控制信号以使得纹理过滤器137过滤包括在包含纹理坐标的纹理空间的区域的部分中的纹理元素。控制器131可获取与纹理坐标对应的纹理的每个通道的空间频率信息以产生被发送到纹理过滤器137的每个通道的过滤控制信号。控制器131可根据纹理的每个通道的空间频率信息确定纹理的每个通道的过滤方法。
因为纹理是纹理元素的集合,并且每个纹理元素具有与多个相应的颜色分量对应的多个通道,因此被构造的纹理还可包括多个通道。纹理的每个通道的空间频率信息可表示包括在纹理中的每个通道的图像信号的变化率。
通道的空间频率信息可表示对应通道的图像信号的变化率。由于通道的低空间频率表示对应通道的图像信号的小变化率,因此其可表示包括在纹理中的在对应通道中具有相同或非常相似的图像信号值的邻近的纹理元素。换言之,通道的低空间频率可被称为对应通道的空间相关性高的状态或对应通道平坦的状态。相反,由于通道的高空间频率表示对应通道的图像信号的大的变化率,因此其可表示包括在纹理中的在对应通道中具有不相似的图像信号值的邻近的纹理元素。换言之,通道的高空间频率可被称为对应通道的空间相关性低的状态或对应通道不平坦的状态。
图4A、图4B、图4C、图4D和图4E表示用于描述根据实施例的纹理的每个通道的空间频率与采样频率之间的关系的示图。
可由多个通道的图像信号的总和表示一个纹理。每个通道可对应于表示任意颜色空间的每个颜色分量。颜色空间可以是RGBA、YCbCrA等。
参照图4A至图4E,示出原始纹理a(在图4A中示出)和包括在原始纹理a中的各个通道b、c、d和e(在图4B、图4C、图4D和图4E中分别示出)。如图4所示,当使用RGBA颜色空间时,原始纹理a可由R通道b、G通道c、B通道d和A通道e的总和来表示。
参照图4A,当参照原始纹理a中的采样频率时,在X轴方向上每2个纹理元素执行一次采样,在Y轴方向上每4个纹理元素执行一次采样。因此,X轴方向具有1/2的采样频率,Y轴方向具有1/4的采样频率。作为结果,可看出在X轴方向上每两个纹理元素会丢失一个纹理元素值,在Y轴方向上每四个纹理元素丢失三个纹理元素值。
参照图4B,当参照R通道b时,可看出纹理元素值具有这样的模式:在X轴方向和Y轴方向二者上,在相同的纹理元素值保持了四个纹理元素之后,在四个连续的纹理元素中不存在纹理元素值。因此,由于在X轴方向和Y轴方向二者上,8个纹理元素形成一个周期,所以R通道b在X轴方向和Y轴方向二者上可具有1/8的空间频率。
参照图4C,当参照G通道c时,可看出纹理元素值具有这样的模式:纹理元素的纹理元素值在X轴方向和Y轴方向二者上持续改变,但相同的纹理元素值每两个纹理元素被重复。因此,由于在X轴方向和Y轴方向二者上,两个纹理元素形成一个周期,所以G通道c在X轴方向和Y轴方向二者上可具有1/2的空间频率。
参照图4D,当参照B通道d时,可看出纹理元素值具有这样的模式:在X轴方向和Y轴方向二者上,在相同的纹理元素值保持了两个纹理元素之后,在两个连续的纹理元素中不存在纹理元素值。因此,由于在X轴方向和Y轴方向二者上,四个纹理元素形成一个周期,所以B通道d在X轴方向和Y轴方向二者上可具有1/4的空间频率。
如图4E所示,当参照A通道e时,由于每个纹理元素具有相同的值,所以空间频率可为0。
因此,可看出包括在原始纹理a中的R通道b、G通道c、B通道d和A通道e的空间频率彼此不同,然而R通道b、G通道c、B通道d和A通道e的采样频率相同并且等于原始纹理a的采样频率。
在每个通道中,由于X轴方向具有1/2的采样频率并且Y轴方向具有1/4的采样频率,所以在X轴方向上每两个纹理元素会丢失一个纹理元素值,在Y轴方向上每四个纹理元素会丢失三个纹理元素值。当采样频率低于每个通道的空间频率的二倍时,会丢失纹理元素值的一部分,并且可出现走样现象。
为通过仅考虑采样频率而不考虑每个通道的空间频率信息来最小化走样现象,可通过假设走样现象在每个通道中出现的条件(即,每个通道具有最大的空间频率的条件)来执行反走样过滤。然而,在这种情况下,由于对未实际出现走样现象的通道执行反走样过滤,所以对通道的一部分执行不必要的过滤操作,因此,可出现由于处理速度的降低引起的增加的功耗和帧率损失。
为防止不必要的过滤操作的执行,控制器131可基于每个通道的特性独立地针对每个通道确定空间过滤控制信号。控制器131可获取纹理的每个通道的空间频率信息,并且可基于每个通道的空间频率信息确定每个通道的过滤控制信号。
控制器131可在包括在每个通道的空间频率信息中的每个通道的空间频率不同时独立地针对每个通道确定过滤控制信号。控制器131可确定每个通道的过滤控制信号以使得对满足出现走样现象的预定条件的通道执行基于通道的空间频率的反走样过滤。
每个通道的过滤控制信号可包括用于反走样过滤的每个通道的控制信号。除了用于反走样过滤的每个通道的控制信号之外,每个通道的过滤控制信号还可包括在由在非暂时性硬件装置上运行的应用程序请求的过滤模式下的每个通道的控制信号。
如上所述,图4所示的包括在原始纹理a中的R通道b、G通道c、B通道d和A通道e的X轴和Y轴的空间频率可相同,分别为1/8、1/2、1/4和0,并且每个通道的采样频率可在X轴方向上为1/2而在Y轴方向上为1/4。
因此,在图4中,即使当在R通道b、B通道d和A通道e中在X轴方向上每两个纹理元素采样一个纹理元素值时没有纹理元素值损失,但是在G通道c的情况下,由于每两个纹理元素(每隔一个纹理元素)重复纹理元素值并且每个纹理元素改变纹理元素值,所以当在X轴方向上每两个纹理元素采样一个纹理元素值时,由于仅相同的纹理元素值被重复采样,所以会丢失不同的纹理元素值并且可出现走样现象。
在图4中,虽然当在R通道b和A通道e中在X轴方向上每四个纹理元素采样一个纹理元素值,但是在B通道d和G通道c的情况下,由于每个纹理元素改变纹理元素值或每两个纹理元素(每隔一个纹理元素)改变纹理元素值,所以当在Y轴方向上每四个纹理元素采样一个纹理元素值时,会丢失纹理元素值的一部分并且可出现走样现象。
可使用诸如平均过滤器的低通过滤器用采样值来代替采样期间的纹理元素的平均值,以考虑每个通道的空间频率信息而最小化出现走样现象的通道中的走样现象。
当产生纹理的时候可产生纹理的每个通道的空间频率信息。由于每个通道的空间频率信息可被一起存储在存储了纹理的存储器200中,所以控制器131可从存储器200获取每个通道的空间频率信息。
纹理可以以压缩形式被存储在存储器200中,当按照每个通道压缩纹理时,每个通道的压缩率信息可被产生并被一起存储。控制器131可从对从存储器200发送的压缩纹理进行解压缩的解压缩器(未示出)获取纹理的每个通道的压缩率信息。控制器131可基于每个通道的压缩率信息确定纹理的每个通道的空间频率信息。例如,当通道的压缩率高时,通道的空间频率可为低,而当通道的压缩率低时,通道的空间频率可为高,因此可使用压缩率和空间频率之间的关系来确定空间频率信息。
当在包括纹理处理单元130的图形处理单元100中执行纹理化操作时,可实时计算纹理的每个通道的空间频率信息。控制器131可从图形处理单元100获取每个通道的空间频率信息。
可通过在作为非暂时性硬件装置的图形处理单元100中运行的应用程序直接接收纹理的每个通道的空间频率信息。
返回参照图3,纹理高速缓存134可存储在图形处理操作中使用的纹理。纹理调整缓存134可从存储器200接收关于一个纹理的具有各种分辨率的细化贴图,并可存储接收到的细化贴图。纹理高速缓存134可提取从着色器核120请求的用于处理像素值的纹理元素值,并将提取的纹理元素值发送到纹理过滤器137。
纹理过滤器137可通过对从纹理高速缓存134发送的纹理元素值进行过滤来产生一个像素值。对纹理元素值进行过滤是指通过混合纹理元素值获取与像素对应的颜色值。
例如,纹理过滤器137可通过获取包括在包含纹理坐标的纹理空间的一部分中的纹理元素值的平均值来执行过滤。由纹理过滤器137产生的像素值可以是通过预定操作过滤的纹理元素值。与纹理过滤器137的过滤结果对应的过滤的纹理元素值可被发送到着色器核120。
纹理过滤器137可按照每个通道过滤包括在纹理中的纹理元素。每个通道可对应于包括在纹理元素中的每个颜色分量。由于一个纹理元素可包括多个颜色分量,所以一个纹理元素可具有多个通道。在对每个通道执行过滤之后,纹理过滤器137可输出通过混合通道的过滤结果而得到的值作为最终值。
纹理过滤器137可执行至少一个过滤操作。当存在多个过滤操作时,纹理过滤器137可顺序地执行所述多个过滤操作。纹理过滤器137可包括与每个过滤操作对应的过滤器。
例如,纹理过滤器137可执行反走样过滤和根据由应用程序请求的过滤模式的过滤。纹理过滤器137可在执行反走样过滤之后执行根据由应用程序请求的过滤模式的过滤,或在执行根据由应用程序请求的过滤模式的过滤之后执行反走样过滤。
纹理过滤器137可在每个过滤操作中对每个通道执行相同的或不同的过滤。纹理过滤器137可考虑每个通道的特性应用适合于每个通道的过滤方法,以便最小化不必要的操作。纹理过滤器137可省略对被确定为不必进行过滤操作的通道的过滤操作。与每个过滤操作对应的过滤器可包括与每个通道对应的子过滤器。
例如,纹理过滤器137可通过从各向同性反走样过滤、各向异性反走样过滤和具有细化贴图的各向异性反走样过滤等选择来针对每个通道执行过滤,以便防止走样现象。这可用于通过考虑每个通道的特性而应用适合于每个通道的反走样过滤来最小化不必要的过滤操作。
各向同性反走样过滤是将相同的低通过滤器应用于图像的每个方向的方法。各向异性反走样过滤是基于图像的每个方向的采样频率应用不同的低通过滤器的方法。具有细化贴图的各向异性反走样过滤是使用应用于在图像中具有高采样频率的方向的细化贴图防止走样现象并基于具有低采样频率的方向的采样频率应用低通过滤器的方法。
纹理过滤器137可根据由应用程序请求的过滤模式执行点过滤、双线过滤(bilinear filtering)、三线过滤(trilinear filtering)等。纹理过滤器137可考虑将被过滤的每个通道的特性用另一过滤模式代替由应用程序请求的过滤模式。这可通过考虑将被过滤的每个通道的特性用相对简单的过滤模式代替由应用程序请求的过滤模式来最小化不必要的过滤操作。
点过滤是当确定用于其中执行渲染的对象的纹理时基于纹理坐标在获取预定数量的外围纹理元素之后输出位于最近位置的纹理元素的模式。双线过滤是当确定用于其中执行渲染的对象的纹理时基于纹理坐标获取四个外围纹理元素,每隔一个纹理元素进行插值,对插值结果再次插值,并输出插值的结果的模式。三线过滤是基于纹理坐标在每两个细化贴图层中包括四个纹理元素,在每个细化贴图中执行双线过滤,在这两个细化贴图中对结果再次执行双线过滤,并输出结果的模式。
图5是描述根据一个实施例的控制器的操作的示图。图5是描述控制器131确定每个通道的过滤控制信号的一个示例的示图。
参照图5,除了纹理坐标之外,控制器131还可获取每个通道的空间频率信息。控制器131可获取纹理的采样频率。控制器131可基于每个通道的空间频率信息将具有最高空间频率的通道确定为参考通道,并可基于参考通道的空间频率和采样频率确定参考通道的过滤控制信号。控制器131可将参考通道的空间频率与除参考通道外的其他通道的空间频率进行比较,并确定除参考通道外的其他通道的过滤控制信号。
由于每个通道的采样频率是相同的,所以可首先确定参考通道的过滤控制信号,并且可考虑参考通道与各个其他通道的空间频率关系来确定其他通道中的每个的过滤控制信号。
图6是描述根据实施例的控制器的操作的示图。控制器131是描述确定每个通道的过滤控制信号的示例的示图。
参照图6,除了纹理坐标之外,控制器131还可获取每个通道的空间频率信息。控制器131可获取纹理的采样频率。控制器131可将包括在每个通道的空间频率信息中的每个通道的空间频率与采样频率进行比较,并确定每个各自通道的过滤控制信号。这个方法同时针对所有通道获取每个通道的过滤控制信号。
以下,将使用图4A中示出的原始纹理a的反走样过滤操作作为示例来描述纹理过滤器137如何根据由控制器131确定的每个通道的过滤控制信号进行操作。
图7是描述根据实施例的纹理处理单元的操作的示图。
控制器131可获取纹理坐标。控制器131可基于获取的纹理坐标请求存储器200中的与纹理坐标对应的纹理。
控制器131可获取请求的纹理的每个通道的空间频率信息。控制器131可以以各种方式获取纹理的每个通道的空间频率信息。例如,当每个通道的空间频率信息被一起存储在存储了纹理的存储器200中时,控制器131可从存储器200获取每个通道的空间频率信息。当对每个通道的压缩纹理进行解压缩并将解压缩的纹理存储在纹理高速缓存134中时,控制器131可获取纹理的压缩率信息,并可从压缩率信息获取每个通道的空间频率信息。当在包括纹理处理单元130的图形处理单元100中执行纹理化操作时,控制器131可从图形处理单元100获取被实时计算的每个通道的空间频率信息。
控制器131可基于获取的每个通道的空间频率信息确定纹理的每个通道的过滤控制信号。当包括在每个通道的空间频率信息中的通道的空间频率彼此不同时,控制器131可在每个通道中针对每个通道独立地确定过滤控制信号。控制器131可确定每个通道的过滤控制信号,以便对满足出现走样现象的预定条件的通道执行基于通道的空间频率的反走样过滤。
如以上在图4A至图4E中所述,原始纹理可被划分成RGBA颜色空间的R通道、G通道、B通道和A通道的图像信号,每个通道的X轴和Y轴的空间频率可以相同,并且通道的空间频率可以分别为1/8、1/2、1/4和0。在这种情况下,每个通道的采样频率在X轴方向上为1/2,在Y轴方向上为1/4。
控制器131可基于原始纹理的每个通道的空间频率信息寻找满足出现走样现象的预定条件的通道。例如,当采样频率小于通道的空间频率的二倍时,在对应通道的对应轴方向上可出现走样现象。在G通道的情况下,由于图像信号的X轴和Y轴的空间频率的二倍比采样频率大,所以在G通道的图像信号的X轴和Y轴二者上可出现走样现象。在B通道中,由于图像信号的Y轴的空间频率的二倍比Y轴的采样频率大,所以在B通道的图像信号的Y轴上可出现走样现象。控制器131可通过上述方法定位出现走样现象的通道。控制器131可确定每个通道的过滤控制信号以便对满足出现走样现象的预定条件的通道执行反走样过滤。
纹理高速缓存134可从存储器200接收由控制器131请求的纹理。参照图7,纹理高速缓存134可从存储器200接收存储在存储器200中的原始纹理,并可存储原始纹理。
控制器131可控制纹理高速缓存134读取存储在纹理高速缓存134中的纹理的每个通道的图像信号并将图像信号发送到纹理过滤器137。控制器131可将每个通道的过滤控制信号发送到纹理过滤器137以便对满足出现走样现象的预定条件的通道中的一部分执行反走样过滤。除了用于反走样过滤的每个通道的控制信号之外,每个通道的过滤控制信号还可包括用于由在非暂时性硬件装置上运行的应用程序所请求的过滤模式的每个通道的控制信号。
纹理过滤器137可包括包含与包括在纹理中的通道对应的反走样过滤器的第一过滤器138和包含根据由应用程序请求的过滤模式执行过滤的过滤器的第二过滤器139。纹理过滤器137可根据从控制器131发送的每个通道的过滤控制信号针对每个通道来操作第一过滤器138和第二过滤器139。纹理过滤器137可根据每个通道的过滤控制信号独立地操作与每个通道对应的至少一个过滤器。
以下,参照图8和图9,将描述从存储器200接收原始纹理以及分别对出现走样现象的G通道和B通道执行各向同性反走样过滤和各向异性反走样过滤的示例。
图8是描述根据实施例的纹理过滤器的配置和操作的示图。
各向同性反走样过滤是将相同的低通过滤器应用于图像的每个方向的方法。各向同性反走样过滤是即使当采样频率根据图像的方向而不同时基于具有最小采样频率的方向确定低通过滤器系数并将确定的低通过滤器系数应用于每个方向的方法。
如以上参照图7所述,可响应于控制器131的纹理请求在纹理高速缓存134中接收原始纹理。控制器131可控制读取存储在纹理高速缓存134中的原始纹理的每个通道的图像信号,并将图像信号发送到纹理过滤器137。
参照图8,原始纹理的每个通道的图像信号可经过与每个通道对应的至少一个过滤器。每个通道的过滤控制信号可被发送到每个各自通道的第一过滤器138-1、138-2、138-3或138-4,以便对满足确定哪里出现走样现象的预定条件的通道中的一部分执行反走样过滤。用于反走样过滤的每个通道的控制信号可独立地操作每个通道的第一过滤器138-1、138-2、138-3或138-4。
如上所述,为了处理出现在G通道的X轴和Y轴以及B通道的Y轴上的走样现象,纹理过滤器137可仅针对G通道和B通道独立地操作G通道的第一过滤器138-2和B通道的第一过滤器138-3。
G通道的第一过滤器138-2和B通道的第一过滤器138-3可通过将对应于根据每个通道的图像的方向的采样频率之中的最小采样频率的低通过滤器应用于图像的每个方向来执行反走样过滤。由于G通道在X轴方向上具有1/2的采样频率并且在Y轴方向上具有1/4的采样频率,所以G通道的第一过滤器138-2可基于1/4的采样频率在X轴方向和Y轴方向上每四个纹理元素执行反走样过滤。当在B通道的Y轴方向上出现走样现象时,即使当在B通道的X轴方向上未出现走样现象时,B通道的第一过滤器138-3也可基于Y轴方向的采样频率对X轴方向和Y轴方向二者执行反走样过滤。由于B通道在Y轴方向上具有1/4的采样频率,所以可在X轴方向和Y轴方向上每四个纹理元素执行反走样过滤。
与R通道和A通道对应的R通道的第一过滤器138-1和A通道的第一过滤器138-4可不执行反走样过滤。如此,纹理过滤器137可基于每个通道的空间频率信息独立地操作每个通道的第一过滤器138-1、138-2、138-3或138-4。
当每个通道的过滤控制信号除了包括用于反走样过滤的每个通道的控制信号之外还包括用于由应用程序请求的过滤模式的每个通道的控制信号时,可独立地操作每个通道的第二过滤器139-1、139-2、139-3或139-4。
图9是描述根据实施例的纹理过滤器的配置和操作的示图。
各向异性反走样过滤是基于图像的每个方向的采样频率根据方向应用不同的低通过滤器的方法。各向异性反走样过滤是当采样频率根据图像的方向而不同时确定与每个采样频率对应的低通过滤器系数并将不同的低通过滤器应用于每个方向的方法。
如图7所述,可响应于控制器131的纹理请求在纹理高速缓存134中接收原始纹理。控制器131可控制读取存储在纹理高速缓存134中的原始纹理的每个通道的图像信号,并控制向纹理过滤器137的发送。
参照图9,原始纹理的每个通道的图像信号可经过与每个通道对应的至少一个过滤器。每个通道的过滤控制信号可被发送到每个通道的第一过滤器138-1、138-2、138-3或138-4,以便对满足出现走样现象的预定条件的通道中的一部分执行反走样过滤。用于反走样过滤的控制信号可独立地操作每个通道的第一过滤器138-1、138-2、138-3或138-4。
如上所述,为了处理出现在G通道的X轴和Y轴以及B通道的Y轴上的走样现象,纹理过滤器137可仅针对G通道和B通道独立地操作G通道的第一过滤器138-2和B通道的第一过滤器138-3。
G通道的第一过滤器138-2可对G通道的X轴和Y轴执行反走样过滤。由于G通道在X轴方向上具有1/2的采样频率并且在Y轴方向上具有1/4的采样频率,所以可在X轴方向上每两个纹理元素并在Y轴方向上每四个纹理元素执行反走样过滤。B通道的第一过滤器138-3可在B通道的Y轴方向上执行反走样过滤。由于B通道在Y轴方向上具有1/4的采样频率,所以可在Y轴方向上每四个纹理元素执行反走样过滤。由于在B通道的X轴方向上未出现走样现象,所以可不在X轴方向上执行反走样过滤。
与R通道和A通道对应的R通道的第一过滤器138-1和A通道的第一过滤器138-4可不执行反走样过滤。如此,纹理过滤器137可基于每个通道的空间频率信息独立地操作每个通道的第一过滤器138-1、138-2、138-3或138-4。
当每个通道的过滤控制信号除了包括用于反走样过滤的每个通道的控制信号之外还包括用于由应用程序请求的过滤模式的每个通道的控制信号时,纹理过滤器137可独立地操作每个通道的第二过滤器139-1、139-2、139-3或139-4。
图10是描述根据实施例的纹理处理单元的操作的示图。
与图7相比,图10示出原始纹理和降低原始纹理的分辨率的细化贴图被存储在存储器200中并且细化贴图被用于纹理过滤的示例。将省略对与已经参照图7进行描述的方面相似的方面的完整描述。
控制器131可获取纹理坐标。控制器131可基于获取的纹理坐标向存储器200请求与纹理坐标对应的纹理。
控制器131可获取请求的纹理的每个相应的通道的空间频率信息。控制器131可基于获取的每个通道的空间频率信息确定纹理的每个相应的通道的过滤控制信号。
如以上参照图4所述,原始纹理可被划分成RGBA颜色空间的R通道、G通道、B通道和A通道的图像信号,每个通道的X轴和Y轴的空间频率可以相同,并且可以分别为1/8、1/2、1/4和0。在这种情况下,每个通道的采样频率在X轴方向上可为1/2并且在Y轴方向上为1/4。
控制器131可基于原始纹理的每个通道的空间频率信息寻找满足出现走样现象的预定条件的通道。如以上参照图7所述,在G通道中,由于图像信号的X轴和Y轴的空间频率的二倍比采样频率大,所以在G通道的图像信号的X轴和Y轴二者上可出现走样现象。在B通道中,由于图像信号的Y轴的空间频率的二倍比Y轴的采样频率大,所以在B通道的图像信号的Y轴上可出现走样现象。
控制器131可确定每个通道的过滤控制信号以便对满足出现走样现象的预定条件的G通道和B通道执行反走样过滤。在这种情况下,可通过使用适合于原始纹理的细化贴图来解决对具有最大采样频率的轴的反走样过滤。
在G通道中,可在具有高采样频率的X轴和具有低采样频率的Y轴二者上产生走样现象,在B通道中,可仅在Y轴上产生走样现象。在这种情况下,具有低采样频率的轴可以是长轴,具有高采样频率的轴可以是短轴。可在未在具有高采样频率的短轴上出现走样现象的同时通过合适地选择分辨率未降低的细化贴图来获取反走样过滤的效果。可通过进一步将低通过滤器应用于具有低采样频率的长轴来执行反走样过滤。
参照图10,可响应于控制器131的纹理请求在纹理高速缓存134中接收细化贴图层1。由于细化贴图层1是X轴和Y轴二者的分辨率均针对原始纹理降低1/2的细化贴图,所以它可对应于经过预定低通过滤器的结果。纹理高速缓存134可从存储器200接收存储在存储器200中的细化贴图之中用于纹理过滤的细化贴图层1,并可存储细化贴图层1。
控制器131可读取存储在纹理高速缓存134中的细化贴图的每个通道的图像信号,并控制向纹理过滤器137发送。控制器131可将每个通道的过滤控制信号发送到纹理过滤器137以便对满足出现走样现象的预定条件的通道中的一部分执行反走样过滤。除了用于反走样过滤的每个通道的控制信号之外,每个通道的过滤控制信号还可包括用于由应用程序所请求的过滤模式的每个通道的控制信号。
纹理过滤器137可包括包含与构造纹理的通道对应的反走样过滤器的第一过滤器138和包含根据由应用程序请求的过滤模式执行过滤的过滤器的第二过滤器139。纹理过滤器137可根据从控制器131发送的每个通道的过滤控制信号针对每个通道来操作第一过滤器138和第二过滤器139。纹理过滤器137可根据每个通道的过滤控制信号独立地操作与每个通道对应的至少一个过滤器。
在以下,将在下面参照图11描述从存储器200接收与原始纹理对应的细化贴图并对出现走样现象的G通道和B通道执行具有细化贴图的各向异性反走样过滤的示例。
图11是描述根据实施例的纹理过滤器的配置和操作的示图。
具有细化贴图的各向异性反走样过滤是针对在图像中具有高采样频率的方向使用细化贴图防止走样现象并基于具有低采样频率的方向的采样频率应用低通过滤器的方法。
如上参照图10所述,可响应于控制器131的纹理请求在纹理高速缓存134中接收细化贴图层1。控制器131可控制读取存储在纹理高速缓存134中的细化贴图的每个对应通道的图像信号,并可控制向纹理过滤器137的发送。
参照图11,细化贴图层1的每个通道的图像信号可经过与每个通道对应的至少一个过滤器。由于与原始纹理相比细化贴图层1具有1/2的分辨率,所以细化贴图层1的每个通道的图像信号也可具有1/2的分辨率。即,由于与原始纹理相比细化贴图层1的分辨率降低了1/2,所以可示出与对G通道的X轴执行的反走样过滤的结果等同的结果。
由于采样频率针对G通道的Y轴和B通道的Y轴为1/4,所以使用细化贴图层1可能不会解决在Y轴方向上出现的走样现象。因此,可将低通过滤器应用于G通道的Y轴和B通道的Y轴,因此可减缓走样现象。用于反走样过滤的每个通道的控制信号可独立地操作每个通道的第一过滤器138-1、138-2、138-3或138-4。即,在这个示例中,纹理过滤器137可仅在作为G通道和B通道的长轴的Y轴方向上独立地操作G通道的第一过滤器138-2和B通道的第一过滤器138-3。由于G通道和B通道在Y轴方向上具有1/4的采样频率,所以G通道的第一过滤器138-2和B通道的第一过滤器138-3可在Y轴方向上每四个纹理元素执行反走样过滤。
与R通道和A通道对应的R通道的第一过滤器138-1和A通道的第一过滤器138-4可不执行反走样过滤。如此,纹理过滤器137可基于每个通道的空间频率信息独立地操作每个通道的第一过滤器138-1、138-2、138-3或138-4。
当每个通道的过滤控制信号除了包括用于反走样过滤的每个通道的控制信号之外还包括用于由应用程序请求的过滤模式的每个通道的控制信号时,纹理过滤器137可独立地操作每个通道的第二过滤器139-1、139-2、139-3或139-4。
图12是描述根据实施例的纹理处理方法的流程图。
在操作S1210,纹理处理单元130可获取纹理坐标和与纹理坐标对应的纹理的每个通道的空间频率信息。
由于在产生纹理时一起产生纹理的每个通道的空间频率信息并且将纹理与纹理的每个通道的空间频率信息一起存储在其中存储纹理的外部存储器200中,所以控制器131可从存储器200获取每个通道的空间频率信息。
控制器131可从对从存储器200发送的压缩纹理进行解压缩的解压缩器(未示出)获取纹理的每个通道的压缩率信息。控制器131可基于每个通道的压缩率信息确定纹理的每个通道的空间频率信息。由于在具有高压缩率的通道中通道的空间频率低,而在具有低压缩率的通道中通道的空间频率高,因此可使用压缩率和空间频率之间的关系确定空间频率信息。
当由包括纹理处理单元130的图形处理单元100执行纹理化操作时,可实时计算纹理的每个通道的空间频率信息。控制器131可从图形处理单元100获取每个通道的计算的空间频率信息。
可通过由作为非暂时性硬件装置的图形处理单元100运行的应用程序直接输入纹理的每个各自通道的空间频率信息。
在操作S1220,纹理处理单元130可基于每个通道的空间频率信息确定纹理的每个各自通道的过滤控制信号。
当包括在各自通道的空间频率信息中的通道的空间频率彼此不同时,纹理处理单元130可针对每个通道独立地确定过滤控制信号。纹理处理单元130可确定每个通道的过滤控制信号,以便对满足出现走样现象的预定条件的通道执行基于通道的空间频率的反走样过滤。每个通道的过滤控制信号可包括用于反走样过滤的每个通道的控制信号。除了包括用于反走样过滤的每个通道的控制信号以外,每个通道的过滤控制信号还可包括用于由在非暂时性硬件装置上运行的应用程序所请求的过滤模式的每个各自通道的控制信号。
图13是用于描述根据实施例的在纹理处理方法中确定每个通道的过滤控制信号的操作的详细流程图。
在操作S1310,纹理处理单元130可获取纹理的采样频率。
在操作S1320,纹理处理单元130可基于每个通道的空间频率信息将具有最高空间频率的通道确定为参考通道。
在操作S1330,纹理处理单元130可基于参考通道的空间频率和采样频率确定参考通道的过滤控制信号。
在操作S1340,纹理处理单元130可将参考通道的空间频率与除参考通道外的其他通道的空间频率进行比较,并确定除参考通道外的其他通道的过滤控制信号。
图14是描述根据实施例的在纹理处理方法中确定每个通道的过滤控制信号的操作的详细流程图。
在操作S1410,纹理处理单元130可获取纹理的采样频率。
在操作S1420,纹理处理单元130可将包括在每个通道的空间频率信息中的每个通道的空间频率与采样频率进行比较,并确定每个通道的过滤控制信号。
再次参照图12,在操作S1230,纹理处理单元130可根据每个通道的过滤控制信号对纹理执行每个通道的过滤。
纹理处理单元130可根据每个通道的过滤控制信号针对每个通道操作包括与构造纹理的通道对应的反走样过滤器的第一过滤器和包括根据由应用程序所请求的过滤模式执行过滤的过滤器的第二过滤器。
由硬件组件实现执行这里关于图1至图14描述的操作的在图1至图14中示出的设备、单元、模块、装置和其他组件。硬件组件的示例包括控制器、传感器、产生器、驱动器和本领域普通技术人员公知的任何其他电子组件。硬件组件由一个或多个处理器或计算机实现。通过全面理解本公开,处理器或计算机由一个或多个处理元件(诸如逻辑门阵列、控制器和算术逻辑单元、数字信号处理器、微型计算机、可编程逻辑控制器、现场可编程门阵列、可编程逻辑阵列、微处理器)或本领域普通技术人员公知的任何其他装置或装置的组合实现,这些装置或装置的组合能够以限定的方式响应并执行指令以得到期望的结果。在一个示例中,处理器或计算机包括或连接到存储被处理器或计算机执行的指令或软件的一个或多个存储器。由处理器或计算机实现的硬件组件执行指令或软件(诸如操作系统(OS)和在OS上运行以执行这里关于图1至图14描述的操作的一个或多个软件应用)。硬件组件还可响应于指令或软件的执行来访问、操控、处理、创建和存储数据。为简单起见,在这里描述的示例的描述中使用单数术语“处理器”或“计算机”,但是在其他示例中,使用多个处理器或计算机,或者一个处理器或计算机包括多个处理元件或多种类型的处理元件,或者应用以上两种形式。在一个示例中,硬件组件包括多个处理器,而在另一示例中,硬件组件包括一个处理器和一个控制器。硬件组件具有不同的处理配置中的任意一个或多个,所述不同处理配置的示例包括单个处理器、独立处理器、并行处理器、单指令单数据(SISD)多处理、单指令多数据(SIMD)多处理、多指令单数据(MISD)多处理、以及多指令多数据(MIMD)多处理。
在图1至图14中示出的执行这里关于图1至图14描述的操作的方法由如上所述的执行指令或软件的处理器或计算机来执行,以执行这里描述的操作。
用于控制处理器或计算机以实现硬件组件并执行如上所述的方法的指令或软件被写为计算机程序、代码段、指令或它们的任意组合,用于单独或共同指示或配置处理器或者计算机作为机器或专用计算机操作,以执行由硬件组件执行的操作和如上所述的方法。指令或软件包括被处理器或计算机直接执行的机器代码(诸如由编译器产生的机器代码)。在另一示例中,指令或软件包括被处理器或计算机使用解释器执行的高级代码。全面理解本公开的本领域普通技术程序员能够容易地基于附图中示出的框图和流程图以及说明书中的对应描述来编写指令或软件,这些框图和流程图以及说明书中的对应描述公开了用于执行由硬件组件执行的操作和如上所述的方法的算法。用于控制处理器或计算机以实现硬件组件并执行如上所述的方法的指令或软件、以及任何关联数据、数据文件和数据结构被记录、存储或固定在一个或多个非暂时性计算机可读存储介质中或介质上。非暂时性计算机可读存储介质的示例包括只读存储器(ROM)、随机存取存储器(RAM)、闪存、CD-ROM、CD-R、CD+R、CD-RW、CD+RW、DVD-ROM、DVD-R、DVD+R、DVD-RW、DVD+RW、DVD-RAM、BD-ROM、BD-R、BD-RLTH、BD-RE、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及本领域普通技术人员公知的任何装置,所述本领域普通技术人员公知的任何装置能够以非暂时性方式存储指令或软件以及任何关联数据、数据文件和数据结构,并能向处理器或计算机提供指令或软件以及任何关联数据、数据文件和数据结构,以使处理器或计算机能执行指令。在一个示例中,指令或软件以及任何关联数据、数据文件和数据结构被分布于联网的计算机系统上,以使指令和软件以及任何关联数据、数据文件和数据结构被处理器或计算机以分布方式存储、访问和执行。
虽然本公开包括具体示例,但是本领域普通技术人员将清楚,在不脱离权利要求及其等同物的精神和范围的情况下,可以对这些示例进行形式和细节上的各种改变。这里描述的示例被认为仅具有描述性意义,而不用于限制的目的。每个示例中的特征或方面的描述将被认为可适用于其他示例中的类似特征或方面。如果以不同的次序执行描述的技术和/或如果描述的系统、架构、装置或电路中的组件以不同的方式组合和/或被其他组件及其等同物替换或补充,则可得到合适的结果。因此,本公开的范围不是由具体实施方式限定,而是由权利要求及其等同物限定,并且权利要求及其等同物的范围内的所有变化将被解释为包括在本公开中。
Claims (20)
1.一种纹理处理单元,包括:
控制器,被配置为获取纹理坐标和与纹理坐标对应的纹理的每个通道的空间频率信息,并基于每个通道的空间频率信息确定纹理的每个通道的过滤控制信号;
纹理过滤器,被配置为根据每个通道的过滤控制信号执行纹理的每个相应通道的过滤。
2.如权利要求1所述的纹理处理单元,其中,控制器响应于包括在各个通道的空间频率信息中的各个通道的空间频率不同而针对各个通道独立地确定过滤控制信号。
3.如权利要求1所述的纹理处理单元,其中,控制器针对各个通道确定过滤控制信号,以使得对满足确定在通道中出现走样现象的预定条件的所述通道执行基于通道的空间频率的反走样过滤。
4.如权利要求1所述的纹理处理单元,其中,每个通道的空间频率信息响应于纹理产生而产生并被与纹理一起存储,
控制器从存储纹理的外部存储器获取每个相应通道的空间频率信息。
5.如权利要求1所述的纹理处理单元,其中,每个通道的空间频率信息响应于由包括纹理处理单元的图形处理单元执行纹理化而被实时确定,
控制器从图形处理单元获取每个各自的通道的空间频率信息。
6.如权利要求1所述的纹理处理单元,其中,控制器获取纹理的采样频率,基于每个通道的空间频率信息将具有最高空间频率的通道确定为参考通道,基于参考通道的空间频率和采样频率确定参考通道的过滤控制信号,将参考通道的空间频率与除参考通道外的其他通道的空间频率进行比较,并确定除参考通道外的其他通道的过滤控制信号。
7.如权利要求1所述的纹理处理单元,其中,控制器获取纹理的采样频率,将包括在每个通道的空间频率信息中的每个通道的空间频率与采样频率进行比较,并确定每个通道的过滤控制信号。
8.如权利要求1所述的纹理处理单元,其中,纹理过滤器基于每个各自通道的过滤控制信号独立地操作与每个通道对应的至少一个过滤器。
9.如权利要求1所述的纹理处理单元,其中,纹理过滤器包括包含与构造纹理的通道对应的反走样过滤器的第一过滤器和包含根据过滤模式执行过滤的过滤器的第二过滤器,并且根据每个通道的过滤控制信号针对每个通道来操作第一过滤器和第二过滤器。
10.如权利要求1所述的纹理处理单元,其中,每个通道的过滤控制信号包括用于反走样过滤的每个通道的控制信号,以及用于过滤模式的每个通道的控制信号。
11.如权利要求1所述的纹理处理单元,还包括被配置为存储纹理的纹理高速缓存。
12.一种纹理处理方法,包括:
获取纹理坐标和与纹理坐标对应的纹理的每个通道的空间频率信息;
基于每个通道的空间频率信息确定纹理的每个通道的过滤控制信号;
根据每个通道的过滤控制信号执行对纹理的每个相应通道的过滤。
13.如权利要求12所述的纹理处理方法,其中,确定每个通道的过滤控制信号的步骤包括:响应于包括在每个通道的空间频率信息中的每个通道的空间频率不同,针对每个通道独立地确定过滤控制信号。
14.如权利要求12所述的纹理处理方法,其中,确定每个通道的过滤控制信号的步骤包括:针对每个通道确定过滤控制信号,以使得对满足确定是否出现走样现象的预定条件的通道执行基于通道的空间频率的反走样过滤。
15.如权利要求12所述的纹理处理方法,其中,每个通道的空间频率信息响应于纹理产生而产生并被与纹理一起存储,
获取纹理坐标和每个通道的空间频率信息的步骤包括从存储纹理的外部存储器获取每个通道的空间频率信息。
16.如权利要求12所述的纹理处理方法,其中,每个通道的空间频率信息响应于在包括纹理处理单元的图形处理单元中执行纹理化而被实时确定,
获取纹理坐标和每个通道的空间频率信息的步骤包括从图形处理单元获取每个各自的通道的空间频率信息。
17.如权利要求12所述的纹理处理方法,其中,确定每个通道的过滤控制信号的步骤包括:
获取纹理的采样频率;
基于每个通道的空间频率信息将具有最高空间频率的通道确定为参考通道;
基于参考通道的空间频率和采样频率确定参考通道的过滤控制信号;
将参考通道的空间频率与除参考通道外的其他通道的空间频率进行比较,并确定除参考通道外的其他通道的过滤控制信号。
18.如权利要求12所述的纹理处理方法,其中,确定每个通道的过滤控制信号的步骤包括:
获取纹理的采样频率;
将包括在每个通道的空间频率信息中的每个通道的空间频率与采样频率进行比较,并确定每个各自的通道的过滤控制信号。
19.如权利要求12所述的纹理处理方法,其中,执行每个通道的过滤的步骤包括:根据每个各自的通道的过滤控制信号,针对每个通道操作包括与构造纹理的通道对应的反走样过滤器的第一过滤器和包括根据过滤模式执行过滤的过滤器的第二过滤器。
20.如权利要求12所述的纹理处理方法,其中,每个通道的过滤控制信号包括:用于反走样过滤的每个通道的控制信号,以及用于过滤模式的每个通道的控制信号。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2015-0142231 | 2015-10-12 | ||
KR1020150142231A KR102512521B1 (ko) | 2015-10-12 | 2015-10-12 | 텍스쳐 처리 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106570924A true CN106570924A (zh) | 2017-04-19 |
CN106570924B CN106570924B (zh) | 2021-06-29 |
Family
ID=57189785
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610881136.7A Active CN106570924B (zh) | 2015-10-12 | 2016-10-09 | 纹理处理方法和单元 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10134173B2 (zh) |
EP (1) | EP3156974B1 (zh) |
JP (1) | JP6931279B2 (zh) |
KR (1) | KR102512521B1 (zh) |
CN (1) | CN106570924B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10460513B2 (en) | 2016-09-22 | 2019-10-29 | Advanced Micro Devices, Inc. | Combined world-space pipeline shader stages |
KR20180038793A (ko) * | 2016-10-07 | 2018-04-17 | 삼성전자주식회사 | 영상 데이터 처리 방법 및 장치 |
US10657698B2 (en) * | 2017-06-22 | 2020-05-19 | Microsoft Technology Licensing, Llc | Texture value patch used in GPU-executed program sequence cross-compilation |
US11308648B2 (en) | 2020-09-23 | 2022-04-19 | Advanced Micro Devices, Inc. | Compressing texture data on a per-channel basis |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6453074B1 (en) * | 1997-03-31 | 2002-09-17 | Canon Kabushiki Kaisha | System for image decimation including selective filtering |
CN101004833A (zh) * | 2006-07-27 | 2007-07-25 | 威盛电子股份有限公司 | 用于纹理视讯处理的纹理引擎、图形处理器及方法 |
CN102428492A (zh) * | 2009-05-13 | 2012-04-25 | 皇家飞利浦电子股份有限公司 | 显示装置及其方法 |
CN102572499A (zh) * | 2010-12-07 | 2012-07-11 | 江南大学 | 基于小波变换多分辨率预测的无参考图像质量评价方法 |
GB2516682A (en) * | 2013-07-30 | 2015-02-04 | Samsung Electronics Co Ltd | Hierarchical memory for mip map |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5566284A (en) | 1993-12-22 | 1996-10-15 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method for mip-map generation using low-pass filtering based on resolution ratio |
EP0751486B1 (en) * | 1995-06-30 | 2003-10-08 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for rendering and mapping images |
US6690418B1 (en) * | 1995-12-26 | 2004-02-10 | Canon Kabushiki Kaisha | Image sensing apparatus image signal controller and method |
US6236405B1 (en) | 1996-07-01 | 2001-05-22 | S3 Graphics Co., Ltd. | System and method for mapping textures onto surfaces of computer-generated objects |
US6360022B1 (en) * | 1997-04-04 | 2002-03-19 | Sarnoff Corporation | Method and apparatus for assessing the visibility of differences between two signal sequences |
GB9807211D0 (en) * | 1998-04-03 | 1998-06-03 | Nds Ltd | Filtering of digital video signals |
US6466226B1 (en) * | 2000-01-10 | 2002-10-15 | Intel Corporation | Method and apparatus for pixel filtering using shared filter resource between overlay and texture mapping engines |
US7110012B2 (en) * | 2000-06-12 | 2006-09-19 | Sharp Laboratories Of America, Inc. | System for improving display resolution |
JP4055927B2 (ja) * | 2000-08-25 | 2008-03-05 | シャープ株式会社 | 画像処理装置およびデジタルカメラ |
JP3745948B2 (ja) * | 2000-08-25 | 2006-02-15 | シャープ株式会社 | 画像処理装置およびデジタルカメラ |
JP2002112051A (ja) | 2000-09-27 | 2002-04-12 | Fuji Xerox Co Ltd | 画像処理方法および装置 |
US20020080143A1 (en) * | 2000-11-08 | 2002-06-27 | Morgan David L. | Rendering non-interactive three-dimensional content |
JP4641675B2 (ja) | 2001-07-18 | 2011-03-02 | 三洋電機株式会社 | 画像信号処理装置 |
US6778188B2 (en) * | 2002-02-28 | 2004-08-17 | Sun Microsystems, Inc. | Reconfigurable hardware filter for texture mapping and image processing |
US7649539B2 (en) * | 2004-03-10 | 2010-01-19 | Microsoft Corporation | Image formats for video capture, processing and display |
WO2005117453A1 (ja) * | 2004-05-26 | 2005-12-08 | Acutelogic Corporation | 撮像装置 |
KR100699831B1 (ko) * | 2004-12-16 | 2007-03-27 | 삼성전자주식회사 | 베이어 패턴의 컬러 신호를 보간하는 방법 및 보간기 |
US7599975B1 (en) * | 2005-03-04 | 2009-10-06 | Nvidia Corporation | Decompression of compressed 16 bit data |
JP5151075B2 (ja) * | 2005-06-21 | 2013-02-27 | ソニー株式会社 | 画像処理装置及び画像処理方法、撮像装置、並びにコンピュータ・プログラム |
US8934713B2 (en) | 2007-06-25 | 2015-01-13 | Intel Corporation | Image processing device, image processing method, program, and imaging device |
WO2009001956A1 (ja) | 2007-06-25 | 2008-12-31 | Acutelogic Corporation | 画像処理装置、画像処理方法、プログラムおよび撮像装置 |
CN101999232A (zh) * | 2008-04-04 | 2011-03-30 | 富士胶片株式会社 | 图像处理系统、图像处理方法、以及计算机可读介质 |
JP5269718B2 (ja) * | 2009-08-18 | 2013-08-21 | オリンパス株式会社 | 画像処理装置、画像処理プログラムおよび画像処理方法 |
JP5394305B2 (ja) * | 2010-04-14 | 2014-01-22 | 株式会社メガチップス | 画像処理装置 |
JP2012004787A (ja) * | 2010-06-16 | 2012-01-05 | Sony Corp | 画像処理装置、および画像処理方法、並びにプログラム |
JP4931266B2 (ja) * | 2010-08-27 | 2012-05-16 | キヤノン株式会社 | 画像処理方法、画像処理装置および画像処理プログラム |
JPWO2013005366A1 (ja) | 2011-07-05 | 2015-02-23 | パナソニック株式会社 | アンチエイリアス画像生成装置およびアンチエイリアス画像生成方法 |
KR101926570B1 (ko) | 2011-09-14 | 2018-12-10 | 삼성전자주식회사 | 포스트 프레그먼트 쉐이더를 사용하는 그래픽 처리 방법 및 장치 |
US9064299B2 (en) * | 2012-08-17 | 2015-06-23 | Karl P. Sims | Filters and functions using exponential decay |
-
2015
- 2015-10-12 KR KR1020150142231A patent/KR102512521B1/ko active IP Right Grant
-
2016
- 2016-05-04 US US15/146,302 patent/US10134173B2/en active Active
- 2016-10-07 JP JP2016198974A patent/JP6931279B2/ja active Active
- 2016-10-09 CN CN201610881136.7A patent/CN106570924B/zh active Active
- 2016-10-12 EP EP16193551.5A patent/EP3156974B1/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6453074B1 (en) * | 1997-03-31 | 2002-09-17 | Canon Kabushiki Kaisha | System for image decimation including selective filtering |
CN101004833A (zh) * | 2006-07-27 | 2007-07-25 | 威盛电子股份有限公司 | 用于纹理视讯处理的纹理引擎、图形处理器及方法 |
CN102428492A (zh) * | 2009-05-13 | 2012-04-25 | 皇家飞利浦电子股份有限公司 | 显示装置及其方法 |
CN102572499A (zh) * | 2010-12-07 | 2012-07-11 | 江南大学 | 基于小波变换多分辨率预测的无参考图像质量评价方法 |
GB2516682A (en) * | 2013-07-30 | 2015-02-04 | Samsung Electronics Co Ltd | Hierarchical memory for mip map |
Also Published As
Publication number | Publication date |
---|---|
US20170103566A1 (en) | 2017-04-13 |
EP3156974A1 (en) | 2017-04-19 |
KR102512521B1 (ko) | 2023-03-21 |
CN106570924B (zh) | 2021-06-29 |
US10134173B2 (en) | 2018-11-20 |
EP3156974B1 (en) | 2020-05-06 |
KR20170042969A (ko) | 2017-04-20 |
JP2017076388A (ja) | 2017-04-20 |
JP6931279B2 (ja) | 2021-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230360306A1 (en) | Graphics processing units and methods for controlling rendering complexity using cost indications for sets of tiles of a rendering space | |
US10388033B2 (en) | Texture processing apparatus and method | |
US10152765B2 (en) | Texture processing method and unit | |
EP2973423B1 (en) | System and method for display of a repeating texture stored in a texture atlas | |
US9569811B2 (en) | Rendering graphics to overlapping bins | |
CN107967707B (zh) | 用于处理图像的设备和方法 | |
CN106570924A (zh) | 纹理处理方法和单元 | |
US10169839B2 (en) | Method and apparatus for executing graphics pipeline | |
US20170084055A1 (en) | Method and apparatus for processing compressed texture | |
US10217259B2 (en) | Method of and apparatus for graphics processing | |
KR102264163B1 (ko) | 텍스쳐를 처리하는 방법 및 장치 | |
US10089782B2 (en) | Generating polygon vertices using surface relief information | |
US9898838B2 (en) | Graphics processing apparatus and method for determining level of detail (LOD) for texturing in graphics pipeline | |
JP6944304B2 (ja) | テクスチャ処理方法及びその装置 | |
Lee et al. | Image-based Surfel Reconstruction by LDI Plane Sweeping |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TG01 | Patent term adjustment |