[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN102075761A - 图像压缩系统、图像解压缩方法及存储器频宽降低方法 - Google Patents

图像压缩系统、图像解压缩方法及存储器频宽降低方法 Download PDF

Info

Publication number
CN102075761A
CN102075761A CN2011100522845A CN201110052284A CN102075761A CN 102075761 A CN102075761 A CN 102075761A CN 2011100522845 A CN2011100522845 A CN 2011100522845A CN 201110052284 A CN201110052284 A CN 201110052284A CN 102075761 A CN102075761 A CN 102075761A
Authority
CN
China
Prior art keywords
mentioned
image data
entropy
value
data value
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
CN2011100522845A
Other languages
English (en)
Other versions
CN102075761B (zh
Inventor
洪洲
廖群峰
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.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
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 Via Technologies Inc filed Critical Via Technologies Inc
Publication of CN102075761A publication Critical patent/CN102075761A/zh
Application granted granted Critical
Publication of CN102075761B publication Critical patent/CN102075761B/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
    • G06T9/00Image coding
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/182Methods 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 a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供一种图像数据压缩系统、图像数据解压缩方法及存储器频宽降低方法。所述图像数据解压缩方法,用于一像素区块中的一图像数据,上述方法包括:取得位于一象限中的多个通道的每一个的一熵参数;取得位于象限中的各通道的一熵部分;依据分别与各通道中的多个噪声部分有关的熵部分的位长度,决定各通道的噪声部分的位长度;对熵部分及噪声部分进行解码;对解码后的各熵部分及各噪声部分乘以所取得的熵参数,以得到多个乘积;使用一反向重叠及交插机制以映射乘积的一加总值;移除象限中的各像素之间的一预测关系式。

Description

图像压缩系统、图像解压缩方法及存储器频宽降低方法
技术领域
本发明涉及图像处理系统,特别涉及数据压缩及解压缩的图像数据处理系统。
背景技术
图像处理器为计算机系统中的一特制处理器,以将图形描绘的工作由微处理器转移出来。图像处理器用以加速存储器需求密集的工作(memory-intensive work),例如纹理映射(texture mapping)及多边形描绘(polygon rendering)等,以及将顶点旋转(rotation)及转换(translation)至不同的坐标系统的工作。一些图像处理器亦包括了可编程的着色器(shader)、超采样(oversampling)与内插法(interpolation)等技术,以及超高准确度的色彩空间(color space),其中着色器用以使用许多由微处理器所支持的运算以控制顶点及纹理,超采样(oversampling)与内插法用以减少锯齿(aliasing)。
发明内容
本发明提供一种图像数据压缩系统,用以压缩多个图像数据值,上述图像数据压缩系统包括:一差分计算器,用以计算上述图像数据值在一像素区块中的多个相邻像素之间的多个差值;一预测器,用以依据计算所得的上述差值,预测上述像素区块中各像素的一预测值;一预测误差计算器,用以依据计算所得的上述预测值,计算上述像素区块中各像素的一预测误差值;一映射器,用以将上述各预测误差值映射至一正数数据值以产生多个映射数据值;一熵参数计算器,用以决定一熵参数;一除法器,用以将上述各映射数据值除以上述熵参数以产生一熵部分及一噪声部分;以及一编码器,用以对上述熵部分及上述噪声部分进行编码,其中上述熵参数满足下列二关系式:
[EntropyL(K)-EntropyL(K+2)]>[NoiseL(K+2)-NoiseL(K)];以及[EntropyL(K-2)-EntropyL(K)]>[NoiseL(K)-NoiseL(K-2)];
其中,EntropyL表示上述熵部分的位长度;NoiseL表示上述噪声部分的位长度;以及K表示上述熵参数。
依据本发明的另一实施例,本发明还提供一存储器频宽降低方法。上述存储器频宽降低方法,包括:分布一像素区块中接近于0的多个图像数据值,以将多余的图像数据值降至最低,其中像素区块包括多个象限;决定是否对所分布的图像数据值进行编码;以及决定对所分布的图像数据值进行编码后,依据一编码指示信号,对象限中的一个中的至少一图像数据值进行编码,其中编码的步骤包括决定一熵参数,以及将图像数据值的正值除以熵参数,以产生一熵部分及一噪声部分。
依据本发明的另一实施例,本发明还提供一种图像数据解压缩方法,用于一像素区块中的一图像数据,上述方法包括:取得位于一象限中的多个通道的每一个的一熵参数;取得位于象限中的各通道的一熵部分;依据分别与各通道中的多个噪声部分有关的熵部分的位长度,决定各通道的噪声部分的位长度;对熵部分及噪声部分进行解码;对解码后的各熵部分及各噪声部分乘以所取得的上述熵参数,以得到多个乘积;使用一反向重叠及交插机制以映射乘积的一加总值;以及移除象限中的各像素之间的一预测关系式。
本发明所公开的其他系统、方法、特征及改进之处当可用下列附图及说明书内容以清楚呈现,且可被本领域技术人员所了解。本发明的其他系统、方法、特征及改进之处均属于本发明的范围,且已在说明书中清楚公开,并当被其所附带的权利要求书要求保护的范围所保护。
附图说明
图1A是显示依据本发明的一实施例的视频图像系统的方块图。
图1B是显示依据本发明一实施例的视频图像系统中的编解码器的方块图。
图2是显示依据本发明一实施例的压缩图像数据的流程图。
图3是显示依据本发明一实施例以箭头表示像素区块的差值计算的方块图。
图4是显示依据本发明一实施例以箭头表示像素区块的预测的方块图。
图5是显示依据本发明另一实施例的图像数据压缩方法的流程图。
图6是显示依据本发明一实施例的图像数据解压缩方法的流程图。
图7是显示依据本发明另一实施例的图像数据解压缩方法的流程图。
图8是显示依据本发明一实施例的编码指示信号及其定义表。
【主要元件符号说明】
110~视频图像系统;144~映射器;
120~处理装置;    145~熵参数计算器;
122~输入输出接口;146~编码器;
124~存储器;      147~除法器;
126~显示器;      148~编码指示信号产生器;
128~图像卡接口;  149~象限分析器;
129~数据总线;    150~编码指示信号评估器;
130~图像处理单元;151~位长度计算器;
140~编解码器;    152~乘法器;
141~差分计算器;  153~解码器;
142~预测器;      160~快取存储器。
143~预测误差计算器;
200、500~图像数据压缩方法;
300~像素区块;
320、420~箭头;
450~顶列;
460~最左栏;
600、700~图像数据解压缩方法。
具体实施方式
本发明公开一种于图像处理单元中进行图像数据压缩及解压缩的图像处理系统。因为在图像处理单元中进行绘图已愈来愈复杂及专精,中介绘图物件(intermediate render target)常用以当做绘图纹理(texture,又称之为材质)。在一些情况下,这些中介绘图物件的色彩格式(Color format)为一高动态范围(High dynamic range,HDR)格式,高动态范围格式会消耗大量的存储器频宽以对绘图纹理进行读写。通过本发明提供的图像处理系统及方法来进行压缩,可降低存储器频宽的消耗可达到47%至87%。
在压缩之前,图像数据包括多个帧(frame),且各帧包括多个像素区块(pixel block)。各像素区块包括多个像素,且像素区块被分割为4个象限。本发明提供图像处理系统及方法以逐一象限的方式对图像数据进行压缩或解压缩。
依据本发明的一些实施例,其细节会详述于后,本发明的图像数据处理方法包括分布原本(未压缩)接近0的图像数据以将多余的图像数据减至最低。接着,计算相邻像素之间的差值;预测图像数据值;计算各像素的一预测误差值,预测误差值通常为小于预测图像数据值的一数值,以更进一步减少图像数据。预测误差值可为正数或负数,且分布至接近0。
为了将预测误差值置入一编码格式,预测误差值会映射至正值。这些正值会除以一熵参数(entropy parameter)且以产生一熵部分(entropy part、商数)以及一噪声部分(noise part、余数)。在除以熵参数之前,每个预测误差值的熵参数已决定,以做为压缩流程的一部分,且熵参数可确保熵部分的位长度及噪声部分的位长度为最佳的位长度,细节将于后讨论。接着,对熵部分进行一元编码,并对噪声部分进行二元编码。
在一些实施例中,加入了编码指示信号以指示是否对图像数据进行编码。当一象限中的图像数据大部分为0或极小的数值时,编码指示信号可决定忽略一象限中的图像数据的映射、熵参数的决定、除法、编码等动作。
图1A是显示依据本发明的一实施例的视频图像系统的方块图。在一些实施例中,视频图像系统110可为任何变化的计算装置、有线或无线的计算装置,例如桌上型计算机、便携式计算机、专用服务器计算机、多处理器计算装置、手机、PDA、手持或笔式计算机、嵌入式设备等等,但不限定于此。
在图1A的实施例中的视频图像系统110包括一处理装置120、一输入输出接口122、一存储器124、一显示器126以及一图像卡接口128,其中上述各装置通过数据总线129与其他装置进行沟通。显示器126是显示视频,举例来说,显示器126包括计算机屏幕、等离子屏幕和/或液晶显示器。
处理装置120包括定制或是商业用的处理器、中央处理器(CPU)或是与视频图像系统110有关的多处理器中的一辅助处理器、一半导体处理器(以微芯片的形式)、一宏处理器(macroprocessor)、特定应用集成电路(ASIC)、多个经过适当设置的数字逻辑门,以及其他已知的电性配置(configuration),其包括离散元件可单独或以不同组合的方式以协调计算机系统的整体运作。
输入输出接口122提供多个接口用以输入及输出数据。举例来说,当视频图像系统110包括一个人计算机,上述接口会与使用者输入装置相连接,例如键盘或鼠标。当视频图像系统110包括一手持装置(例如:PDA或手机),上述接口会与功能键或按钮及触控式屏幕等相连接。
存储器124包括一或多个易失性存储元件(例如:随机存取存储器(RAM,如DRAM或SRAM等))以及非易失性存储元件(例如:ROM、硬盘、磁带、CDROM等)。存储器124存储数据,以及本地的操作系统(native operating system)、一或多个本地的应用、模拟系统、任何操作系统和/或模拟硬件平台的模拟应用、模拟操作系统等。本领域技术人员当可理解存储器124可包括其他元件,在此为了简化而省略。
图像卡接口128包括一图像处理单元130,以提供某些函数(functions)可编程的流程,例如像素着色(pixel shading)。图像处理单元130可用一分散(separate)的协处理器(coprocessor)来实现,以进行除了处理装置120之外的特定化(specialized)处理流程。在操作这些特定化处理流程时,图像处理单元130可释放(free)处理装置120以进行其他工作。在一实施例中,图像处理单元130与处理装置120位于视频图像系统110的一主机板(图未显示)。然而,在其他应用中,本领域技术人员当了解图像处理单元130可位于分开但电性连接的接口卡,如图1A所示的图像卡接口128。图1A所示的图像处理单元130包括一编解码器140(包括模块141-153)以及一快取存储器160。
图1B是显示依据本发明一实施例的视频图像系统110中的编解码器140的其中一例。进一步来说,编解码器140包括一差分计算器141、一预测器142、一预测误差计算器143、一映射器144、一熵参数计算器145、一编码器146、一除法器147、一编码指示信号产生器148、一象限分析器149、一编码指示信号评估器150、一位长度计算器151、一乘法器152以及一解码器153。在压缩图像数据的过程中,模块141-153均会被使用到。模块141-153的操作细节会在后面详述。
当编解码器140中的多个模块由软件实现时,应注意软件可存储于各种计算机可读介质(computer-readable medium)以执行或连接各种计算机相关的系统或方法。上述计算机可读介质是存储程序或与其沟通,用以使用或连接执行指令的系统、设备及装置。举例来说,计算机可读介质可以为一电性、磁性、光学、电磁性、红外线或半导体的系统、设备或装置,但不限定于此。
又,应了解任何在流程图中的流程叙述或方块可代表模块、区段或部分程序代码,其包括一或多个可执行的指令以实现于流程中的特定逻辑函数或步骤,皆仍属本发明权利要求书涵盖的范围内且大凡依本发明所公开的内容所作的等效变化,皆仍属本发明权利要求书涵盖的范围内,例如本发明的函数可不依序执行,包括本质上的同时执行或依反向顺序执行,取决于与何种函数功能有关,上述本发明所公开的内容当被本领域技术人员所了解。
图2是显示依据本发明一实施例的压缩图像数据方法的流程图。图像数据被分割为多个帧(frame),且各帧包括了多个像素区块。图3是显示依据本发明一实施例的像素区块300的方块图。每个像素Pij值表示在一特定像素位置的像素参数值,且如图3所示的像素区块300包括像素P11-P44。像素P11-P44的每一个均具有多个通道(channel)以表示不同的颜色或其他信息。又,像素区块300系分割为4个象限:第一象限、第二象限、第三象限、第四象限,以利压缩图像数据。
再参考图2,在步骤S202中,使用差分计算器141以计算在一像素区块中相邻像素的图像数据值的一阶离散差值。如图3所示的像素区块300,其包括箭号320以代表差值(difference)计算。需注意在此实施例中,角落像素为最左上的像素P11定义为一参考值。箭号320由与减数相关的像素指向至与被减数相关的像素,且代表减数由被减数减除。举例来说,与像素P14相关的图像数据值由与像素P13相关的图像数据值中减除以产生差值。
下列的方程式表示与像素Pij相关的图像数据值的差值计算:
dZ = Z i , j - Z i , j + 1 , 1 ≤ i ≤ d , j ≥ 1 Z i + 1 , j - Z i , j , 1 ≤ i ≤ d , j = 1 式(1)
其中,当像素区块为方形时,d表示像素区块300的维度。换句话说,d表示表示像素区块中的一列或一栏中的像素数目。在此实施例中,d等于4,因为图3所示的像素区块300为一4x4的像素区块,但本发明不限于此。因为这些计算系描述相邻像素的图像数据值之间的差值,这些计算也可表示为一梯度或一阶离散差值。
再参考图2,在步骤S204中,依据步骤S202计算所得的一阶离散差值,使用预测器142计算像素区块中的各像素的一预测值。
图4是显示依据本发明一实施例以箭头表示像素区块的预测的方块图。具体来说,图4是显示图3中的像素区块300,其包括箭头420以表示顶列450及最左栏460的预测。对于顶列450及最左栏460来说,各箭头420由与用于预测的参数值相关的像素指向预测值。在此实施例中,像素区块300中角落像素数值亦即最左上像素P11的数值被编码以做为一参考值。对于顶列450中的像素P12至P14(不包括最左上像素P11)来说,依据左边相邻像素的数值以预测像素P12至P14的各像素的数值。举例来说,像素P12的数值依据像素P11的数值来预测,像素P13的数值依据像素P12的数值来预测。同样地,对于最左栏460中的像素P21至P41(不包括最左上像素P11),依据上方相邻像素的数值以预测像素P21至P41的各像素的数值。举例来说,像素P21的数值依据像素P11的数值来预测,像素P31的数值依据像素P21的数值来预测。
对于剩余的像素P22至P44来说(不在顶列450或最左栏460中的像素),其预测依据至少一部分的预测位,预测位表示依据左边相邻像素的参数值或上方相邻像素的参数值以决定是否要预测。预测位由是否可计算出最小差值所决定,且计算最小差值依据左边相邻像素的数值或上方相邻像素的数值的预测。
在步骤S206中,使用预测误差计算器143依据各像素Pij的预测值以计算各像素Pij的预测误差值。计算所得的预测误差值可包括正数及负数。
步骤S202至S206可有效地分布接近于0的图像数据以减少多余的图像数据,并减少用以表示图像数据的位数量。在一些实施例中,有许多4x4的像素区块被一三角形围绕,像素区块中的像素均处于一共同平面(common plane),则绝大部分像素的预测误差值会是0,因此可减少编码的图像数据数量。
在步骤S208中,使用一重叠及交插机制将分布的图像数据映射至正值。换句话说,第n个负预测误差值(例如:-n)被映射至第n个奇数(2n-1),且第m个正预测误差值被映射至第m个偶数(2m)。此映射可用下列数学式来表示:
x′=2|x|=2x,x≥0          式(2)
y′=2|y|-1=-2y-1,y<0     式(3)
其中x表示一正预测误差值;x’表示一映射正值;y表示一负预测误差值;y’表示一映射负值。因此,步骤S208的操作结果为映射后的数据值,且均为正数。
在步骤S210至S226中,使用一编码指示信号产生器148以决定是否对上述映射数据值进行编码,且在像素区块300中依逐一象限的方式决定。如图3所示,第一象限为包括与参考值相关的角落像素P11的象限。因为第一象限包括角落像素,将额外的位加入参考值中,用以让第一象限可单独于其他象限进行编码及解码,其细节将详述于后。步骤S210至S226叙述了使用编码指示信号产生器148以操作第二象限、第三象限和/或第四象限、及非第一象限的映射数据值。
具体来说,在步骤S210中,编码指示信号产生器148决定一象限中的所有映射数据值是否等于0。如果一象限中的所有映射数据值等于0,则在步骤S212中,编码指示信号产生器148设定(或是在另一些实施例中,产生)一编码指示信号为「00」。编码指示信号为2位的标志,用以表示在象限中的任意映射数据值是否有经过编码。这可以让本发明的图像数据压缩方法避开后述的编码过程,以减少压缩图像数据的时间。如果在像素区块300中的所有象限均已被压缩,本发明的图像数据压缩方法会接着分析下一象限或下一像素区块。
在步骤S214中,如果一象限中的所有映射数据值均不等于0,编码指示信号产生器148决定一象限中的3个映射数据值是否等于0,以及上述象限中的一映射数据值是否小于3。如果3个映射数据值等于0,且1个映射数据值小于3,在步骤S216中,编码指示信号产生器148设定(或在另一些实施例中,产生)一编码指示信号等于「01」。更进一步,在步骤S218中,编码指示信号产生器148标记非0的数值以及非0数值的位置。编码指示信号为2位的标志,用以表示在上述象限中的任意映射数据值是否有经过编码。这可以让本发明的图像数据压缩方法避开后述的编码过程,以减少压缩图像数据的时间。如果在像素区块300中的所有象限均已被压缩,本发明的图像数据压缩方法会接着分析下一象限或下一像素区块。
在步骤S220中,当3个映射数据值不等于0,且同时1个映射数据值不小于3时,编码指示信号产生器148决定象限中的所有映射数据值是否均小于或等于3,且至少2个映射数据值不等于0。如果在象限中的所有映射数据值均小于或等于3,且至少2个映射数据值不等于0,接着在步骤S222中,编码指示信号产生器148设定(或在另一些实施例中,产生)编码指示信号为「10」。此外,在步骤S224,映射数据值并未被编码且包含于压缩图像数据中。这可以让本发明的图像数据压缩方法避开后述的编码过程,以减少压缩图像数据的时间。如果在像素区块300中的所有象限均已被压缩,本发明的图像数据压缩方法会接着分析下一象限或下一像素区块。
图8是显示依据本发明一实施例的编码指示信号及其定义表,通过显示与编码指示信号值有关象限中的图像数据值,以总结编码指示信号值及表示是否对象限中的图像数据值进行编码。
在步骤S226中,如果一象限中的所有映射数据值均不小于或等于3,或有至少2个映射数据值等于0,编码指示信号产生器148决定象限中至少1个映射数据值是否大于3。如果1个映射数据值大于3,接着在步骤S228中,编码指示信号产生器148设定(或在另一些实施例中,产生)编码指示信号为「11」。因为在象限中的至少1个映射数据值大于3,本发明的图像数据压缩方法会在步骤S230中,继续对象限中的1或多个映射数据值进行编码。
具体来说,在步骤S230中,熵参数计算器145对象限中的各通道中的各像素计算一熵参数K,熵参数K满足下列关系式,以将熵参数减少2:
[EntropyL(K)-EntropyL(K+2)]>[NoiseL(K+2)-NoiseL(K)]式(4)
[EntropyL(K-2)-EntropyL(K)]/<[NoiseL(K)-NoiseL(K-2)]式(5)
其中,EntropyL表示熵部分的位长度;NoiseL表示噪声部分的位长度。换句话说,当(a)熵部分的位长度的增加小于噪声部分的位长度的减少;以及(b)下一个熵参数K的减少会导致熵部分的位长度的增加,且熵部分的位长度长于噪声部分的位长度时,可计算出熵参数K。
本发明的图像数据压缩机制所采用的策略为递回地使用贪婪算法(greedy algorithm)由最大值至0且逐次递减2,用以寻找象限中各通道的熵参数K。举例来说,当每个通道有8位,熵参数K评估于6开始,且当每个通道有16位,熵参数K评于于14开始。熵参数K每次都减少2,上述通道的噪声部分位长度会减少8(4个像素,每像素减少2)。更进一步,熵参数K每次减少2,熵部分位长度会增加。不过,本发明的图像数据压缩机制可让熵参数K由每次减少2替代为每次减少1,而每次让熵参数K减少1的方式的助益很小,且会增加计算的复杂度。
在步骤S232,除法器147将各通道的映射数据值除以与各通道相关的熵参数K。具体来说,每个映射数据值除以可调整的熵参数K,以产生并分为两部分:一熵部分及一噪声部分。熵部分为商数,噪声部分为余数。对象限中的各通道来说,决定熵参数用以让整体的编码长度最佳化。
在步骤S234,各通道的熵部分及噪声部分均分别被编码。编码后的熵部分包含于最高有效位(most significant bits,MSB)中,且编码后的噪声部分包含于最低有效位(least significant bits,LSB)。熵部分的编码使用一元编码,噪声部分的编码使用二元编码。一元编码为一种编码方式,其表示一自然数n,其在n-1个1之后接1个0。举例来说,依据一元编码,数字5会被编码为11110。或者,自然数n也可被编码为n-1个0之后接1个1。
又,在一些实施例中,第一象限的熵参数被分割为两部分。举例来说,如果角落像素的熵参数分别为Kr、Kg、Kb及Ka,这些熵参数会被分割为两部分。(Kr+Kg+Kb+Ka)的较高32位会被送至压缩图像数据的标头(head)。更进一步,当与噪声部分相关的熵部分等于1时,对(Kr+Kg+Kb+Ka)的较低位进行编码。
关于如何组织数据的信息,数据是否为有号数或无号数、浮点格式或固定格式,对图像数据压缩方法200的效能来说不是必需的。当图像数据为z表面数据时,如图2所示的图像数据压缩方法200对压缩图像数据特别有用。
图5是显示依据本发明另一实施例的图像数据压缩方法的流程图,除了一些显著的差异,其与图2所示的图像数据压缩方法相似。在步骤S502,差分计算器141计算一像素区块中的图像数据值的差值。在一些实施例中,图像数据为多采样反锯齿(multi-sample anti-aliasing,MSAA)数据,各像素包括多样本(sample),样本0由其他样本中减除。在另一些实施例中,一阶离散差值、梯度和/或斜率由计算相邻像素之间的差值所产生,如同图2所示的图像数据压缩方法200中的步骤S202。另一个差异为图5中并没有依据象限中的映射数据值以决定是否进行编码相关的步骤。换句话说,图5所示的图像数据压缩方法并未置入编码指示信号。
上述内容已公开本发明不同的图像数据压缩方法,在此将公开本发明的图像数据解压缩方法。举例来说,图6是显示依据本发明一实施例的图像数据解压缩方法600的流程图。图像数据解压缩方法600对于经由图2所示的图像数据压缩方法200进行压缩的图像数据特别有用。
在步骤S602,由一象限中的压缩图像数据中读取一编码指示信号。在步骤S604,使用象限分析器149以决定上述象限是否为第一象限。第一象限包括与像素区块的参考值有关的角落像素。在一些实施例中,象限分析器149决定欲分析的上述象限是否为4个欲分析的象限中的第1象限。举例来说,参考图3,象限分析器149决定上述象限是否为第一象限。换句话说,象限分析器149决定目前欲分析的象限是否包括角落像素(例如像素区块300中的最左上像素P11)。如果上述象限为第一象限,则由压缩图像数据中读取与角落像素相关的参考值,且参考值被传送做为一解压缩图像数据值。
在步骤S608,如果上述象限不为第一象限,编码指示信号评估器150决定编码指示信号(2位标志)是否等于「00」。如果编码指示信号等于00,在步骤S610中,将象限中的所有图像数据值填入0,且将各图像数据值传送做为解压缩图像数据值。
在步骤S612,如果编码指示信号不等于00,编码指示信号评估器150决定编码指示信号是否等于「01」。如果编码指示信号等于01,在步骤S614中,读取非0图像数据值的数值及位置,且在步骤S616中,将象限中的其余图像数据值填入0,并将各图像数据值传送以做为解压缩图像数据值。
在步骤S618,如果编码指示信号不等于01,编码指示信号评估器150决定编码指示信号是否等于「10」。如果编码指示信号等于10,则在步骤S620中,读取在象限中的各图像数据值,并将各图像数据值传送以做为解压缩图像数据值。
在步骤S622,如果编码指示信号不等于10,编码指示信号评估器150决定编码指示信号是否等于「11」。如果编码指示信号等于11,则在步骤S624,读取在象限中的各图像数据值,并将小于3的图像数据值传送以做为解压缩图像数据值,大于或等于3的图像数据值会更进一步在步骤S626至S638中进行处理。
在步骤S626,取得大于或等于3的图像数据值的熵参数。在步骤S627,取得各图像数据值的熵部分及噪声部分。因为熵部分的编码为一元编码,熵部分为自定界(self-delimited)。在步骤S628,使用位长度计算器151依据分别与各噪声部分相关的熵部分的位长度,以决定各通道的噪声部分的位长度。
在步骤S630,使用解码器153对熵部分及噪声部分进行解码。因为熵部分的编码为一元编码,因此可反推一元编码以对熵部分进行解码。同样地,因为噪声部分的编码为二元编码,因此可反推二元编码以对噪声部分进行解码。
在步骤S632,使用乘法器152将已解码的熵部分及噪声部分乘以取得的熵参数,并将乘积加总。
在步骤S634,使用映射器144以一反向重叠及交插机制以映射乘积加总值。具体来说,偶数的乘积加总值除以2。更进一步,将奇数的乘积加总值加1,并将新的乘积加总值除以-2。此计算结果为分布接近于0的正及负图像数据值。
在步骤S636,使用预测器142读取预测位,且预测与象限中的像素相关的数值。参考图4,在像素区块300中的位在顶列450及最左栏460的像素不具有预测位。角落像素(在此实施例中为像素P11)为一参考值,且对于顶列450来说,各图像数据值依据左边相邻像素的数值以进行预测。因此,与像素P12相关的数值依据与像素P11相关的数值以进行预测。同样地,对于最左栏460,各图像数据值依据与上方像素相关的数值以进行预测。因此,与像素P21相关的数值依据与像素P11相关的数值以进行预测。对于像素区块300中其余的像素,各数值依据预测位以进行预测。预测位表示是否依据左边相邻像素的数值或上方相邻像素的数值以进行预测。在象限中的像素之间的预测关系亦被移除。
在步骤S637,原始(未压缩)图像数据反推一阶离散差值的计算以进行恢复。换句话说,亦即反推如图3所示的差值计算。将在步骤S636中所预测与像素有关的数值加入相邻像素。举例来说,将像素P12的预测值加至与像素P11相关的参考值以产生与像素P12相关的原始图像数据。更进一步,将与像素P13相关的预测值加至上述计算所得与像素P12相关的原始图像数据以产生与像素P13相关的原始图像数据。同样地,将像素P21的预测值加至与像素P11相关的参考值以产生与像素P21相关的原始图像数据。更进一步,将与像素P31相关的预测值加至上述计算所得与像素P21相关的原始图像数据以产生与像素P31相关的原始图像数据。
在步骤S638,当压缩图像数据已经解压缩,将解压缩图像数据传送至要求解压缩图像数据的装置或应用。
图7是显示依据本发明另一实施例的图像数据解压缩方法700,除了一些显著的差异,其与图6所示的图像数据解压缩方法600相似。图像数据解压缩方法700对于如使用图5的图像数据压缩方法500压缩的图像数据以进行解压缩特别有用。图7所示的图像数据解压缩方法700不使用如图6的编码指示信号的方式。除此之外,图6的步骤S637已在图7中省略。因此,无法反推一阶离散差值的计算。在一些实施例中,图像数据为多采样反锯齿(multi-sample anti-aliasing,MSAA)数据,各像素包括多样本(sample),如同前述内容,样本0由其他样本中减除。在这些实施例中,将在压缩过程中扣除的样本0加入与各像素相关的数值以恢复原始图像数据值。
图2、5、6及7的流程图是显示本发明的架构、功能及操作等等可能的实现方式。就这点而言,各步骤表示一模块、分割或部分程序代码,其包括一或多个可执行的指令以实现特定逻辑函数。需注意到在一些另外的实现方式中,在图2、5、6及7中的各步骤可不依照顺序发生。举例来说,在图2、5、6及7中的连续两个步骤实际上可能是本质地同时执行,或是步骤有时会以反向的顺序执行,端视与何种函数功能有关。
然而以上所述仅为本发明的优选实施例而已,当不能以此限定本发明实施的范围,即大凡依本发明权利要求书及发明说明内容所作的简单的等效变化与修饰,皆仍属本发明权利要求书要求保护的范围内。另外本发明的任一实施例或权利要求不须达成本发明所公开的全部目的或优点或特点。此外,摘要部分和标题仅是用以辅助专利文件搜寻之用,并非用以限制本发明的权利范围。

Claims (20)

1.一种图像数据压缩系统,用以压缩多个图像数据值,上述图像数据压缩系统包括:
一差分计算器,用以计算上述图像数据值在一像素区块中的多个相邻像素之间的多个差值,其中上述像素区块包括多个像素;
一预测器,用以依据计算所得的上述差值,预测上述像素区块中上述各像素的一预测值;
一预测误差计算器,用以依据计算所得的上述预测值,计算上述像素区块中上述各像素的一预测误差值;
一映射器,用以将上述各预测误差值映射至一正数数据值以产生多个映射数据值;
一熵参数计算器,用以决定一熵参数;
一除法器,用以将上述各映射数据值除以上述熵参数以产生一熵部分及一噪声部分;以及
一编码器,用以对上述熵部分及上述噪声部分进行编码,其中上述熵参数满足下列二关系式:
[EntropyL(K)-EntropyL(K+2)]>[NoiseL(K+2)-NoiseL(K)];以及
[EntropyL(K-2)-EntropyL(K)]>[NoiseL(K)-NoiseL(K-2)];
其中,EntropyL表示上述熵部分的位长度;NoiseL表示上述噪声部分的位长度;以及K表示上述熵参数。
2.如权利要求1所述的图像数据压缩系统,其中上述熵参数计算器还用以降低上述熵参数,直到上述关系式满足为止。
3.如权利要求2所述的图像数据压缩系统,其中上述熵参数计算器还用以将上述熵参数减少2,直到上述关系式满足为止。
4.如权利要求1所述的图像数据压缩系统,其中上述编码器还对上述熵部分进行一元编码,并对上述噪声部分进行二元编码。
5.如权利要求1所述的图像数据压缩系统,还包括一编码指示信号评估器,用以依据一编码指示信号决定是否对上述映射数据值进行编码,
其中上述熵参数计算器于决定对上述映射数据值进行编码后,决定上述熵参数;
其中上述除法器于决定对上述映射数据值进行编码后,将上述各映射数据值除以上述熵参数;
其中上述编码器于决定对上述映射数据值进行编码后,对上述熵部分及上述噪声部分进行编码。
6.如权利要求1所述的图像数据压缩系统,其中上述预测误差数值依据一重叠及交插机制以映射至多个正数据值。
7.如权利要求1所述的图像数据压缩系统,其中对与一角落像素有关的一图像数据值进行编码以做为一参考值,
其中,包括上述角落像素的一列定义为一顶列,并且包括上述角落像素的一栏定义为一最左栏;
其中,在上述顶列中,除了上述角落像素之外的各像素数据值依据各左边相邻像素的数据值进行预测;以及
其中,在上述最左栏中,除了上述角落像素之外的上述各像素数据值依据各上方相邻像素的数据值进行预测。
8.如权利要求7所述的图像数据压缩系统,其中除了位于上述顶列及最左栏的上述像素之外的各像素数据值依据一预测位以进行预测。
9.一种存储器频宽降低方法,包括:
分布一像素区块中接近于0的多个图像数据值,以将多余的上述图像数据值降至最低,其中上述像素区块包括多个象限;
决定是否对所分布的上述图像数据值进行编码;以及
决定对所分布的上述图像数据值进行编码后,依据一编码指示信号,对上述象限中的一个中的至少一图像数据值进行编码,其中上述编码的步骤包括决定一熵参数,以及将上述图像数据值的正值除以上述熵参数,以产生一熵部分及一噪声部分。
10.如权利要求9所述的存储器频宽降低方法,其中当在上述象限中的上述至少一图像数据值大于3时,对上述至少一图像数据值进行编码。
11.如权利要求9所述的存储器频宽降低方法,还包括:当上述编码指示信号是显示上述象限中所有的图像数据值等于0时,传送未编码的上述至少一图像数据值。
12.如权利要求9所述的存储器频宽降低方法,还包括:当上述编码指示信号指示在上述象限中有3个上述图像数据值等于0,且有上述图像数据值的一个小于或等于3时,传送未编码的上述至少一图像数据值。
13.如权利要求9所述的存储器频宽降低方法,还包括:当上述编码指示信号指示在上述象限中的所有上述图像数据值小于或等于3,且上述图像数据值中有至少二个不等于0时,传送未编码的上述至少一图像数据值。
14.如权利要求9所述的存储器频宽降低方法,其中决定上述熵参数的步骤还包括:将上述熵参数减少2,直到上述熵部分的位长度的增加小于上述噪声部分的位长度的减少,并且上述熵参数K的下一次减少会导致上述熵部分的位长度增加,且上述熵部分的位长度长于上述噪声部分的位长度。
15.一种图像数据解压缩方法,用于一像素区块中的一图像数据,上述方法包括:
取得位于一象限中的多个通道的每一个的一熵参数;
取得位于上述象限中的各通道的一熵部分;
依据分别与各通道中的多个噪声部分有关的上述熵部分的位长度,决定上述各通道的上述噪声部分的位长度;
对上述熵部分及上述噪声部分进行解码;
对解码后的上述各熵部分及各噪声部分乘以所取得的上述熵参数,以得到多个乘积;
使用一反向重叠及交插机制以映射上述乘积的一加总值;以及
移除上述象限中的各像素之间的一预测关系式。
16.如权利要求15所述的图像数据解压缩方法,其中上述象限为一第一象限,且已压缩的上述图像数据的前32位包括上述第一象限中的四个通道中的每一个的一熵参数。
17.如权利要求16所述的图像数据解压缩方法,其中上述图像数据为一z表面数据,且上述图像数据解压缩方法还包括:依据一编码指示信号以决定对上述z表面数据的一数值进行解码。
18.如权利要求17所述的图像数据解压缩方法,还包括:依据上述图像数据中的相邻像素之间的多个一阶离散差值,以产生多个解压缩图像数据值。
19.如权利要求18所述的图像数据解压缩方法,还包括:读取一预测位。
20.如权利要求16所述的图像数据解压缩方法,还包括:决定上述象限是否为包括一参考值的上述第一象限。
CN201110052284.5A 2010-11-17 2011-03-04 图像压缩系统、图像解压缩方法及存储器频宽降低方法 Active CN102075761B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/948,042 2010-11-17
US12/948,042 US8428375B2 (en) 2010-11-17 2010-11-17 System and method for data compression and decompression in a graphics processing system

Publications (2)

Publication Number Publication Date
CN102075761A true CN102075761A (zh) 2011-05-25
CN102075761B CN102075761B (zh) 2013-04-10

Family

ID=44034083

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110052284.5A Active CN102075761B (zh) 2010-11-17 2011-03-04 图像压缩系统、图像解压缩方法及存储器频宽降低方法

Country Status (3)

Country Link
US (1) US8428375B2 (zh)
CN (1) CN102075761B (zh)
TW (1) TWI423172B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109308461A (zh) * 2018-09-06 2019-02-05 广东智媒云图科技股份有限公司 一种车型图片修复训练样本的生成方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9330475B2 (en) * 2012-05-01 2016-05-03 Qualcomm Incorporated Color buffer and depth buffer compression
US9311721B1 (en) 2013-04-04 2016-04-12 Sandia Corporation Graphics processing unit-assisted lossless decompression
US9607574B2 (en) 2013-08-09 2017-03-28 Apple Inc. Video data compression format
CN113554547B (zh) * 2020-04-24 2024-09-10 北京小米移动软件有限公司 图像处理方法、装置、终端设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005217943A (ja) * 2004-01-30 2005-08-11 Ntt Docomo Inc 画像圧縮装置、画像再生装置、画像圧縮方法、画像再生方法、画像圧縮プログラム、及び画像再生プログラム
CN101047859A (zh) * 2006-03-31 2007-10-03 株式会社东芝 图像编码装置和图像解码装置
US20080069396A1 (en) * 2006-09-14 2008-03-20 Microsoft Corporation Visual Perception Model For Hi-Fidelity Image Watermarking
CN101411201A (zh) * 2006-03-27 2009-04-15 松下电器产业株式会社 图像编码装置以及图像解码装置
JP2010041454A (ja) * 2008-08-06 2010-02-18 Weigang Xu 画像圧縮装置、画像伸張装置、画像圧縮プログラムおよび画像伸張プログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2387058A (en) * 2002-03-28 2003-10-01 Sony Uk Ltd Method of selecting a quantisation parameter using trial parameters
US7173971B2 (en) * 2002-11-20 2007-02-06 Ub Video Inc. Trailing artifact avoidance system and method
JP4194479B2 (ja) * 2003-11-20 2008-12-10 キヤノン株式会社 画像処理装置及び方法、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
BRPI0418423A (pt) * 2004-02-27 2007-05-15 Thomson Licensing técnica de ocultação de erro utilização previsão ponderada
JP2007043651A (ja) * 2005-07-05 2007-02-15 Ntt Docomo Inc 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム
US8059902B2 (en) * 2006-10-31 2011-11-15 Ntt Docomo, Inc. Spatial sparsity induced temporal prediction for video compression
KR101403341B1 (ko) * 2007-03-28 2014-06-09 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
US20090116736A1 (en) * 2007-11-06 2009-05-07 Copanion, Inc. Systems and methods to automatically classify electronic documents using extracted image and text features and using a machine learning subsystem
US8831087B2 (en) * 2008-10-06 2014-09-09 Qualcomm Incorporated Efficient prediction mode selection
US20100098156A1 (en) * 2008-10-16 2010-04-22 Qualcomm Incorporated Weighted prediction based on vectorized entropy coding
WO2010110126A1 (ja) * 2009-03-23 2010-09-30 株式会社エヌ・ティ・ティ・ドコモ 画像予測符号化装置、画像予測符号化方法、画像予測符号化プログラム、画像予測復号装置、画像予測復号方法、及び画像予測復号プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005217943A (ja) * 2004-01-30 2005-08-11 Ntt Docomo Inc 画像圧縮装置、画像再生装置、画像圧縮方法、画像再生方法、画像圧縮プログラム、及び画像再生プログラム
CN101411201A (zh) * 2006-03-27 2009-04-15 松下电器产业株式会社 图像编码装置以及图像解码装置
CN101047859A (zh) * 2006-03-31 2007-10-03 株式会社东芝 图像编码装置和图像解码装置
US20080069396A1 (en) * 2006-09-14 2008-03-20 Microsoft Corporation Visual Perception Model For Hi-Fidelity Image Watermarking
JP2010041454A (ja) * 2008-08-06 2010-02-18 Weigang Xu 画像圧縮装置、画像伸張装置、画像圧縮プログラムおよび画像伸張プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109308461A (zh) * 2018-09-06 2019-02-05 广东智媒云图科技股份有限公司 一种车型图片修复训练样本的生成方法

Also Published As

Publication number Publication date
US20120121198A1 (en) 2012-05-17
TW201222479A (en) 2012-06-01
TWI423172B (zh) 2014-01-11
CN102075761B (zh) 2013-04-10
US8428375B2 (en) 2013-04-23

Similar Documents

Publication Publication Date Title
US11276203B2 (en) Point cloud compression using fixed-point numbers
US20210258617A1 (en) Hierarchical Point Cloud Compression
US9147264B2 (en) Method and system for quantizing and squeezing base values of associated tiles in an image
CN102075761B (zh) 图像压缩系统、图像解压缩方法及存储器频宽降低方法
US8019166B2 (en) Image data compression method and apparatuses, image display method and apparatuses
US8180165B2 (en) Accelerated screen codec
US11257252B2 (en) Image coding apparatus, probability model generating apparatus and image compression system
CN113170140B (zh) 编码数据元素的方法与解码数据流的方法、装置、介质
US10158858B2 (en) Method and system for index compression for fixed block size texture formats and for non-linear interpolation of index values along an edge in a tile
US10440360B2 (en) Video processing system
Klöwer et al. Compressing atmospheric data into its real information content
CN102497545A (zh) 内容自适应和艺术可引导可缩放视频编码
CN101626504B (zh) 一种高速jpeg解码的方法
KR102194615B1 (ko) 그래픽 애플리케이션을 위한 타일 기반 압축 및 압축 해제
Martel Compressed matrix computations
US10186236B2 (en) Universal codec
US8817875B2 (en) Methods and systems to encode and decode sequences of images
CN105208394A (zh) 一种实时数字图像压缩预测方法与系统
CN103597828A (zh) 图像量化参数编码方法和图像量化参数解码方法
US11882295B2 (en) Low-power high throughput hardware decoder with random block access
US20230334618A1 (en) Block-Based Random Access Capable Lossless Graphics Asset Compression
US20230334735A1 (en) 2D Rendering Hardware Architecture Based on Analytic Anti-Aliasing
Yi et al. A fast video decoding technique by means of converting input video stream into forward-oriented format stream in little-endian systems
TW202344054A (zh) 用於二維渲染管線中的顏色資料的硬體編碼器
WO2023201104A1 (en) Destination update for blending modes in a graphics pipeline

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