CN101653005A - 用于图形渲染的帧缓冲器压缩以及解压缩方法 - Google Patents

用于图形渲染的帧缓冲器压缩以及解压缩方法 Download PDF

Info

Publication number
CN101653005A
CN101653005A CN200880011504.6A CN200880011504A CN101653005A CN 101653005 A CN101653005 A CN 101653005A CN 200880011504 A CN200880011504 A CN 200880011504A CN 101653005 A CN101653005 A CN 101653005A
Authority
CN
China
Prior art keywords
pixel value
lossy compression
pixel
renewal
compression method
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
CN200880011504.6A
Other languages
English (en)
Other versions
CN101653005B (zh
Inventor
J·拉斯姆森
T·阿克尼恩-莫勒
J·哈塞尔格伦
J·芒克伯格
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.)
InterDigital VC Holdings Inc
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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 Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of CN101653005A publication Critical patent/CN101653005A/zh
Application granted granted Critical
Publication of CN101653005B publication Critical patent/CN101653005B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/12Selection 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods 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
    • H04N19/423Methods 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 characterised by memory arrangements
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Discrete Mathematics (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)

Abstract

公开了在图形处理应用中,用于对诸如色彩缓冲器数据的帧缓冲数据的处理的方法和设备。尽管更广泛地可应用,这些方法和设备在实时的、基于多边形的3D渲染应用中尤其有用。根据本发明的一个或者更多实施方式的、用于处理图形数据的示例性方法由从缓冲器中获取对应于由两个或者更多像素组成的拼贴的像素值开始,以及由更新那些更新的像素值中的一个或者更多开始。基于用于所述拼贴的累积误差度量值,使用有损压缩操作或者无损压缩操作选择性地压缩所述更新的像素值。如果使用有损压缩,则更新用于所述拼贴的所述累积误差度量值;不管怎样,将所述被压缩的像素值存储在帧缓冲器中用于另外的处理。用这种方式,由连续的或者串联的压缩操作引起的所述累积误差可以被限于预先确定的最大值。

Description

用于图形渲染的帧缓冲器压缩以及解压缩方法
背景技术
本发明一般涉及对于图形数据的处理,并且具体地涉及用于在三维(3D)图形渲染系统中压缩帧缓冲器数据的方法和设备。
典型地,3D图形渲染系统在渲染过程期间利用诸如纹理缓冲器、深度缓冲器(常被称为z-缓冲器)以及色彩缓冲器(color buffer)的若干存储缓冲器。这些缓冲器常被存储在处于可能装有相对小的高速缓冲存储器的图形处理单元(GPU)外部的随机存取存储器(RAM)中。因为在渲染过程期间可以多次获取和重新写入缓冲数据,存储器带宽(用于将数据写入存储器以及从存储器读出数据的容量)通常必须相当高,特别是用来支持诸如实时游戏的实时图形处理应用。在台式个人计算机上,可用的存储器带宽可能非常高,大概每秒几十亿字节。在移动电话中,每秒几百兆字节的数据传输可能是可用的。即使带有这些高的可用存储器带宽,GPU的性能可能仍然受存储器带宽的限制。因而,减少从外部RAM获取以及写入外部RAM的数据量通常是有利的。由于用来支持很高的存储器带宽所要求的增加的时钟速率以及更宽的数据总线也导致增加的功率消耗(更快地耗费电池),减少存储器事务处理的优势在诸如移动电话的移动平台中尤其显著。
数据压缩是用来减少支持高级的3D渲染应用所要求的存储器带宽的一种方式。如今,没有任何信息损失而准许原始数据重构的无损数据压缩技术有时在3D图形渲染应用中被使用。可以提供明显更高的压缩比例但可能导致在重构的数据中引入视觉伪像的有损压缩算法在诸如数字电视的视频应用中被普遍使用,而就在3D渲染应用中压缩色彩缓冲器而言似乎已经被忽略。
在3D渲染应用中避免有损压缩方案的一个原因是当多次使用有损压缩时,有可能将大的误差引入到色彩缓冲器数据中。对于反复的压缩和解压缩操作的需要将许多3D图形渲染应用与数字视频应用(举例来说,其中典型地只压缩给定的帧一次)区别开。用于单个帧的色彩缓冲数据中的一些或者全部可以在图形渲染过程期间被多次压缩和解压缩。举例来说,在基于三角形的3D渲染系统中,若干三角形可以被连续地写入数据的片段(segment)(例如拼贴或者块)。每次,可以从帧缓冲器中获取所述数据的片段,将其解压缩、处理、再次压缩并且写回到色彩缓冲器。如果每次都使用有损压缩来压缩所述数据片段,这种串联的压缩可以导致反复的信息损失,将不可接受的误差引入到最终的数据中。
发明内容
在本文中所示教的方法和设备提供了用于在图形处理应用中对于帧缓冲器数据(例如色彩缓冲器数据)的处理的新颖的方式。尽管可更广泛地应用,这些方法和设备在实时的、基于多边形的3D渲染应用中尤其有用。所属领域的技术人员将理解在本文中所公开的方法和设备可以被应用于减少对于给定的图形应用的存储器带宽要求、用于促进更高级的图形处理,或两者。所属领域的技术人员也将理解在本文中所公开的技术可以在诸如移动电话的电池供电的便携设备(在其中更高的存储器带宽要求通常导致增加的能量消耗以及更短的电池寿命)中提供特有的优势。
用于根据本发明的一个或者更多实施方式处理图形数据的示例性方法由从缓冲器中获取对应于由两个或者更多像素组成的拼贴的像素值开始,以及由更新所述被获取的像素值中的一个或者更多开始。基于用于所述拼贴的累积误差度量值,使用有损压缩操作或者无损压缩操作选择性地压缩所述更新的像素值。如果使用有损压缩,则更新用于所述拼贴的所述累积误差度量值;不管怎样,将所述被压缩的像素值存储在帧缓冲器中用于进一步的处理。用这种方式,由连续的或者串联的(tandem)压缩操作引起的所述累积误差可以被限于预先确定的最大值。
在一些实施方式中,在执行所述压缩操作之前预测有损压缩对所述拼贴的累积误差度量值的影响,并且基于所述预测的影响执行有损压缩或者无损压缩。在这些实施方式的一些中,基于所述预测的影响,可以使用两个或者更多有损压缩操作中的一个。在若干实施方式中,如果所述累积误差度量值超出预先确定的门限,则使用无损压缩操作;否则使用有损压缩操作。在其中所述像素值包含像素色彩值的实施方式中,所述方法还包含基于所述更新的像素值是否包含用于α混合的α值选择所述预先确定的阈值。
在一些实施方式中,所述无损压缩操作包含对于由基于近邻的像素值预测器产生的残留误差(residual error)的熵编码。这些实施方式中的一些可能使用Golomb-Rice编码。在各种实施方式中,所述有损压缩操作可以包含对于所述更新的像素值的量化、子采样或者求平均中的一个或者更多。在其中所述像素值包含像素色彩值的实施方式中,所述有损压缩操作可以包含使用无损算法压缩所述像素值的亮度分量以及使用有损算法压缩所述像素值的色度分量。
当所述像素值包含像素色彩值时,各种实施方式还可以包含在更新所述像素值之前将所述像素值从第一色彩空间变换到第二色彩空间,以及在压缩所述更新的像素值之前将所述更新的像素值从所述第二色彩空间变换到所述第一色彩空间。在这些实施方式的若干个中,所述第二色彩空间包含红-绿-蓝(RGB)色彩空间,并且所述第一色彩空间包含对于所述第一色彩空间可逆的、精确到比特的变换,诸如YCoCg色彩空间。
在本文中也公开了用于根据上述方法中的一个或者更多以及那些方法的变型处理图形数据的设备。当然,本发明不限于上述特征和优势。所属领域的技术人员在阅读下述的详细描述时以及在察看附图时将认识到补充的特征和优势。
附图概述
图1示出了串联的压缩对像素数据的影响。
图2是示出用于根据本发明的一个或者更多实施方式处理图形数据的示例性方法的流程图。
图3是示出用于压缩色彩缓冲器数据的示例性方法的流程图。
图4示出了根据近邻像素对像素数据的预测。
图5是用于根据本发明的一个或者更多实施方式处理图形数据的设备的框图。
具体实施方式
在本文中公开的各种方法和装置描述了供图形处理之用的、基于拼贴的压缩和解压缩方案(尤其在3D图形渲染应用中)。在下文的论述的大部分中,将在处理色彩缓冲器数据的环境中示出本发明的技术,但是所属领域的技术人员将理解这些技术对于诸如纹理缓冲器数据、深度缓冲器数据或者强度数据(intensity data)的其它图形数据的可用性。使用所公开的方案,必须被缓冲的图形数据的量可以被大大降低,减少了用于存储以及获取图形数据所要求的存储器带宽或者为更高级的和/或更快速的图形处理释放了存储器带宽。如在本文中所公开的,有损压缩技术可以被用来获得最大的压缩增益,而无损压缩技术被选择性地应用于将由压缩操作引入的累积误差保持在可接受的水平。
如上文所论述的,将有损压缩技术应用于3D图形渲染环境可能引入特有的问题。因为可以在对单个帧的渲染期间多次压缩和解压缩3D图形数据,由反复的有损压缩操作引起的累积误差可以增长至超出可接受的水平,引起被渲染的图像中不希望的视觉伪像。这在图1中被示出。在步骤110处,第一三角形112被写入由十六个像素组成的拼贴(tile)115。具体来说,色彩值C被写入被三角形112覆盖的像素中的每一个,包含拼贴115左上角中的像素。接着在步骤120处,使用有损压缩操作压缩用于拼贴115的色彩数据。此有损压缩将误差引入到拼贴数据中,以使在解压缩时(没有显示),左上部的像素包含值
Figure G2008800115046D00041
,而不是C。在步骤130处,三角形132被写入拼贴115。在这个示例中,三角形132的写入对与左上部的像素相关联的色彩值没有直接影响。然而,在步骤140处的另一压缩操作之后,额外的误差被引入用于左上部的像素的色彩值,以使在步骤150处,新的值等于
Figure G2008800115046D00051
。所属领域的技术人员将理解如图1中所示出的,由串联的压缩引入的误差在某些情形下可以无限度地增长。然而,使用在本文中所公开的技术,则可以应用图形数据的有损压缩,而仍然保持被引入的误差在控制之下。
图2示出了用于根据本发明的一个或者更多实施方式处理图形数据的示例性方法。在框210处,从帧缓冲器中获取像素值用于处理。在本文中使用措词“帧缓冲器”来代表用于存储与对于图形图像的给定的渲染相关的图形数据的存储器结构。在一些应用中,帧缓冲器的像素可以直接对应于视频显示器装置的像素,以使帧缓冲器包含完整的视频数据帧。然而,在其它的应用中,在帧缓冲器数据被发送到视频显示器之前,它可以经历额外的处理。无论如何,典型地,帧缓冲器包含色彩缓冲器(其包含用于每个像素的像素色彩值)并且也可以包含深度缓冲器以及纹理缓冲器。色彩缓冲器数据也可以包含用于α混合的α通道数据。
在随后的论述中,措词“像素”被用来描述图形数据的二维矩阵中的单个元素。同样地,图形数据的单个像素可以或者可以不对应于视频显示器上的单个输出像素。此外,所属领域的技术人员将对包括图形数据的多级采样或者超级采样在内的各种图形处理技术熟悉。专业人员还将理解在本文中所描述的本发明的技术也可以被应用于被超级采样或者被多级采样的图形数据,例如当必须从缓冲器中反复存储以及获取那些数据时。相应地,如在本文中所使用的措词“像素”可以指被超级采样或者被多级采样的图形数据的每个元素。
至少为了压缩和解压缩操作的目的,在包含两个或者更多像素值的块或者“拼贴”中便利地处理从帧缓冲器中被获取的像素数据。(在本文中使用措词“拼贴”指包含至少两个像素值的图形数据的片段或者“块”。)举例来说,可以在八乘八的像素拼贴中处理像素数据。因而,可以根据在本文中所描述的技术单独地并且独立地压缩(以及解压缩)每个拼贴。
在本发明的各种实施方式中,从帧缓冲器中获取像素数据的过程包含后续处理之前对像素数据的解压缩。如将被所属领域的技术人员充分理解的,解压缩涉及用于压缩数据的操作的逆操作(reverse)。如果采用无损方案来压缩数据,则原始数据可以被精确重构,即没有信息损失。另一方面,如果使用有损压缩方案,对应的解压缩操作可以恢复原始数据的格式和/或大小,但是原始数据中的一些信息会丢失而不能补救。
在本发明的一些实施方式中,帧缓冲器包含或者与指示所使用的是有损还是无损压缩的数据相关联。在多个实施方式中,在每个被压缩的拼贴被写入帧缓冲器之前,将其与标头信息结合。在这些实施方式的一些中,此数据可以包含指示若干压缩算法中的哪一个被使用的信息。此信息可以是拼贴特定的,以使对于每个拼贴可以独立地用信号通知有损或者无损压缩方案的使用。
以类似的形式,对于每个拼贴可以独立地保存(maintain)累积误差信息。因而,此累积误差信息包含用于每个拼贴的累积误差度量值,所述累积误差度量值指示从一个或者更多有损压缩操作引入拼贴数据的误差。累积误差度量值可以被存储在与帧缓冲器相同的存储器中,或者保存在单独的存储器中。在典型的实施方式中,累积误差度量值在帧渲染操作的起始处被初始化为零,并且在其中的一个或者更多拼贴上使用一个或者更多有损算法之后被更新。
因而,再次参考图2,如框220处所示,从存储器中获取用于要被处理的当前拼贴的累积误差度量值τaccum。尽管诸如均方根误差或者对于拼贴中任一像素的最大误差水平等其它的测量标准可以被使用,在一些实施方式中τaccum表示用于拼贴的累积均方误差。另一有用的误差度量是重构的像素值和它们的“真实”值之间的绝对差的总和。对于使用哪种误差度量的选择通常包括用来表示误差度量值所需要的比特数目和得益于误差度量的控制精度之间的权衡。实际上,尽管对于额外的度量值的处理和存储会消除从压缩像素数据中取得的好处,在一些实施方式中可能使用多于一种误差度量以提供对于由拼贴压缩引入的误差的更精细的控制。无论如何,被获取的误差度量值τaccum指示由在当前的拼贴上被执行的、先前的有损压缩操作至此为止引入的误差。如框225处所示,一旦被解压缩,用于当前拼贴的像素数据根据当前渲染操作被更新。举例来说,在基于多边形的3D渲染应用中,对应于新的三角形的色彩值可以被写入用于当前拼贴的像素中的一个或者更多。被渲染的三角形可以与所述拼贴完全重叠以使所有像素值被更新,或者可以只部分覆盖所述拼贴以使像素值中的一个或者多个被更新而其它的保持不变。诸如着色(shading)、纹理贴图(texturing)或者α混合等其它操作也可以根据所属领域公知的技术被应用。所属领域的技术人员将认识到在拼贴上的某些操作将使对应的累积误差度量值过时。举例来说,如果三角形与拼贴完全重叠以使用于该拼贴的全部像素色彩值被重新写入,从先前的压缩操作中产生的累积误差度量将不再可用(假设不把先前值与新的值混合)。因而,在这些实例中,像素值的更新之后是将用于该拼贴的一个或多个累积误差度量值重新设置为0。在其它实例中,诸如当被渲染的三角形只与拼贴部分重叠,累积误差度量值继续提供先前被引入的压缩误差的有意义的指示器。
无论如何,在像素值被更新之后,拼贴被再次压缩并且存储回帧缓冲器中以释放在板RAM(on board RAM)用于对其它拼贴的处理。然而,取决于τaccum的值,另外的压缩操作可以限于无损压缩,以使τaccum不再进一步地增加。相应地,可以将τaccum与门限值τthreshold对比;如果τaccum>τthreshold则执行无损压缩以避免将另外的误差引入被压缩的数据中。另一方面,如果τaccum≤τthreshold,则可以容许至少一次额外的有损压缩操作。
在一些实施方式中,在确定使用有损操作还是无损操作之前,预测计划中的有损压缩操作对用于拼贴的累积误差度量值的影响。因而,在框230处基于计划中的有损压缩操作计算误差贡献τnew。在框240处,将使用计划中的压缩操作产生的累积误差(例如τaccum与τnew的和)与预先确定的门限值threshold对比。如果计划中的有损压缩操作将导致超出门限的累积误差度量值,则改为如框250处所示执行无损压缩操作,并且在框290处将被压缩的像素值存储到(例如重新写入)帧缓冲器中。另一方面,如果计划中的有损压缩操作将不引入不可接受的误差水平,则如框260所示执行有损压缩操作。
因而,在使用有损压缩操作的情况下,如框270所示用于拼贴的累积误差度量值被更新。举例来说,可以用先前的累积误差度量值与来自新执行的压缩操作的贡献之和取代先前的累积误差度量值。在框280处,更新的累积误差度量值被存储用于之后对拼贴的处理,并且在框290处,被压缩的拼贴被存储在帧缓冲器中。
所属领域的技术人员将理解在图2中所示出方法可以容易地被扩展以促进对若干有损压缩算法的选择性应用。举例来说,两个不同的有损压缩算法可以是可用的。一个可以以增加的误差引入为代价给予相比于另一个更大的压缩。如果多个有损压缩算法可用,则可以首先对于提供最高压缩的算法执行框230的误差贡献计算。如果预测的总累积误差不超出门限,则在框250处使用那个算法。另一方面,如果第一算法将导致过度的误差,则计算并且测试第二算法的预测误差贡献。如果此算法导致可接受的误差水平,则使用它。否则,如在先前所论述的方法中,使用无损算法。
在还有另一种变化中,累计误差度量值被用来选择两个或者更多有损压缩算法中的一个。举例来说,在一种实施方式中,如果累积误差度量值低于第一门限,则使用第一有损压缩算法。如果累积误差度量值高于第一门限而低于第二门限,则改为使用第二有损压缩算法。典型地,选择第二压缩算法以引入相比于第一更少的误差。另一方面,如果累积误差度量值超出第二预先确定的门限值,则使用无损压缩。
所属领域的技术人员将理解在图2中所示出的方法可以与任何适合于对按块组织的像素数据的压缩的无损压缩算法一起,以及与任何适合的有损压缩算法一起被使用。然而,所属领域的技术人员将理解当本发明的技术被应用于色彩数据时,在亮度-色度色彩空间中采用压缩算法是有利的,而不是用于许多标准的图形处理过程的红-绿-蓝(RGB)色彩空间。相应地,即使在RGB空间中执行全部或者大部分像素更新操作(诸如对三角形的渲染、像素着色等等),压缩在已经被变换到亮度-色度空间的像素数据上被有利地执行。如在所属领域中所公知的,由于对RGB通道的解相关,因而允许更有效的压缩。由将亮度-色度色彩空间用于压缩像素色彩数据产生的另一优势是单独的压缩方案可以被用于亮度和色度值。由于人类视觉系统对于亮度分量的误差更敏感,在本文中公开的方法的一些实施方式可以始终将无损压缩用于亮度分量而根据在本文中公开的技术对于色度分量选择性地采用有损压缩。在其它的实施方式中,有损压缩可以选择性地被准许既用于亮度也用于色度分量,但是带有不同门限水平的不同的方案被采用以确定何时从有损压缩变换到无损压缩。在还有其它的实施方式中,累积误差度量值可以单独地对于亮度和色度分量被追踪,和/或被应用于单独的门限,以使对于亮度数据无损压缩被引入得比对于色度数据更早。
在所属领域中已知像素色彩数据的若干亮度-色度表示。因为目前的技术采用至少一种无损压缩方案,以使被压缩的数据可以被精确重构,色彩空间变换也应当是精确可逆的。一种这样的色彩变换方案是RGB到YCOCG(亮度加偏移的橙色加偏移的绿色)的变换,由HenriqueMalvar和Gary Sullivan在他们2003年7月向ISO/IEC的PMEP和ITU-T的视频编码专家组(VCEG)的视频联合工作组投寄的、文档号JVT-1014r3、标题为“YCoCG-R:一种具有RGB可逆性以及低动态范围的色彩空间(YCoCG-R:A Color Space with RGB Reversibility andLow Dynamic Range,”的稿件中介绍。使用此方式,进行从RGB到YCOCG的变换根据:
CO=R-B
t=B+(CO>>1),(1)
CG=G-t
Y=t+(CG>>1)
并且从YCOCG到RGB对应的变换为:
t=Y-(CG>>1)
G=CG+t(2)
B=t-(CO>>1)
R=B+CO
如果使用每分量n比特存储RGB分量,则Y分量将需要n比特而色度分量将需要n+1比特。因而,变换到YCOCG空间可能花费两个额外的比特。然而,已经显示了在某些环境中,相比于对应的RGB数据或者根据普遍被使用的YCRCB变换而被变换的数据,根据此方式被变换的色彩数据可以被更有效地压缩。(参见Charls Poynton,数字 电视和HDTV(Digital Video and HDTV),旧金山:Morgan Kaufman出版社,2003年,对于YCRCB变换的描述(for a description of the YCRCBtransform。)必须注意通常YCRCB变换不是在没有信息损失的情况下可逆的。然而,作为YCOCG的备选色彩变换的是根据JPEG-2000标准的精确可逆分量变换(RCT)。适合的有损压缩算法可以相当简单。举例来说,像素值可以简单地被量化到可能值的有限的集合,因而减少存储所述值所需要的比特数目。此量化操作可以只包括像素值的截断,在这种情况中解压缩只需要将零添加到被截断的值以得到全精度的数据用于后续操作。备选地,在截断之前像素值可以被“舍入”。在其它的实施方式中,像素值可以被子采样。因而,在一个或者更多实施方式中,可以将单个值存储在帧缓冲器中以表示两个或者更多像素值。举例来说,由四个像素值组成的二乘二的子拼贴(sub-tile)可以被简化为一个值。可以从四个值中的一个选择被存储的值,或者可以是四个值的平均。所属领域的技术人员将认识到这些方案的各种组合也是可能的。
由于无损的基于拼贴的压缩算法必须避免被压缩的数据中的任何信息的损失,它们可能稍微更加复杂。在示例性的实施方式中,无损压缩算法包含对于从基于近邻的像素值预测器产生的残留误差的熵编码。在图3的流程图中示出了这样的无损压缩算法。如框310所示,图3由像素色彩值从RGB空间到亮度-色度空间的变换开始。如上文所解释的,由于对RGB数据的解相关,将像素色彩数据变换到亮度-色度色彩空间可以提供多项优势。相应地,在一些实施方式中可以使用方程(1)将RGB数据变换成YCOCG数据。在框320、330以及340中示出了用于当前拼贴的像素的亮度值的无损压缩的示例性的方式。首先,使用用于邻近像素的亮度值预测用于所述像素的值。一种可能的预测器先前在数据压缩会议(Data Compression Conference)(1996),140-149页中的、Weinberger,M.J等人的LOCO-I:一种低复杂度、基于环境的无损图像压缩算法(Low Complexity,Context,LosslessImage Compression Algorithm)中被描述,并且在图4种被示出,其中用于三个近邻像素410的亮度值(x1,x2,x3)被用来预测用于像素420的亮度值
Figure G2008800115046D00111
可以根据下面的方程(3)预测亮度值
Figure G2008800115046D00112
x ^ = min ( x 1 , x 2 ) x 3 ≥ min ( x 1 , x 2 ) max ( x 1 , x 2 ) x 3 ≤ min ( x 1 , x 2 ) x 1 + x 2 - x 3 , otherwise . - - - ( 3 )
所属领域的技术人员将理解方程(3)的前两种情况执行简单(并且有限的)边缘检测,在此情况中仅基于近邻中的一个预测色彩值。在被示出的方式中,对于沿拼贴的下部以及左部边缘的像素只有一个近邻值是可访问的。在这些情况的每一个中,单个近邻的色彩被用作对于主体像素(subject pixel)的预测值。零值被用来“预测”左下部像素色彩值。这导致了与像素实际值相等的、用于左下部像素的第一误差残数(error residual)。
再次参考图3,在框330处,通过将用于每个像素的预测器值从像素的当前值中减去,计算用于像素中的每一个的误差残数。通常残数具有小的量,伴有偶尔的(但不频繁的)大的值。典型地,由于不连续边缘或者在这种简单的预测器的行为对于图像的结构不是非常合适的地方,会发现这些后者的值。
然后在框430处使用熵编码算法将残数编码以将存储残数值所需要的比特数目减到最小。在一种实施方式中,使用Golomb-Rice编码器。(Rice,R.F.,一些实用的普适无噪声编码技术(Some PracticalUniversal Noiseless Coding Techniques),Tech.Rep.22,Jet PropulsionLab,1979.)Golomb-Rice由将残数值 ϵ = x - x ^ 除以常数2k开始。结果为商q以及余数r。使用一元编码存储商q,而使用有k比特的标准二进制编码存储余数r。由于Golomb-Rice压缩器只以正数为工作对象,首先使用在其中负数n被重新映射成2·|n|-1的“重叠和交织”重新映射方法将负的残数值转换成正值,而正数m被重新映射成2·m。也就是说,负数被映射成新的奇数而正数被映射成新的偶数。举例来说,负数-3被映射成2·3-1=5,而正数3被映射成2·3=6。
用示例来说明,假设值-3,0,9和1要被编码并且还假设k=2。首先变换所述值以消除负值,产生经变换的值5,0,18和2。除法步骤产生四个(q,r)对:(1,1),(0,0),(4,2)和(0,2)。对于商q的一元编码产生之后是有尽的0的一连串q个1。因而,在我们的示例中被编码的值变成(10u,01b),(0u,00b),(11110u,10b)和(0u,10b),达总共17比特。这对比于将同样的数据作为有符号的二进制值进行编码所需要的20比特。
可以使用穷尽搜索对于每个二乘二的子拼贴选择k的最佳值。另外,可以测试在其中对于全部子拼贴值q都为0的特殊情况。在这种特殊情况中,可以从被编码的值中将有尽的0比特移除。将k值连同每个拼贴一起存储供重构被压缩的数据之用。在一些实施方式中,用于k的可能值的范围可以被限于值的预先确定的范围。举例来说,对于此算法的经验性测试揭示了k常相对平均地分布在[0,6]的范围中。此外,当整个子拼贴仅由0值组成时,最经常遇到所述特殊情况(其中对于子拼贴中的全部像素q都为0)。因而,在一种或者更多实施方式中,可以对于每个子拼贴将k的值编码成3比特标头,其中所述3比特包含k的值,除非所述3比特全部为1(表示值7),这指示整个子拼贴等于0并且没有更多用于之后的子拼贴的数据。在其它情况中,标头之后是经Golomb-Rice编码的残数。
再一次参考图3,在框350处压缩像素值的色度分量,而在框360处将被压缩的亮度和色度分量存储在色彩缓冲器中。如上文所指出的,多种压缩方法中的任何一种可以被用来压缩色度分量。在于图3中被示出的方法中,子采样被使用。然而,截断、量化和/或简单的求平均也可以被使用。
鉴于先前所示出的方法,所属领域的技术人员将理解在本文中所描述的技术可以在各种组合中被使用以获得压缩性能和可接受的误差之间所希望的平衡。举例来说,图3示出了无损压缩对于色彩缓冲器的亮度值的应用。所属领域的技术人员将理解当已经达到可接受的最大误差门限时,相同的或者相似的无损压缩算法可以被应用于色度值。相似地,所属领域的技术人员将理解在一些实施方式中,在达到门限误差水平之前,上文所论述的有损压缩技术可以被应用于像素色彩数据的亮度分量以及色度分量。
此外,尽管就亮度-色度色彩空间数据而言上文示出了无损和有损压缩技术,相同的或者相似的技术可以被应用于RGB色彩数据以及被变换到另一色彩空间的色彩数据,尽管压缩效率可能受损失。最后,在本文中所论述的压缩技术对于诸如纹理缓冲器数据或者深度缓冲器数据的、除色彩缓冲器数据以外的其它类型的图形数据是可应用的。所属领域的技术人员将理解取决于图形数据类型,不同门限,或者不同误差度量可以一概被应用。在一些实施方式中,图形数据的一个部分相比于另一个部分可以具有不同的特点;在这些实施方式中,取决于那些特点,可以选择多个不同门限值中的一个供给定的拼贴使用。举例来说,一些数据可能包含或者对应于用于α混合的α值;一个预先确定的门限值可能被选择供对其采用α混合的那些拼贴使用,而另一门限值被选择供其中不采用α混合的那些拼贴使用。
考虑到变化以及应用的上述范围,在图5中示出了用于处理图形数据的示例性处理线路(processing circuit)。所述处理线路包含图形处理单元(GPU)510以及帧缓冲器520。GPU 510可以是用于个人计算机、工作站、游戏控制台、移动电话或者类似物的专用图形渲染装置,或者可以是被编程用来执行图形处理操作的通用处理系统。GPU 510可以包含一个或者更多微处理器、微控制器、数字信号处理器和/或定制的硬件,并且可以作为独立芯片或者包含其它功能的专用集成电路(ASIC)的部分被实现。在许多实施方式中,GPU 510包含在板随机存取存储器(on-board random access memory)和/或高速缓冲存储器。
帧缓冲器520包含用于为图形图像的至少一个帧存储图形数据的存储器结构。在图5的图形处理线路中,帧缓冲器520包含三个或者更多缓冲器、包含用于许多像素中的每一个的色彩数据的色彩缓冲器522、包含用于每个像素的深度数据的深度缓冲器524以及纹理缓冲器526。在一些实施方式中,帧缓冲器520可以包含诸如模板缓冲器(stencil buffer)等额外的缓冲器。尽管诸如DRAM、闪存等其它存储器类型是可能的,典型地使用诸如静态RAM(SRAM)的快速随机存取存储器(RAM)实现帧缓冲器520。可以使用一个或者更多单独的存储器电路或芯片实现全部或者部分帧缓冲器520,或者作为也包含GPU 510的全部或者一部分的ASIC的部分实现。
使用软件、固件或者两者的一些组合对GPU 510编程,和/或将GPU 510硬连线以完成在本文中所描述的一个或者更多方法。因而,在一些实施方式中,将GPU 510编程,通过:从帧缓冲器520中获取对应于由两个或者更多像素组成的拼贴的像素值;更新一个或者更多所述像素值以得到更新的像素值;基于用于所述拼贴的累积误差度量值使用有损压缩操作或者无损压缩操作选择性地压缩所述更新的像素值;如果使用有损压缩则更新所述累积误差度量值;以及将所述被压缩的像素值存储在帧缓冲器520中来处理图形数据。所属领域的技术人员将理解可以通过硬连线的线路执行一个或者更多所述GPU 510的操作,而通过一个或者更多可编程的处理器元件执行其它的。
以被压缩的形式存储在帧缓冲器520中的图形数据在将其向用户显示之前必须被解压缩。在一些实施方式中,典型地在帧已经被完全渲染之后被执行的这种解压缩操作可以由GPU 510执行。然而,在一些应用中,在显示器控制器中或者在所述显示器控制器之前的硬件处理块中执行色彩缓冲器解压缩是有优势的。因而,图5还示出了显示器驱动器530以及图形显示器540。在本发明的一个或者更多实施方式中,显示器驱动器530被配置用来从帧缓冲器520中获取被存储、压缩的像素值、用来解压缩所述被获取的像素值、用来将所述更新的像素值从所述第一色彩空间变换到RGB色彩空间并且用来将经变换、更新的像素值提供给显示器540。
在一些实施方式中,用与图形显示器540紧密关联的硬件实现显示器驱动器530;举例来说,许多移动电话已经包含提供诸如缩放、覆盖、色彩深度变换以及类似物的特征的显示器处理块。色彩缓冲器解压缩(以及色彩空间变换,如果需要的话)可以在这样的显示器处理块中被执行。备选地,显示器驱动器530的功能可以由用来执行GPU510的功能的同样的一个或者多个线路执行。
考虑到上述变化以及应用的范围,应该理解本发明不限于前面提到的描述,也不限于附图。相反,本发明只限于下述的权利要求以及它们在法律上的等效物。

Claims (24)

1.一种用于处理图形数据的方法,其包含:
从帧缓冲器中获取对应于由两个或者更多像素组成的拼贴的像素值;
更新所述像素值中的一个或者更多以得到更新的像素值;
基于用于所述拼贴的累积误差度量值,使用有损压缩操作或者无损压缩操作选择性地压缩所述更新的像素值;
如果使用有损压缩则更新所述累积误差度量值;以及
将所述被压缩的像素值存储在所述帧缓冲器中。
2.根据权利要求1所述的方法,其中选择性地压缩所述更新的像素值包含预测所述有损压缩对所述累积误差度量值的影响,以及基于所述预测的影响使用所述有损压缩操作或者所述无损压缩操作。
3.根据权利要求1所述的方法,其中选择性地压缩所述更新的像素值包含预测两个或者更多有损压缩操作对所述累积误差度量值的影响以及基于所述预测的影响选择所述无损压缩操作或者所述两个或者更多有损压缩操作中的一个。
4.根据权利要求1所述的方法,其中选择性地压缩所述更新的像素值包含如果所述累积误差度量值超出预先确定的门限则使用所述无损压缩操作,否则使用所述有损压缩操作。
5.根据权利要求4所述的方法,其中否则使用所述有损压缩操作包含基于所述累积误差度量值从两个或者更多候选的有损压缩操作中选择所述有损压缩操作。
6.根据权利要求4所述的方法,其中所述像素值包含像素色彩值,以及其中所述方法还包含基于所述更新的像素值是否包含α值选择所述预先确定的门限。
7.根据权利要求1所述的方法,其中所述无损压缩操作包含对于由基于近邻的像素值预测器产生的残留误差的熵编码。
8.根据权利要求7所述的方法,其中对于残留误差的熵编码包含Golomb-Rice编码。
9.根据权利要求1所述的方法,其中所述有损压缩操作包含对于所述更新的像素值的量化、子采样或者求平均中的一个或者更多。
10.根据权利要求1所述的方法,其中所述像素值包含像素色彩值以及其中所述有损压缩操作包含使用无损算法压缩所述更新的像素值的亮度分量以及使用有损算法压缩所述更新的像素值的色度分量。
11.根据权利要求10所述的方法,其中所述无损算法包含对用于所述更新的像素值的、由基于近邻的亮度值预测器产生的残留误差的Golomb-Rice编码,以及其中所述有损算法包含对于所述更新的像素值的所述亮度分量的量化、子采样或者求平均中的一个或者更多。
12.根据权利要求1所述的方法,其中所述像素值包含像素色彩值以及其中所述方法还包含在更新所述像素值中的一个或者更多之前将所述像素值从第一色彩空间变换到第二色彩空间以及在选择性地压缩所述更新的像素值之前将所述更新的像素值从所述第二色彩空间变换到所述第一色彩空间。
13.根据权利要求12所述的方法,其中所述第二色彩空间包含RGB色彩空间以及其中所述第一色彩空间包含对于所述第一色彩空间可逆的、精确到比特的变换。
14.根据权利要求13所述的方法,其中所述第一色彩空间包含YCoCg色彩空间。
15.一种用于处理图形数据的设备,其包含:
帧缓冲器以及
图形处理器,所述图形处理器被配置用来:
从所述帧缓冲器中获取对应于由两个或者更多像素组成的拼贴的像素值;
更新所述像素值中的一个或者更多以得到更新的像素值;
基于用于所述拼贴的累积误差度量值,使用有损压缩操作或者无损压缩操作选择性地压缩所述更新的像素值;
如果使用有损压缩则更新所述累积误差度量值;以及
将所述被压缩的像素值存储在所述帧缓冲器中。
16.根据权利要求15所述的设备,其中所述图形处理器被配置用来通过预测所述有损压缩对所述累积误差度量值的影响并且通过基于所述预测的影响使用所述有损压缩操作或者所述无损压缩操作从而选择性地压缩所述更新的像素值。
17.根据权利要求15所述的设备,其中所述图形处理器被配置用来通过预测两个或者更多有损压缩操作对所述累积误差度量值的影响并且通过基于所述预测的影响,选择所述无损压缩操作或者所述两个或者更多有损压缩操作中的一个从而选择性地压缩所述更新的像素值。
18.根据权利要求15所述的设备,其中所述图形处理器被配置用来在所述累积误差度量值超出预先确定的门限时则使用所述无损压缩操作来压缩所述更新的像素值,否则使用所述有损压缩操作来压缩所述更新的像素值。
19.根据权利要求18所述的设备,其中如果所述累积误差度量没有超出所述预先确定的门限,则所述图形处理器还被配置用来基于所述累积误差度量值从两个或者更多候选的有损压缩操作中选择所述有损压缩操作。
20.根据权利要求18所述的设备,其中所述像素值包含像素色彩值以及其中所述图形处理器还被配置用来基于所述更新的像素值是否包含α值选择所述预先确定的门限。
21.根据权利要求15所述的设备,其中所述像素值包含像素色彩值以及其中所述有损压缩操作包含使用无损算法压缩所述更新的像素值的亮度分量以及使用有损算法压缩所述更新的像素值的色度分量。
22.根据权利要求15所述的设备,其中所述像素值包含像素色彩值以及其中所述图形处理器还被配置用来在更新所述像素值中的一个或者更多之前将所述像素值从第一色彩空间变换到第二色彩空间以及用来在选择性地压缩所述更新的像素值之前将所述更新的像素值从所述第二色彩空间变换到所述第一色彩空间。
23.根据权利要求22所述的设备,其中所述第二色彩空间包含RGB色彩空间以及其中所述第一色彩空间包含对于所述第一色彩空间可逆的、精确到比特的变换。
24.根据权利要求23所述的设备,其还包含显示器以及显示器驱动器,其中所述显示器驱动器被配置用来:
从所述帧缓冲器中获取所述被存储、压缩、更新的像素值;
解压缩所述被获取、压缩的更新的像素值;
将所述更新的像素值从所述第一色彩空间变换到RGB色彩空间;以及
将所述被变换的、更新的像素值提供给所述显示器。
CN200880011504.6A 2007-04-04 2008-03-31 用于处理图形数据的方法和设备 Active CN101653005B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US91011207P 2007-04-04 2007-04-04
US60/910,112 2007-04-04
US11/953,339 US8031937B2 (en) 2007-04-04 2007-12-10 Frame buffer compression and decompression method for graphics rendering
US11/953,339 2007-12-10
PCT/EP2008/053810 WO2008122536A2 (en) 2007-04-04 2008-03-31 Frame buffer compression and decompression method for graphics rendering

Publications (2)

Publication Number Publication Date
CN101653005A true CN101653005A (zh) 2010-02-17
CN101653005B CN101653005B (zh) 2012-01-11

Family

ID=39826949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880011504.6A Active CN101653005B (zh) 2007-04-04 2008-03-31 用于处理图形数据的方法和设备

Country Status (8)

Country Link
US (1) US8031937B2 (zh)
EP (1) EP2143280B1 (zh)
CN (1) CN101653005B (zh)
AR (1) AR065940A1 (zh)
AT (1) ATE494733T1 (zh)
DE (1) DE602008004331D1 (zh)
ES (1) ES2359036T3 (zh)
WO (1) WO2008122536A2 (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103324475A (zh) * 2013-05-28 2013-09-25 机械工业第六设计研究院有限公司 基于ifc标准的bim模型渲染优化系统及方法
CN103686182A (zh) * 2013-12-13 2014-03-26 洪雪荣 一种屏幕显示信息的编码方法和编码系统
CN103957411A (zh) * 2014-04-08 2014-07-30 天津大学 基于cmos图像传感器的焦平面图像压缩装置
CN105279730A (zh) * 2014-07-25 2016-01-27 英特尔公司 对于动态生成的图形资源的压缩技术
CN106664405A (zh) * 2015-06-09 2017-05-10 微软技术许可有限责任公司 用调色板模式对经逸出编码的像素的稳健编码/解码
CN106651971A (zh) * 2015-11-04 2017-05-10 上海兆芯集成电路有限公司 图形数据压缩装置与图形数据压缩方法
CN109219832A (zh) * 2016-07-01 2019-01-15 英特尔公司 用于帧缓冲器压缩的方法和设备
CN110012292A (zh) * 2018-01-05 2019-07-12 澜至电子科技(成都)有限公司 用于压缩视频数据的方法和装置
CN110087082A (zh) * 2018-01-26 2019-08-02 三星电子株式会社 图像处理装置和用于操作图像处理装置的方法
CN110662049A (zh) * 2018-06-29 2020-01-07 想象技术有限公司 有保证的数据压缩
US10652576B2 (en) 2013-10-14 2020-05-12 Microsoft Technology Licensing, Llc Features of base color index map mode for video and image coding and decoding
US10812817B2 (en) 2014-09-30 2020-10-20 Microsoft Technology Licensing, Llc Rules for intra-picture prediction modes when wavefront parallel processing is enabled
CN113383496A (zh) * 2019-04-23 2021-09-10 西门子股份公司 数据处理系统和方法
CN114693818A (zh) * 2022-04-14 2022-07-01 北京道达天际科技有限公司 适用于数字正射影像数据的压缩方法

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8471862B2 (en) * 2007-03-09 2013-06-25 Ati Technologies Ulc Offset tiles in vector graphics
US8031937B2 (en) * 2007-04-04 2011-10-04 Telefonaktiebolaget Lm Ericsson (Publ) Frame buffer compression and decompression method for graphics rendering
KR101362757B1 (ko) * 2007-06-11 2014-02-14 삼성전자주식회사 인터 컬러 보상을 이용한 영상의 부호화 방법 및 장치,복호화 방법 및 장치
JP2009290389A (ja) * 2008-05-28 2009-12-10 Hitachi Ltd 画像処理装置
US8165393B2 (en) 2008-06-05 2012-04-24 Microsoft Corp. High dynamic range texture compression
US8508543B2 (en) * 2008-06-18 2013-08-13 Microsoft Corporation Layered texture compression architecture
US20090322777A1 (en) * 2008-06-26 2009-12-31 Microsoft Corporation Unified texture compression framework
JP4507265B2 (ja) * 2008-06-30 2010-07-21 ルネサスエレクトロニクス株式会社 画像処理回路、及びそれを搭載する表示パネルドライバ並びに表示装置
US8725690B1 (en) * 2008-12-19 2014-05-13 Emc Corporation Time and bandwidth efficient backups of space reduced data
US8560716B1 (en) 2008-12-19 2013-10-15 Emc Corporation Time and bandwidth efficient recoveries of space reduced data
TWI387314B (zh) * 2009-03-10 2013-02-21 Univ Nat Central Image processing apparatus and method thereof
US9530189B2 (en) 2009-12-31 2016-12-27 Nvidia Corporation Alternate reduction ratios and threshold mechanisms for framebuffer compression
US8605104B1 (en) * 2009-12-31 2013-12-10 Nvidia Corporation Threshold-based lossy reduction color compression
US8160137B2 (en) * 2010-03-03 2012-04-17 Mediatek Inc. Image data compression apparatus for referring to at least one characteristic value threshold to select target compression result from candidate compression results of one block and related method thereof
US8971413B2 (en) * 2010-05-24 2015-03-03 Intel Corporation Techniques for storing and retrieving pixel data
US9641823B2 (en) 2011-01-31 2017-05-02 Hewlett-Packard Development Company, L.P. Embedded light field display architecture to process and display three-dimensional light field data
US9948938B2 (en) 2011-07-21 2018-04-17 Texas Instruments Incorporated Methods and systems for chroma residual data prediction
US9899007B2 (en) 2012-12-28 2018-02-20 Think Silicon Sa Adaptive lossy framebuffer compression with controllable error rate
US9591309B2 (en) 2012-12-31 2017-03-07 Nvidia Corporation Progressive lossy memory compression
US10043234B2 (en) * 2012-12-31 2018-08-07 Nvidia Corporation System and method for frame buffer decompression and/or compression
US9607407B2 (en) 2012-12-31 2017-03-28 Nvidia Corporation Variable-width differential memory compression
EP2757794A1 (en) * 2013-01-22 2014-07-23 ViXS Systems Inc. Video processor with frame buffer compression and methods for use therewith
US9245324B2 (en) * 2013-05-23 2016-01-26 Intel Corporation Lossy color merge for multi-sampling anti-aliasing compression
US9832388B2 (en) 2014-08-04 2017-11-28 Nvidia Corporation Deinterleaving interleaved high dynamic range image by using YUV interpolation
GB2533109B (en) * 2014-12-09 2018-11-28 Gurulogic Microsystems Oy Encoder, decoder and method for data
KR102332782B1 (ko) * 2014-12-15 2021-11-30 삼성전자주식회사 시각 특성을 고려한 영상 데이터 압축
US9733721B2 (en) 2015-04-28 2017-08-15 Dell Products, L.P. Rendering graphics using framebuffer nodes with event handler mapping in a binary search tree
US9830457B2 (en) * 2015-05-05 2017-11-28 Dell Products, L.P. Unified extensible firmware interface (UEFI) credential-based access of hardware resources
KR102426669B1 (ko) * 2015-08-03 2022-07-28 삼성전자주식회사 경로 렌더링을 수행하는 방법 및 장치.
US9990691B2 (en) 2016-02-17 2018-06-05 Intel Corporation Ray compression for efficient processing of graphics data at computing devices
US10453169B2 (en) * 2016-03-28 2019-10-22 Intel Corporation Method and apparatus for multi format lossless compression
US10652583B2 (en) * 2016-08-19 2020-05-12 Apple Inc. Compression of image assets
US10332278B2 (en) * 2016-10-28 2019-06-25 Intel Corporation Multi-format range detect YCoCg compression
US9742434B1 (en) * 2016-12-23 2017-08-22 Mediatek Inc. Data compression and de-compression method and data compressor and data de-compressor
CN107071514B (zh) * 2017-04-08 2018-11-06 腾讯科技(深圳)有限公司 一种图片文件处理方法及智能终端
US10484685B2 (en) 2017-04-18 2019-11-19 Qualcomm Incorporated System and method for intelligent data/frame compression in a system on a chip
US10609418B2 (en) 2017-04-18 2020-03-31 Qualcomm Incorporated System and method for intelligent data/frame compression in a system on a chip
US20180308450A1 (en) * 2017-04-21 2018-10-25 Intel Corporation Color mapping for better compression ratio
US10552326B2 (en) * 2017-05-23 2020-02-04 International Business Machines Corporation Reducing cache thrashing for counts in hot cache lines
KR20220015556A (ko) 2020-07-31 2022-02-08 삼성전자주식회사 이미지 처리 장치 및 프레임 버퍼 컴프레서

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4364089A (en) * 1979-10-31 1982-12-14 Westinghouse Electric Corp. Binary correlation video tracker
US5191406A (en) 1990-04-20 1993-03-02 Nikon Corporation Method and apparatus for rapid scanning of color images
US5416787A (en) * 1991-07-30 1995-05-16 Kabushiki Kaisha Toshiba Method and apparatus for encoding and decoding convolutional codes
US5793371A (en) 1995-08-04 1998-08-11 Sun Microsystems, Inc. Method and apparatus for geometric compression of three-dimensional graphics data
US5864342A (en) 1995-08-04 1999-01-26 Microsoft Corporation Method and system for rendering graphical objects to image chunks
US5886701A (en) 1995-08-04 1999-03-23 Microsoft Corporation Graphics rendering device and method for operating same
KR20000005110A (ko) * 1996-03-29 2000-01-25 윌리암 제이. 버크 지각 메트릭을 이용하는 이미지 코딩시스템에서 엔코딩 최적화및 자동 조정가능 이미지 압축을 위한 장치 및 방법
US6002728A (en) * 1997-04-17 1999-12-14 Itt Manufacturing Enterprises Inc. Synchronization and tracking in a digital communication system
GB2339989B (en) 1998-05-19 2002-11-27 Lsi Logic Corp Method and apparatus for decoding video data
US7058218B1 (en) 1998-09-28 2006-06-06 Silicon Graphics, Inc. Method of and apparatus for compressing and uncompressing image data
US6504954B1 (en) * 1999-02-05 2003-01-07 Raytheon Company Closed loop piecewise-linear histogram specification method and apparatus
US6377257B1 (en) 1999-10-04 2002-04-23 International Business Machines Corporation Methods and apparatus for delivering 3D graphics in a networked environment
US6873323B1 (en) 2000-08-02 2005-03-29 Ati International, Srl Video graphics system that includes custom memory and supports anti-aliasing and method therefor
US6842484B2 (en) * 2001-07-10 2005-01-11 Motorola, Inc. Method and apparatus for random forced intra-refresh in digital image and video coding
US7630563B2 (en) * 2001-07-19 2009-12-08 Qualcomm Incorporated System and method for decoding digital image and audio data in a lossless manner
US6771261B2 (en) * 2001-08-30 2004-08-03 Intel Corporation Error metric for mesh simplification processing
KR100450823B1 (ko) 2001-11-27 2004-10-01 삼성전자주식회사 깊이 이미지 기반 3차원 물체의 표현을 위한 노드 구조
US6825847B1 (en) 2001-11-30 2004-11-30 Nvidia Corporation System and method for real-time compression of pixel colors
US20040217956A1 (en) 2002-02-28 2004-11-04 Paul Besl Method and system for processing, compressing, streaming, and interactive rendering of 3D color image data
US6748323B2 (en) 2002-07-31 2004-06-08 Thales North America, Inc. Displaying data
US7764833B2 (en) 2003-02-13 2010-07-27 Ati Technologies Ulc Method and apparatus for anti-aliasing using floating point subpixel color values and compression of same
US7126615B2 (en) 2004-11-12 2006-10-24 Via Technologies, Inc. Color compression using multiple planes in a multi-sample anti-aliasing scheme
US8031937B2 (en) * 2007-04-04 2011-10-04 Telefonaktiebolaget Lm Ericsson (Publ) Frame buffer compression and decompression method for graphics rendering
US8824567B2 (en) * 2007-04-04 2014-09-02 Ittiam Systems (P) Ltd. Method and device for tracking error propagation and refreshing a video stream
US20100060629A1 (en) * 2008-09-09 2010-03-11 Jim Rasmusson Graphics-Processing Architecture Based on Approximate Rendering

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103324475A (zh) * 2013-05-28 2013-09-25 机械工业第六设计研究院有限公司 基于ifc标准的bim模型渲染优化系统及方法
US10652576B2 (en) 2013-10-14 2020-05-12 Microsoft Technology Licensing, Llc Features of base color index map mode for video and image coding and decoding
CN103686182B (zh) * 2013-12-13 2016-12-21 洪雪荣 一种屏幕显示信息的编码方法和编码系统
CN103686182A (zh) * 2013-12-13 2014-03-26 洪雪荣 一种屏幕显示信息的编码方法和编码系统
CN103957411A (zh) * 2014-04-08 2014-07-30 天津大学 基于cmos图像传感器的焦平面图像压缩装置
CN105279730A (zh) * 2014-07-25 2016-01-27 英特尔公司 对于动态生成的图形资源的压缩技术
CN105279730B (zh) * 2014-07-25 2019-08-20 英特尔公司 对于动态生成的图形资源的压缩技术
US10812817B2 (en) 2014-09-30 2020-10-20 Microsoft Technology Licensing, Llc Rules for intra-picture prediction modes when wavefront parallel processing is enabled
CN106664405A (zh) * 2015-06-09 2017-05-10 微软技术许可有限责任公司 用调色板模式对经逸出编码的像素的稳健编码/解码
US10659783B2 (en) 2015-06-09 2020-05-19 Microsoft Technology Licensing, Llc Robust encoding/decoding of escape-coded pixels in palette mode
CN106651971A (zh) * 2015-11-04 2017-05-10 上海兆芯集成电路有限公司 图形数据压缩装置与图形数据压缩方法
CN106651971B (zh) * 2015-11-04 2020-06-05 上海兆芯集成电路有限公司 图形数据压缩装置与图形数据压缩方法
CN109219832A (zh) * 2016-07-01 2019-01-15 英特尔公司 用于帧缓冲器压缩的方法和设备
CN109219832B (zh) * 2016-07-01 2024-03-01 英特尔公司 用于帧缓冲器压缩的方法和设备
CN110012292A (zh) * 2018-01-05 2019-07-12 澜至电子科技(成都)有限公司 用于压缩视频数据的方法和装置
CN110087082A (zh) * 2018-01-26 2019-08-02 三星电子株式会社 图像处理装置和用于操作图像处理装置的方法
CN110662049A (zh) * 2018-06-29 2020-01-07 想象技术有限公司 有保证的数据压缩
CN113383496A (zh) * 2019-04-23 2021-09-10 西门子股份公司 数据处理系统和方法
CN114693818A (zh) * 2022-04-14 2022-07-01 北京道达天际科技有限公司 适用于数字正射影像数据的压缩方法

Also Published As

Publication number Publication date
ATE494733T1 (de) 2011-01-15
CN101653005B (zh) 2012-01-11
AR065940A1 (es) 2009-07-15
EP2143280A2 (en) 2010-01-13
ES2359036T3 (es) 2011-05-17
EP2143280B1 (en) 2011-01-05
US20080247641A1 (en) 2008-10-09
US8031937B2 (en) 2011-10-04
WO2008122536A2 (en) 2008-10-16
WO2008122536A3 (en) 2009-01-08
DE602008004331D1 (de) 2011-02-17

Similar Documents

Publication Publication Date Title
CN101653005B (zh) 用于处理图形数据的方法和设备
JP5214742B2 (ja) 予測に基づく画像処理
EP2128822B1 (en) Index-based pixel block processing
US8144981B2 (en) Texture compression based on two hues with modified brightness
US8331664B2 (en) Prediction-based image processing
US8457417B2 (en) Weight based image processing
US8335385B2 (en) Pixel block processing
US7693337B2 (en) Multi-mode alpha image processing
US20070076971A1 (en) Compression of images for computer graphics
JP2008532083A (ja) 画像データをフレームメモリに一時的に記憶する新たな圧縮フォーマットを用いる新たな圧縮フォーマット及び装置
CN103262531B (zh) 用于在图块编码中在像素值缓冲器中存储压缩比率指示的方法和设备
CN110971904B (zh) 一种图像压缩的控制方法
US20210256734A1 (en) Texture Compression
JP4995969B2 (ja) 行傾きコードワード及び列傾きコードワードを使用する画素ブロック値の可逆圧縮のための方法、圧縮器、伸張器及び信号表現
WO2003081898A1 (en) Image data compression device, image data compression method, recording medium, and program
EP4443879A1 (en) Image processing device and operating method thereof
KR20240143634A (ko) 이미지 처리 장치 및 이미지 처리 장치의 동작 방법
JP2002218500A (ja) 減色処理装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: IDTP BHA CO., LTD.

Free format text: FORMER OWNER: TELEFONAKTIEBOLAGET LM ERICSSON (SE) S-126 25 STOCKHOLM, SWEDEN

Effective date: 20141020

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20141020

Address after: Delaware

Patentee after: IDTP Holdings, Inc.

Address before: Stockholm

Patentee before: Telefonaktiebolaget LM Ericsson

TR01 Transfer of patent right

Effective date of registration: 20230801

Address after: Delaware

Patentee after: Interactive Digital VC Holdings

Address before: Delaware

Patentee before: IDTP Holdings, Inc.

TR01 Transfer of patent right