CN101802872B - 深度缓冲器压缩 - Google Patents
深度缓冲器压缩 Download PDFInfo
- Publication number
- CN101802872B CN101802872B CN200880107297.4A CN200880107297A CN101802872B CN 101802872 B CN101802872 B CN 101802872B CN 200880107297 A CN200880107297 A CN 200880107297A CN 101802872 B CN101802872 B CN 101802872B
- Authority
- CN
- China
- Prior art keywords
- compact model
- predetermined number
- compression
- pieces
- sub
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/40—Hidden part removal
- G06T15/405—Hidden part removal using Z-buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/15—Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Discrete Mathematics (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
用于选择要在深度缓冲器(20)中应用的压缩模式的装置、计算机可读媒体和方法。方法包括获得对应于深度缓冲器(20)的片(30)的值;从第一多个压缩模式选择第一压缩模式(34);压缩片(30)的值,基于第一模式(34)将压缩的值写入第一块,并且使用预设数量的主要比特(34)存储与第一模式(34)和第一块的压缩大小中的至少一项有关的信息;从第二多个压缩模式选择次要压缩模式(32)的集合;确定组成片(30)的多个子片(28),压缩子片的值,基于次要模式(32)的集合将压缩的值写入第二块,并且使用相同的预设数量的主要比特(34)存储与次要模式(32)的集合和第二块的压缩大小中的至少一项有关的信息;比较片(30)的压缩大小和子片(28)的压缩大小;基于比较的结果来选取第一模式(34)或次要模式(32)的集合和对应的片大小;以及将选定的压缩的片或子片存储到深度缓冲器(20)中并将与所选取的第一模式(34)或次要压缩模式(32)的集合或对应的大小有关的信息写入预设数量的主要比特(34)。
Description
相关申请
本申请涉及并要求来自2007年9月12日提交的名称为“BlockiBlockImprovedDepthBufferCompression”的、对于P.Wennersten的美国临时专利申请(序列号60/971692)的优先权,该申请的完整公开通过引用结合于此。
技术领域
本发明主要涉及选择用于压缩数据的压缩模式,并且更具体地说,涉及用于实现深度缓冲器图像数据的基于多片(multi-tile)的压缩的方法和装置。
背景技术
对于在移动通信装置上处理三维图形的需求正在增加。三维图形的实时呈现具有多个有吸引力的应用,如视频游戏、人机接口、消息传递和移动电子商务(m-commerce)。通信装置的用户更喜欢显现他们与之交互的对象,并且因此三维图形变成了对于此类通信装置期望的特征。然而,三维呈现是计算上昂贵的任务,因为它要求高级的处理和大量使用存储器。因此,专用硬件常常是必需的,以达到用于以期望的速度和质量来呈现三维图形的充分性能。通信装置、特别是诸如移动电话、个人数字助理、视频和静态摄像机等移动通信装置已知在硬件能力(即,处理器功率和存储空间)方面受到限制。另外,存在使通信装置小型化的趋势,这进一步损失了对于三维呈现所必需的高级处理和存储器要求。对于这些通信装置、特别是对于移动电话和游戏控制台的主要瓶颈之一是存储器带宽。
用于减少存储器带宽使用的一种技术是深度缓冲器压缩。深度缓冲器压缩与在硬件、软件或其组合中执行的三维(3D)图形中图像深度坐标的管理有关。深度缓冲器是对于可视性问题的解决方案之一,其中可视性问题是决定被呈现场景的哪些要素可见以及哪些要素隐藏的问题。深度缓冲也已知为Z缓冲。当呈现对象时,在缓冲器(深度缓冲器)中存储生成的像素的深度(z坐标)。此缓冲器通常布置为二维阵列(x-y),其中一个要素对应于每个屏幕像素。如果场景的另一对象以后在相同像素中呈现,则新对象的深度与z缓冲器中存储的深度进行比较。新对象仅在该新对象更靠近(即,该像素中其深度小于存储的值)时才对于该像素被呈现,并且其深度值才写到z缓冲器。最后,深度缓冲器允许通常深度感知的正确再现:近的对象隐藏更远的对象。深度缓冲器可在芯片上或在例如外部存储器的芯片外位置存储。
更详细地说,3D图像的呈现基于以非排序顺序绘出的图元,例如三角形。存在以下需求:防止更后面的三角形绘在它们前面已更早绘出的三角形的顶部,并且这是引入深度缓冲器的原因。深度缓冲器为每个像素保存用于该特定像素的深度(到眼睛的距离)。在写入新像素前,先从深度缓冲器读取对应的深度。仅在新深度小于深度缓冲器中存储的以前写入的深度时,才将新像素写入图像。如果图像被更新,则新深度值写入深度缓冲器。深度值的读取和写入生成许多存储器存取。由于深度缓冲器常常太大以致不适合在芯片上,因此,这些存储器存取将是外部(芯片外)存取。此类存储器存取常常缓慢,这意味着深度缓冲器存取能减慢装置整体的性能。芯片外存储器存取在能耗方面也是代价高的,这意味着深度缓冲器存取还具有耗尽手持式装置的电池电能的可能。
大多数图形系统将深度缓冲器划分成片,而无论它们是否使用深度缓冲器压缩。因此,常常在每片的基础上执行图元的光栅化,这意味着处理一个片中的所有像素之后才处理另一片中的任何像素。这意味着使用快速“突发型”存储器存取(一种快速存储器存取)或如本领域技术人员将明白的其它存取能立即读入对于某个片的所有深度值。在片的处理期间,其深度值一般存储在芯片上高速缓存中,在那里能存取它们而无芯片外存取的惩罚。在片已处理后,能再次使用快速突发存储器存取将深度值从高速缓存写回外部存储器。然而,即使存储器存取现在由于突发而更快,它们仍可能太慢而无法达到充分的性能。还要注意的是,分片和突发不降低GPU与外部存储器之间通过总线传送的数据量。
深度缓冲器压缩通过在将深度缓冲器片中的数据写入外部存储器前压缩所述数据而解决此问题。信息随后通过总线以压缩形式从芯片发送,并且也以压缩形式存储在外部存储器中。在以后阶段再次需要片中的深度值时,从外部存储器中读取块的压缩版本,并通过总线将其发送到芯片以用于处理。在此之后,可将数据解压缩之后以未压缩的形式存储在高速缓存中,并且随后能在芯片中进行处理。处理此数据后,在将块从高速缓存发送到外部存储器之前在芯片中再次压缩块。由于解压缩和压缩的此循环可对特定片发生几次,因此期望压缩是无损失,即,非破坏性的。对于此的不利方面是不可能完全保证用于无损存储数据的任何压缩。因此,必需还具有以非压缩形式来存储片的能力。
呈现三维图形时另一期望特征是对需要的片的随机存取。解决此问题的一种方式是为每个片保留足够大数量的比特,以便片能够非压缩存储。在此情况下,如果特定片能压缩到原大小的50%,则保留存储的仅一半用于该特定片。芯片上存储的标志可用于指示深度缓冲器中片是压缩的还是未压缩的。备选的是,此标志可存储在外部存储器中但在芯片上缓存。
上述特征和技术相当于数据扩展而不是压缩,因为相同数量的比特保留用于压缩模式和非压缩模式,并且另外,对于标志必需更多比特。然而,在外部存储器与芯片上高速缓存之间传输片时,能使用更小的压缩的大小。因此,虽然存储器存储未减少,但存储器带宽使用却减少了。
过去,许多方法已用于深度缓冲器压缩,包括平面编码和深度偏移编码。第一种技术假设片完全由一个或两个三角形覆盖。由于源于相同三角形的深度值将是共面的,因此,此类深度值能有效地编码为平面。对于此技术工作的情况下的片,高度压缩是可能的,但并非所有片能以此方式压缩。另一种方法是深度偏移压缩,该压缩将一个或多个基值编码,并且存储与这些值的每像素偏移。此方法实现的压缩率不如平面编码的那些压缩率,但能压缩更多的片。这两种方法在J.Hasselgren和T.Akenine-的“EfficientDepthBufferCompression”(InProc.GraphicsHardware(2006),103-110页)中更详细描述,其全部内容由此通过引用结合于本文中。
这些压缩方案适用于4x4深度值的片,特别是在使用的架构允许组合平面编码和深度偏移时,因此,对大多数片产生一定的压缩,并且对一些片产生高压缩。此方法的问题在于对于更大的片大小,如8x8深度值,平均压缩率降低。此降低未顾及更大的片大小应允许空间冗余的更佳利用的实际情况,并且实际上,8x8平面编码方法为它们能压缩的块实现更佳的压缩率。对于性能降低的一个原因是所做的简单平面假设:8x8片很少由单个三角形覆盖。适用于多个三角形的更复杂方法可能代价太高而无法实现。换而言之,设计成有效压缩4x4片的架构在压缩8x8片时不是同样有效。另外,片大小影响远多于仅深度缓冲器压缩,因此,这不仅是选择导致最佳压缩率的片大小的问题。
因此,将期望提供用于控制深度缓冲器的压缩、避免上述问题和缺点的装置、系统和方法。
发明内容
根据一示范实施例,存在一种用于选择要在深度缓冲器中应用的压缩模式的方法。该方法包括获得对应于深度缓冲器的片的值;从第一多个压缩模式选择第一压缩模式;压缩片的值,基于第一模式将压缩的值写入第一块,并且使用预设数量的主要比特来存储与第一模式和第一块的压缩大小中的至少一项有关的信息;从第二多个压缩模式选择次要压缩模式的集合;确定组成片的多个子片,压缩子片的值,基于次要压缩模式的集合将压缩的值写入第二块,并且使用相同的预设数量的主要比特来存储与次要压缩模式的集合和第二块的压缩大小中的至少一项有关的信息;比较片的压缩大小和子片的压缩大小;基于比较的结果来选取第一模式或次要模式的集合和对应的片大小;以及将所选择的压缩的片或子片存储到深度缓冲器中并将与所选取的第一模式或次要压缩模式的集合或对应的大小有关的信息写入预设数量的主要比特。
根据另一示范实施例,存在一种用于选择将在深度缓冲器中应用的压缩模式的装置。该装置包括配置成获得对应于深度缓冲器的片的值的输入端和处理器。处理器配置成:从第一多个压缩模式选择第一压缩模式,压缩片的值,基于第一模式将压缩的值写入第一块,并且将预设数量的主要比特用于存储与第一模式和第一块的压缩大小中的至少一项有关的信息,从第二多个压缩模式选择次要压缩模式的集合,确定组成片的多个子片,基于次要压缩模式的集合将子片的压缩的值压缩写入第二块,并且将相同的预设数量的主要比特用于存储与次要压缩模式的集合和第二块的压缩大小中的至少一项有关的信息,比较片的压缩大小和子片的压缩大小,以及基于比较的结果来选取第一模式或次要模式的集合和对应的片大小。该装置还包括深度缓冲器,该缓冲器配置成存储与所选取的第一模式或次要压缩模式的集合或对应的片大小有关的预设数量的主要比特。
根据还有的另一示范实施例,存在一种存储计算机可执行指令的计算机可读媒体,其中,所述指令在由处理器执行时促使处理器选择将在深度缓冲器中应用的压缩模式。所述指令包括:获得对应于深度缓冲器的片的值,从第一多个压缩模式选择第一压缩模式,压缩片的值,基于第一集合将压缩的值写入第一块,并且将预设数量的主要比特用于存储与第一模式和第一块的压缩大小中的至少一项有关的信息,从第二多个压缩模式选择次要压缩模式的集合,确定组成片的多个子片,压缩子片的值,基于次要压缩模式的集合将压缩的值写入第二块,并且将相同的预设数量的主要比特用于存储与次要压缩模式的集合和第二块的压缩大小中的至少一项有关的信息,比较片的压缩大小和子片的压缩大小,基于比较的结果来选取第一模式或次要模式的集合和对应的片大小,以及将所选择的压缩的片或子片存储到深度缓冲器中并将与所选取的第一模式或次要压缩模式的集合或对应的大小有关的信息写入当前数量的主要比特。
附图说明
结合在说明书中并构成其一部分的附图示出一个或多个实施例,并与描述一起解释这些实施例。在图中:
图1是根据一示范实施例的选择压缩模式的装置的示意图;
图2是根据一示范实施例的示意图,其示出片、子片和用于表示应用的压缩模式的预设数量的比特;
图3是示出当前数量的比特如何用于片和子片的示意图;
图4是根据一示范实施例的流程图,其示出用于选择压缩模式的方法的步骤;
图5是根据另一示范实施例的流程图,其示出用于选择压缩模式的方法的步骤;
图6是根据一示范实施例的图,其示出各种压缩技术的结果;以及
图7是根据仍有的另一示范实施例的流程图,其示出用于选择压缩模式的方法的步骤。
具体实施方式
示范实施例的以下描述参照附图。不同图形中的相同引用数字标识相同或类似的要素。以下详细描述不限制本发明。相反,本发明的范围由随附权利要求来定义。为了简明,相关于4x4和8x8片来论述以下实施例。然而,接下来论述的实施例不限于这两个片大小,而是可应用到本领域技术人员将认识到的其它片大小。在此方面,还要注意的是,选定片不必是方形的,它可具有不同形状。因此,深度缓冲器可保存有关图像的信息,并且深度缓冲器可以显示区域来划分。每个显示区域可以显示子区域来划分。用于显示区域或显示子区域的单元是显示块。在一个示范实施例中,显示区域对应于8x8片,显示子区域对应于4x4片,并且显示块可以是像素。
贯穿本说明书对“一个实施例”或“一实施例”的引用指结合一实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在贯穿本说明书的各个位置中出现的短语“在一个实施例”或“在一实施例中”不一定全部指相同的实施例。此外,特定的特征、结构或特性可在一个或多个实施例中以任何适合的方式来组合。
如图1所示,根据一示范实施例,通信装置10包括经总线16连接到存储器14的处理器12。处理器配置成执行与压缩和解压缩视频数据相关联的各种功能。处理器12可包括用于并行处理的一个或多个处理器,并且还可包括用于芯片上高速缓存的存储器(未示出)。存储器14配置成存储处理器12要求的或产生的数据和各种指令。深度缓冲器20可以是存储器14的部分,并且配置用于存储与要在显示器上表示的每个像素的深度相关联的数据。图形处理器单元(GPU)18可提供用于呈现三维图形。图形处理器18可经专用总线19直接从深度缓冲器20读取数据。通信装置10可包括输入/输出接口22、收发器24或用于与其它通信装置或网络通信的其它连接端口。通信可通过有线或无线接口。通信装置可包括在其上呈现三维图形的显示器26。在一备选实施例中,深度缓冲器可在另一存储器(未示出)中存储,该存储器可不连接到总线16。相反,另一总线(未示出)可连接此存储器与GPU。显示器26也可连接到此备选总线而不是总线16。
根据一示范实施例,GPU尝试将8x8片作为整体来编码,并且如果该尝试失败或者为该片使用另一大小更经济,则处理器将8x8片分成四个4x4片,并且单独压缩这些4x4片。为了清晰,要理解在此描述中nxn片描述在nxn片中存在n2数量的显示块(例如,像素),而不是图像缓冲器包括n2个片。通过为每个子片使用多个比特,用于每个4x4子片的压缩的类型可在芯片上存储或缓存。不很经常发生的用于4x4子片的压缩的组合可被丢弃,并且可用的比特组合可用于指示8x8压缩方案。组合的此数量取决于实现。在一个示范实施例中,丢弃的组合的数量是二。此技术导致压缩率优于纯4x4方案将实现的压缩率,并且也优于纯8x8方案将实现的压缩率。根据另一示范实施例,压缩8x8片,随后,无论压缩的输出如何,将8x8片分成四个4x4片,压缩对应的4x4片,并且在比较8x8压缩和4x4压缩并决定哪种压缩更有效以后选择最终的压缩。此外,4x4片和8x8片的编码可同时或以任何期望顺序来执行。在另一示范实施例中,编程为使用深度缓冲器压缩的装置经硬连线以接收一种类型的片(例如,4x4片)作为输入。因此,此预编程的装置可不处理8x8片。然而,预编程为处理8x8片的装置可配置成处理4x4片。换而言之,处理器处理的片的类型取决于预编程的输入的大小,并且处理器可处理预编程片的子片,而不可处理大于预编程片的片。
压缩仅4x4片或仅8x8片的方法一般使用每片两个比特来指定使用的压缩。此数量的比特允许四种不同的模式,例如,00、01、10和11。模式之一对应于未压缩模式,该模式用于实现无损压缩。未压缩模式指示对相应的片尚未应用压缩。在此方面,图2示出四个片28,每个具有nxn大小,并且每个片具有对应的两个比特单元A、B、C或D。这两个比特单元的值在图2中示为是不同的,即,00、01、10和11。基于这些组合,8比特值用于指定用于四个nxn片中每个片的压缩,例如,基本值00、01、10和11的任何组合。几个此类示例是11、11、11、01或01、11、10、10。
模式中的另一模式一般保留用于清除的片,这允许通过仅设置所有这些2比特标志值为预定值而不是重写缓冲器中的所有值来清除整个深度缓冲器。这样,能够通过仅存取可在芯片上存储的标志来清除整个深度缓冲器,而无需执行对外部存储器的存取。未压缩模式和清除的片模式的此选择留下用于指示深度缓冲器压缩的另外两个模式。根据一示范实施例,剩余的两个模式可以是上述“EfficientDepthBufferCompression”文章中公开的平面编码方案和深度偏移方案。根据另一示范实施例,可为深度缓冲器压缩使用其它模式。
在一个示范实施例中,论述了8x8片的编码。按每个8x8片使用八个主要比特(分成出自图2的两比特矢量A、B、C和D),由此使芯片上总存储器使用达到与用于标准4x4方案的相同的水平。为了论述的简明,芯片上存储的比特称为主要比特,而芯片与外部存储器之间传送的块中存储的比特称为次要比特。块还可包括有关图像数据的压缩数据。8x8片可分成四个4x4子片,并且主要的八个比特理解为两个比特的四个集(A、B、C和D),每个集指定用于8x8片的一个4x4子片的压缩。指示片的压缩的数据现在包括在四个单独的部分A到D中,并且每个部分由与4x4情况下使用的压缩器和解压缩器相同的压缩器和解压缩器来分别处理。
如果(1)选择4x4压缩或者(2)选择8x8压缩,则四个集A、B、C和D需要描述组成8x8片的四个4x4子片的压缩。然而,4x4压缩要求A到D四个集的所有可能组合,即,2k2k2k2k个组合,其中,k在此示范实施例中是2。因此,在使用8x8压缩时,未剩下A到D四个集的剩余组合。根据此示范实施例,此问题通过允许预定数量的主要八比特值表示8x8压缩算法而不是4x4算法的组合来解决。预定数量至少是1,并且对于此特定示例更优选是2。因此,2k2k2k2k个可能组合分成用于指示4x4压缩的2k2k2k2k-2个组合和用于指示8x8压缩的2个组合。在另一示范实施例中,如果缓冲器分成具有不同数量的可用压缩模式的片,则组合的数量可以是2k12k22k32k4,其中,k1到k4是整数。在此示范实施例中,此数量的组合存储在主要比特中。根据另一示范实施例,片的大小大于8x8,并因而可能需要更多的压缩模式。因此,组合的数量可以是2k12k22k3...2kn,其中,n“i”是大于2的整数。
图3中示出的示例用于说明此方法。图3中示出的数量是说明性的,并且并非旨在限制本发明的实施例。假设8x8片30(即,具有64个像素的片)可编码为四个4x4片28或单个8x8片30。如果该片使用4x4片来编码,则编码的一个可能组合32是11、01、01和10。假设此编码组合32确定为在压缩实际片时最少发生的组合。由于在片中的像素之间存在相关,因此,某些组合的频率小于其它组合的频率,并且因而在执行编码时并非所有组合均等出现。最少发生的那些组合可不用于4x4子片,而只用于指示应用到8x8片的压缩。更具体地说,在图3中示出的示例的上下文中,不允许组合32表示4x4压缩,而是表示8x8压缩。这意味着在压缩器确定四个4x4片如组合32所指示来压缩时,该压缩不被允许,而是如组合36中所示将一个子片(例如对应于D)更改为未压缩(0,0)。在足够的存储器(芯片上或芯片的外部)指派用于以未压缩形式存储对应于图像的数据时,此操作是可能的。
根据此示范实施例,不允许4x4片的预定组合,并且在发生时,它们被修改,例如,将一个子片更改为未压缩。禁止的组合32用作用于指示单个8x8片的压缩模式的组合34。以此方式,如果压缩器和解压缩器注意到不允许用于4x4压缩但允许用于8x8压缩的预定组合,则4x4和8x8两种片的压缩能通过相同的主要8比特组合32来实现而无需添加更多的主要比特。对于4x4压缩的禁止组合32的数量基于8x8压缩模式的期望数量来确定,例如二。因此,4x4和8x8压缩均可使用相同的主要8比特集来实现。
上述方法可通过实现8x8和4x4两种算法而在硬件中实现。另外,该方法要求比现有8x8压缩方案更多的芯片上存储器,这是因为8x8压缩方案只需要两个主要比特来指示两种压缩模式,而此方法使用8个主要比特。如果主要比特是昂贵的,即,芯片上空间有限,则主要比特的数量增加到8可能是个问题。这能够通过让模式不仅依赖标志比特(主要比特)而且依赖芯片与外部存储器之间传递的实际块(次要比特)中存储的信息而做出部分补救。
根据另一示范实施例,论述了使用更少主要比特的用于在深度缓冲器中压缩和解压缩图像数据的方法。在此示范实施例中,主要比特的数量相对于前一实施例减少了,并且次要比特用于说明减少数量的主要比特。为了最好地理解此实施例,提供了一个特殊示例。然而,此特殊示例并非旨在限制本发明,而只是要阐明本发明。压缩块的大小可始终由例如128除尽。如果对于像素24个比特是必需的,并且在片中有8乘8个像素,则未压缩片可包括例如24乘8乘8=1536个比特。因此,如果压缩片的大小可由128除尽,则可能的大小将为0、128、256、384、...、1536个比特。因此,对于压缩8x8片将有13个可能大小,并且由于四比特值可保存16个不同值,因此,四比特值可适合于描述这13个大小。通过将例如四比特存储为芯片上的主要四比特值以指定压缩片的大小,存储器的正确量能通过总线来传递。
然而,为了保持主要比特在减少的水平(因为它们对于在芯片上存储是昂贵的)并且能够解压缩片,指示使用了哪些压缩算法的8比特信息(前面实施例中的主要比特以及此实施例中的次要比特)需要被存储并与压缩数据一起传递而不是在芯片上存储它们。这意味着实际块(即,包含压缩的图像数据的信息)大小是8、136、264、392、...、1542个比特,即,额外的8个比特添加到每个块。然而,对于最小块大小,所有子块必须清除,并且因此用于此大小的比特组合是已知的。因此,无需在块中存储该信息。此外,对于最大块大小,所有子块是“未压缩的”,因此,在此情况下,也无需将任何额外的比特与压缩块一起存储。因此,13个大小可以是0、136、264、392、520、648、776、904、1032、1160、1288、1416及1536个比特。
根据此示范实施例,主要比特(不限于四)在芯片上存储,并且它们指示芯片与外部存储器之间交换的块的大小,并且次要比特(不限于八)在芯片外存储,即,在例如外部存储器中存储,并且它们包含指示用于子片的压缩模式的组合或用于整个片的单个压缩模式所需的任何额外信息。
此外,在64比特总线上,取192(64x3)比特查可如取136比特一样容易得到。在此类情况下,大小可转而选择为0、192、320、448、576、704、832、960、1088、1216、1344、1472、1536,并且56个额外比特能在4x4压缩模式之间划分,例如,每个模式中使用14个额外比特。由于主要四个标志比特能表示16个不同模式,并且只使用13个模式,因此,在一备选实施例中,剩余模式的一个或多个能表示8x8模式。这样,在4x4模式中无需禁止组合。在仍有的一备选实施例中,主要标志比特能用于在不同大小的一些模式之间进行区分,但确定确切模式有时需要片中存储的其它比特。例如,主要标志比特能指示大小为768的两种类型的片。对于类型之一,无需额外的比特便可知道它是什么模式。对于另一类型,块中存储的一个额外比特可在两个不同模式之间进行区分。
根据一示范实施例,4x4压缩模式可以是(1)未压缩的、(2)清除的片、(3)Hasselgren的双平面模式,以及(4)也在Hasselgren中描述的16比特深度偏移模式。
在一备选实施例中,4x4压缩模式可以是(1)未压缩的、(2)Hasselgren的双平面模式和(3)也在Hasselgren中描述的16比特深度偏移模式。以此方式,存在4x4压缩的3x3x3x3=81个组合,并且7个主要标志比特将足以描述这些压缩模式。注意,在此实施例中,不能清除4x4片,因此,添加8x8清除模式可以是有利的。还要注意的是,在此实施例中,在用完这七个标志比特提供的可能的128个组合之前表示几个8x8模式是可能的。
根据一示范实施例,将对应于用于四个4x4子片的最少使用的压缩模式的两个八比特值保留用于一个8x8片的两个压缩模式。在此示范实施例中,两个八比特值是对应于未压缩的两个子片、清除的一个子片和通过深度偏移来压缩的一个子片的那些值。这两个八位比特值转而用于指示单个8x8片已压缩,例如,通过Hasselgren的单平面或双平面模式来压缩。需要划分成4x4子片并将由那些禁止值之一来表示的片可使将通过深度偏移来压缩的子片转而保持未压缩。
根据图4中所示的一示范实施例,在必须压缩8x8片时,在步骤40中应用8x8压缩。在步骤42中评估压缩。如果压缩成功,则8x8编码在步骤44中执行,并且过程结束。如果压缩失败(即,未实现使用的比特的数量减少)或者由于其它原因,压缩未令人满意,则在步骤46中将8x8片分成四个4x4片,并且在步骤48中应用4x4压缩。在此步骤后,用于初始片的压缩过程结束。
根据图5中所示的另一实施例,使用8x8模式在步骤50中压缩初始8x8片。随后,在步骤52中将片分成四个4x4片,并且在步骤54中使用4x4模式压缩每个片。步骤50和54的顺序可颠倒,或者步骤50和54可并行执行。在步骤56中比较两个压缩的效率,并且在步骤58中基于更有效的压缩来选择实际压缩。
在此方面,图6示出此示范方法实现优于纯4x4压缩和纯8x8压缩的压缩。图6中所示测试在简单的测试场景上做出,并且测试在改变的分辨率做出。改变分辨率相当于更改每片的三角形的平均量,并且应类似于更改正在呈现的场景的复杂度。图6的结果显示无论场景复杂度如何,该新颖的技术优于现有技术大约15-30%。
根据图7中所示的一示范实施例,存在一种用于选择要在深度缓冲器中应用的压缩模式的方法。该方法包括获得对应于深度缓冲器的片的值的步骤702,从第一多个压缩模式选择第一压缩模式的步骤702,压缩片的值、基于第一模式将压缩的值写入第一块、并且使用预设数量的主要比特来存储与第一模式和第一块的压缩大小中的至少一项有关的信息的步骤704,从第二多个压缩模式选择次要压缩模式的集合的步骤706,确定组成片的多个子片,压缩子片的值、基于次要压缩模式的集合将压缩的值写入第二块、并且使用相同预设数量的主要比特来存储与次要压缩模式的集合和第二块的压缩大小中的至少一项有关的信息的步骤708,比较片的压缩大小和子片的压缩大小的步骤710,基于比较的结果来选取第一模式或次要模式的集合和对应的片大小的步骤712,以及将选定的压缩片或子片存储到深度缓冲器中并将与所选取的第一模式或次要压缩模式的集合或对应大小有关的信息写入预设数量的主要比特的步骤714。
因此,至少一种上述方法通过压缩交换的数据而减少了带宽使用,这使得不但降低了存储器业务作为性能瓶颈的风险,而且减少了装置中的功耗和热生成,这对于移动装置和其它电池供电装置特别有用。
所公开的示范实施例提供用于选择要在深度缓冲器或类似装置中应用的压缩模式的装置、方法和计算机程序产品。应理解,此描述并非旨在限制本发明。相反,示范实施例旨在涵盖如随附权利要求定义的本发明的精神和范围中包括的备选、修改和等效物。此外,在示范实施例的详细描述中,陈述了许多特定的细节以便提供所要求权利的发明的全面理解。然而,本领域的技术人员将理解,在无此类特定细节的情况下可实践各种实施例。
正如本领域的技术人员还将理解的,示范实施例可在无线通信装置、计算机系统中实施为方法,或者在计算机程序产品中实施。示范实施例可备选地在另一电池供电的装置中实施,如手持式游戏控制台,或者在网络供电的装置中实施,如PC或固定游戏控制台。因此,示范实施例可采用完全硬件实施例或组合硬件和软件方面的实施例的形式。此外,示范实施例可采用计算机可读存储媒体上存储的计算机程序产品的形式,所述媒体具有在该媒体中实施的计算机可读指令。可利用任何合适的计算机可读媒体,包括硬盘、CD-ROM、数字多功能光盘(DVD)、光存储装置或磁存储装置(如软盘或磁带)。计算机可读媒体的其它非限制性示例包括闪存类型的存储器或其它已知存储器。
示范实施例还可在专用集成电路(ASIC)或数字信号处理器中实现。合适的处理器包括(通过示例的方式)通用处理器、专用处理器、常规处理器、数字信号处理器(DSP)、多个微处理器、与DSP核相关联的一个或多个微处理器、控制器、微控制器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)电路、任何其它类型的集成电路(IC)和/或状态机。与软件相关联的处理器可用于实现在用户终端、基站或任何主机中使用的射频收发器。用户终端可与硬件和/或软件中实现的模块结合使用,如摄像机、视频摄像机模块、视频电话、扬声器电话、振动装置、扬声器、麦克风、电视收发器、免提耳机、键盘、蓝牙模块、调频(FM)无线电单元、液晶显示器(LCD)显示器单元、有机发光二极管(OLED)显示器单元、数字音乐播放器、媒体播放器、视频游戏播放器模块、因特网浏览器和/或任何无线局域网(WLAN)模块。
虽然提出的示范实施例的特征和要素在实施例中以特定组合来描述,但每个特征或要素可单独使用而无需实施例的其它特征和要素,或者与或不与本文公开的其它特征和要素进行各种组合来使用。本申请中提供的方法或流程图可在计算机可读媒体中有形实施的计算机程序、软件或固件中实现以用于由通用计算机或处理器执行。
Claims (30)
1.一种用于选择将在深度缓冲器(20)中应用的压缩模式的方法,所述方法包括:
获得对应于所述深度缓冲器(20)的片(30)的值;
从第一多个压缩模式选择第一压缩模式(34);
压缩所述片(30)的值,基于所述第一压缩模式(34)将所压缩的值写入第一块,并且使用预设数量的主要比特来存储与所述第一压缩模式(34)和所述第一块的压缩大小中的至少一项有关的信息;
从第二多个压缩模式选择次要压缩模式(32)的集合;
确定组成所述片(30)的多个子片(28),压缩所述子片的值,基于次要压缩模式(32)的所述集合将所压缩的值写入第二块,并且使用相同的预设数量的主要比特来存储与次要压缩模式(32)的所述集合和所述第二块的压缩大小中的至少一项有关的信息;
比较所述片(30)的压缩大小和所述子片(28)的压缩大小;
基于所述比较的结果来选取所述第一压缩模式(34)或次要压缩模式(32)的所述集合和对应的片大小;
将所选择的压缩的片或子片存储到所述深度缓冲器(20)中并将与所选取的第一压缩模式(34)或次要压缩模式(32)的集合或对应的大小有关的信息写入所述预设数量的主要比特;以及
所述方法还包括:
防止对应于具有最少出现的组合的子片的压缩模式的组合;以及
指派表示这些组合的比特组合转而表示整个片的压缩模式。
2.如权利要求1所述的方法,其中每个子片包括4×4个像素,并且所述片包括8×8个像素。
3.如权利要求1所述的方法,其中主要比特的所述预设数量是4或8。
4.如权利要求1所述的方法,其中所述第二多个压缩模式包括未压缩的、清除的、双平面和深度偏移模式。
5.如权利要求1所述的方法,其中所述预设数量的主要比特足以只表示对应于所述子片的压缩模式的某些组合。
6.如权利要求1所述的方法,其中所述第一多个压缩模式包括单平面和双平面模式。
7.如权利要求1所述的方法,还包括:
为所述预设数量的主要比特指派值的k个集合以用于指示所述片的压缩模式,并且为所述预设数量的主要比特指派值的2k12k22k3...2kn-k个集合以用于指示所述子片的压缩模式,其中k、k1、k2、k3、kn和n是整数。
8.如权利要求1所述的方法,其中所述子片的压缩模式的所防止的组合当发生时通过将每个防止的组合中的一个压缩模式更改为另一模式来修改。
9.如权利要求1所述的方法,其中所述比较的结果与所述片和子片的压缩的最大百分比相关联。
10.如权利要求1所述的方法,其中每个步骤由处理器来执行。
11.如权利要求10所述的方法,其中所述预设数量的主要比特存储在所述处理器中。
12.如权利要求1所述的方法,还包括:
在所述预设数量的主要比特中存储所述第一或第二压缩的块的大小。
13.如权利要求1所述的方法,还包括:
在不同于所述预设数量的主要比特的预设数量的次要比特中,存储与所选取的第一模式或次要压缩模式的集合有关的信息。
14.如权利要求13所述的方法,其中所述预设数量的次要比特存储在所述第一和第二压缩的块中的至少一个中。
15.如权利要求13所述的方法,其中所述预设数量的主要比特存储在处理器中,并且所述预设数量的次要比特存储在所述处理器外部的存储器中。
16.一种用于选择将在深度缓冲器(20)中应用的压缩模式的装置(10),所述装置包括:
用于获得对应于所述深度缓冲器(20)的片(30)的值的单元;
用于从第一多个压缩模式选择第一压缩模式(34)的单元,
用于压缩所述片(30)的值、基于所述第一压缩模式(34)将所压缩的值写入第一块、并且将预设数量的主要比特用于存储与所述第一压缩模式和所述第一块的压缩大小中的至少一项有关的信息的单元,
用于从第二多个压缩模式选择次要压缩模式(32)的集合的单元,
用于确定组成所述片(30)的多个子片(28)、压缩所述子片的值、基于次要压缩模式(32)的所述集合将所压缩的值写入第二块、并且使用相同的预设数量的主要比特来存储与次要压缩模式(32)的所述集合和所述第二块的压缩大小中的至少一项有关的信息的单元,
用于比较所述片(30)的压缩大小和所述子片(28)的压缩大小的单元,以及
用于基于所述比较的结果来选取所述第一压缩模式(34)或次要压缩模式(32)的所述集合和对应的片大小的单元;
用于将所选择的压缩的片或子片存储到所述深度缓冲器(20)中并将与所选取的第一压缩模式(34)或次要压缩模式(32)的集合或对应的大小有关的信息写入所述预设数量的主要比特的单元;以及
所述装置还包括:
用于防止对应于具有最少出现的组合的子片的压缩模式的组合的单元;以及
用于指派表示这些组合的比特组合转而表示整个片的压缩模式的单元。
17.如权利要求16所述的装置,其中每个子片包括4×4个像素,并且所述片包括8×8个像素。
18.如权利要求16所述的装置,其中主要比特的所述预设数量是4或8。
19.如权利要求17所述的装置,其中所述第二多个压缩模式包括未压缩的、清除的、双平面和深度偏移模式。
20.如权利要求16所述的装置,其中所述预设数量的主要比特足以只表示对应于所述子片的压缩模式的组合。
21.如权利要求16所述的装置,其中所述第一多个压缩模式包括单平面和双平面模式。
22.如权利要求16所述的装置,还包括:
用于为所述预设数量的主要比特指派值的k个集合以用于指示所述片的压缩模式、并且为所述预设数量的主要比特指派值的2k12k22k3...2kn-k个集合以用于指示所述子片的压缩模式的单元,其中k、k1、k2、k3、kn和n是整数。
23.如权利要求16所述的装置,其中所述子片的压缩模式的所防止的组合当发生时通过将每个防止的组合中的一个压缩模式更改为另一模式来修改。
24.如权利要求16所述的装置,其中所述比较的结果与所述片和子片的压缩的最大百分比相关联。
25.如权利要求16所述的装置,其中每个步骤由处理器来执行。
26.如权利要求25所述的装置,其中所述预设数量的主要比特存储在所述处理器中。
27.如权利要求16所述的装置,还包括:
用于在所述预设数量的主要比特中存储所述第一或第二压缩的块的大小的单元。
28.如权利要求16所述的装置,还包括:
用于在不同于所述预设数量的主要比特的预设数量的次要比特中存储与所选取的第一模式或次要压缩模式的集合有关的信息的单元。
29.如权利要求28所述的装置,其中所述预设数量的次要比特存储在所述第一和第二压缩的块中的至少一个中。
30.如权利要求28所述的装置,其中所述预设数量的主要比特存储在所述处理器中,并且所述预设数量的次要比特存储在所述存储器中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US97169207P | 2007-09-12 | 2007-09-12 | |
US60/971,692 | 2007-09-12 | ||
PCT/SE2008/051027 WO2009035410A2 (en) | 2007-09-12 | 2008-09-12 | Depth buffer compression |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101802872A CN101802872A (zh) | 2010-08-11 |
CN101802872B true CN101802872B (zh) | 2016-06-15 |
Family
ID=40344794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880107297.4A Expired - Fee Related CN101802872B (zh) | 2007-09-12 | 2008-09-12 | 深度缓冲器压缩 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8270736B2 (zh) |
EP (1) | EP2191443B1 (zh) |
CN (1) | CN101802872B (zh) |
WO (1) | WO2009035410A2 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010038212A2 (en) * | 2008-10-01 | 2010-04-08 | Nxp B.V. | Embedded video compression for hybrid contents |
GB2483502B (en) * | 2010-09-10 | 2014-05-07 | Imagination Tech Ltd | Random accessible lossless parameter data compression for title based 3D computer graphics system |
GB2487421A (en) * | 2011-01-21 | 2012-07-25 | Imagination Tech Ltd | Tile Based Depth Buffer Compression |
WO2012149084A2 (en) * | 2011-04-28 | 2012-11-01 | Intel Corporation | Depth buffer compression for stochastic motion blur rasterization |
US9378560B2 (en) * | 2011-06-17 | 2016-06-28 | Advanced Micro Devices, Inc. | Real time on-chip texture decompression using shader processors |
US20130265305A1 (en) * | 2012-04-04 | 2013-10-10 | Jon N. Hasselgren | Compressed Depth Cache |
GB2525666B (en) * | 2014-05-02 | 2020-12-23 | Advanced Risc Mach Ltd | Graphics processing systems |
US9681332B2 (en) * | 2014-06-26 | 2017-06-13 | Intel Corporation | Compression configuration identification |
US9552620B2 (en) * | 2014-06-30 | 2017-01-24 | Intel Corporation | Depth offset compression |
US9412195B2 (en) * | 2014-09-22 | 2016-08-09 | Intel Corporation | Constant buffer size multi-sampled anti-aliasing depth compression |
US10313256B2 (en) | 2015-05-21 | 2019-06-04 | Intel Corporation | Apparatus and methods for adaptive data compression |
US10068308B2 (en) * | 2016-05-27 | 2018-09-04 | Intel Corporation | Lossy depth compression of multi-sample pixels |
US10713189B2 (en) * | 2017-06-27 | 2020-07-14 | Qualcomm Incorporated | System and method for dynamic buffer sizing in a computing device |
GB2571306A (en) * | 2018-02-23 | 2019-08-28 | Sony Interactive Entertainment Europe Ltd | Video recording and playback systems and methods |
GB2586516B (en) * | 2019-08-23 | 2022-07-06 | Imagination Tech Ltd | Random accessible image data compression |
CN110956670A (zh) * | 2019-11-18 | 2020-04-03 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于深度偏移的多模式自适应z值压缩算法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997015146A1 (en) * | 1995-10-18 | 1997-04-24 | Philips Electronics N.V. | Method of encoding video images |
US6630933B1 (en) * | 2000-09-01 | 2003-10-07 | Ati Technologies Inc. | Method and apparatus for compression and decompression of Z data |
CN1739117A (zh) * | 2002-12-20 | 2006-02-22 | Lm爱立信电话有限公司 | 使用最小深度遮挡剔除和z字形遍历的图形处理设备、方法和计算机程序产品 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5021891A (en) * | 1990-02-27 | 1991-06-04 | Qualcomm, Inc. | Adaptive block size image compression method and system |
US6961057B1 (en) * | 2000-10-12 | 2005-11-01 | Nvidia Corporation | Method and apparatus for managing and accessing depth data in a computer graphics system |
US7277098B2 (en) * | 2004-08-23 | 2007-10-02 | Via Technologies, Inc. | Apparatus and method of an improved stencil shadow volume operation |
US8089486B2 (en) * | 2005-03-21 | 2012-01-03 | Qualcomm Incorporated | Tiled prefetched and cached depth buffer |
US8184118B2 (en) * | 2007-05-01 | 2012-05-22 | Advanced Micro Devices, Inc. | Depth operations |
-
2008
- 2008-09-12 EP EP08830243A patent/EP2191443B1/en not_active Not-in-force
- 2008-09-12 CN CN200880107297.4A patent/CN101802872B/zh not_active Expired - Fee Related
- 2008-09-12 US US12/677,615 patent/US8270736B2/en active Active
- 2008-09-12 WO PCT/SE2008/051027 patent/WO2009035410A2/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997015146A1 (en) * | 1995-10-18 | 1997-04-24 | Philips Electronics N.V. | Method of encoding video images |
US6630933B1 (en) * | 2000-09-01 | 2003-10-07 | Ati Technologies Inc. | Method and apparatus for compression and decompression of Z data |
CN1739117A (zh) * | 2002-12-20 | 2006-02-22 | Lm爱立信电话有限公司 | 使用最小深度遮挡剔除和z字形遍历的图形处理设备、方法和计算机程序产品 |
Non-Patent Citations (2)
Title |
---|
Cheng-HsienChen,et al.《Two-level hierarchical Z-buffer with compression technique for 3D graphics hardware》.《The Visual Computer (2003)》.2003, * |
Jon Hasselgren,et al.《Efficient depth buffer compression》.《GH "06 Proceedings of the 21st ACM SIGGRAPH/EUROGRAPHICS symposium on Graphics hardware》.2006, * |
Also Published As
Publication number | Publication date |
---|---|
EP2191443B1 (en) | 2013-01-23 |
EP2191443A2 (en) | 2010-06-02 |
CN101802872A (zh) | 2010-08-11 |
WO2009035410A3 (en) | 2009-06-11 |
WO2009035410A2 (en) | 2009-03-19 |
US8270736B2 (en) | 2012-09-18 |
US20100254621A1 (en) | 2010-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101802872B (zh) | 深度缓冲器压缩 | |
EP2005393B1 (en) | High quality image processing | |
EP2805307B1 (en) | Method and apparatus for compressing texture information of three-dimensional (3d) models | |
EP1074945A2 (en) | Method and apparatus for controlling compressed Z information in a video graphics system | |
US9159114B2 (en) | Texture decompression for graphics processors | |
US10699361B2 (en) | Method and apparatus for enhanced processing of three dimensional (3D) graphics data | |
US20170228893A1 (en) | Techniques for reducing accesses for retrieving texture images | |
CN111971967A (zh) | 一种用于编码/解码表示3d对象的点云的方法和装置 | |
US20140086309A1 (en) | Method and device for encoding and decoding an image | |
CN104012097A (zh) | 用于压缩和解压缩数据的方法与装置 | |
JP7389751B2 (ja) | 三次元物体を表すポイントクラウドを符号化/復号する方法及び装置 | |
US9336561B2 (en) | Color buffer caching | |
CN111311716A (zh) | 动画播放方法、装置、终端设备以及存储介质 | |
CN102138158A (zh) | 统一纹理压缩框架 | |
EP2797049B1 (en) | Color buffer compression | |
CN110728725A (zh) | 一种硬件友好的面向实时系统无损纹理压缩算法 | |
US11263786B2 (en) | Decoding data arrays | |
US8655063B2 (en) | Decoding system and method operable on encoded texture element blocks | |
CN114428595A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
US11438599B2 (en) | Video compression for video games | |
US9129543B2 (en) | Texture compression and decompression | |
CN110072108A (zh) | 图像压缩的方法及装置 | |
CN104737225A (zh) | 用于存储器带宽有效的显示合成的系统及方法 | |
CN114584783A (zh) | 图片解码方法、装置、终端设备及可读存储介质 | |
CN110689590A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160615 |