CN101399982B - 图像压缩控制方法及装置 - Google Patents
图像压缩控制方法及装置 Download PDFInfo
- Publication number
- CN101399982B CN101399982B CN 200710162257 CN200710162257A CN101399982B CN 101399982 B CN101399982 B CN 101399982B CN 200710162257 CN200710162257 CN 200710162257 CN 200710162257 A CN200710162257 A CN 200710162257A CN 101399982 B CN101399982 B CN 101399982B
- Authority
- CN
- China
- Prior art keywords
- current block
- mean value
- image compression
- pixel
- compression control
- 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
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
一种图像压缩控制方法及装置。首先,压缩一当前块。将该压缩的当前块的像素大小平均值与先前块的像素大小平均值予以平均,以得到一平均值。如果平均值不大于目标值,则输出压缩的当前块;否则,删除未压缩的当前块的像素的一部分位,并输出该位删除的当前块。
Description
技术领域
本发明涉及图像压缩,特别是涉及一种动态控制图像压缩的像素大小的方法及装置。
背景技术
图像压缩普遍用于减小数字图像的数据大小,以便于进行后续的各种图像处理、图像存储或传输。以图像传输为例,系统设计者无不想办法让压缩后的像素大小不至超过系统带宽,如此才能获得可靠的传输,且不会造成编码器(传送器)或解码器(接收器)的缓冲器溢位(overflow)问题。
没有一种压缩或编码方法可以普遍适用于所有种类的图像或其系统中。更糟的是,有些压缩或编码方法不但不能减小某些图像的数据大小,反而会不当增加其数据量。
鉴于上述原因,因此亟需提出一种方法及装置,其可动态控制图像的压缩或编码,用于防止缓冲器溢位及数据不当增加等问题。
发明内容
鉴于上述,本发明的目的之一是提出一种图像压缩控制方法及装置,用于动态控制图像的压缩或编码,以防止缓冲器溢位及数据不当的增加。
根据上述的目的,本发明提供一种图像压缩控制方法。首先,压缩一当前块。将该块像素大小平均值与先前块的像素大小平均值予以平均,以得到一平均值。如果平均值不大于一目标值,则输出压缩的当前块;否则,删除未压缩的当前块的像素的一部分位,并输出位删除的当前块,其中,上述的目标值代表一个不会造成溢位的系统带宽。
根据一实施例,本发明提供一种图像压缩控制装置。一压缩器压缩当前块。一压缩控制器将当前块像素大小平均值与先前块的像素大小平均值予以平均,以得到一平均值。如果平均值不大于一目标值,则输出压缩的当前块。如果平均值大于目标值,则由位删除器删除未压缩的当前块的像素的一部分 位,并输出位删除的当前块,其中,上述的目标值代表一个不会造成溢位的系统带宽。
附图说明
图1A显示本发明实施例的图像压缩方法的流程图。
图1B显示本发明实施例的图像压缩装置的方块图。
图1C例示根据图1A、图1B所进行的图像压缩的图像像素。
图2A显示本发明实施例的图像解压缩(decompression)方法的流程图。
图2B显示本发明实施例的图像解压缩装置的方块图。
附图符号说明
10-15 图1A图像压缩的步骤
20 压缩器
22 缓冲器
24 压缩控制器
26 位删除器
30-33 图2A图像解压缩的步骤
40 解压缩器
42 缓冲器
44 解压缩控制器
46 复原器。
具体实施方式
图1A显示本发明实施例的图像压缩方法的流程图,图1B则显示该实施例相关的图像压缩装置的方块图。图1C例示根据图1A、图1B所进行的图像压缩的图像像素。为了说明简便起见,图式中仅显示出帧(frame)其中一条线的部分。
在进行压缩的一开始,图1C所示的像素被组成多个块(block),如附图中虚线所示。在此例子中,每一个块由四个相邻像素所组成。例如,相邻像素10、11、13、13组成块#n,接下来的相邻像素20、128、200、255组成块#n+1。然而,本发明所使用块的像素数目并不限定于四个;并且,每一块的像素数目可以是固定的,也可以是变动的。
接下来,这些块将依序由压缩器(compressor)20来进行压缩或编码(步骤10)。在本说明书中,实施例主要使用“压缩”一词,然而本发明也同样 适用于“编码”技术,因此,这两个词在本说明书中是可以互换使用的。在本实施例中,寄存于缓冲器22的块#n先进行压缩。为了便于说明起见,使用差动脉冲编码调制(DPCM)作为压缩方法,主要是鉴于相邻像素之间通常会具有相近的亮度值;然而,其它的压缩方法也可以适用。在差动脉冲编码调制(DPCM)方法中,以后像素亮度值减去前像素亮度值;这些差值显示于图1C及表一的第二栏。
表一
原始值 | DPCM | 熵编码 (二进制) | 像素大小 位/像素 |
10 | 10-10=0 | 0 | 1×3=3 |
11 | 11-10=1 | 100 | 3×3=9 |
13 | 13-11=2 | 1101 | 4×3=12 |
13 | 13-13=0 | 0 | 1×3=3 |
总和= 24×4=96 平均值= 96/4=24 | 总和=27 平均值= 27/4=6.7 |
在本实施例中,针对差动脉冲编码调制(DPCM)的结果再进行另一压缩-熵编码(entropy coding),例如Huffman编码;然而,其它实施例并不一定要使用两次压缩。在熵编码(entropy coding)中,较常出现的DPCM码被编以较短码,而较少出现的DPCM码则被编以较长码。此种压缩编码属于一种变长码(variable-length code),其结果显示在表一的第三栏,其像素大小则显示在表一的第四栏,单位为位/像素(bits/pixel)。其中,每一列的位数均乘以3,其理由是每一像素由红(R)、绿(G)、蓝(B)所共同合成显示。由表一的最后一列可以得知,四个像素从压缩前的96位(或平均24bits/pixel)变成压缩后的27位(或6.7bits/pixel)。换句话说,此块像素的压缩率为3.5。
接着,将当前块#n的像素大小平均值与先前一个(或前多个)块的像素大小平均值予以平均,以得到一平均值。其中,上述的先前块是指已经过压缩或位删除的块(步骤11)。在实施例中,以压缩控制器(compression controller)24,根据压缩器(compressor)20的输出及寄存的先前块的像素大小平均值,用于得到该平均值。例如,假设寄存的先前块(直到块#n-1)的像素大小平均值为11.3bits/pixel,则该平均值即为9(=(11.3+6.7)/2)bits/pixel。
在步骤12,将前一步骤所得到的平均值与一目标(target)值作比较。其中,目标值代表一个不会造成编码器或解码器的缓冲器溢位的系统带宽,在本实施例中为12位/像素1。假如平均值不大于目标值,则压缩控制器24将让压缩器20的结果进行输出(步骤13),并抑制删除器(truncator)26。相反的,假如平均值大于目标值,则压缩控制器24将抑制压缩器20,并启动删除器(truncator)26针对当前块的原始像素值进行位删除编码(truncation coding)(步骤14),再将经位删除的结果作为输出(步骤15)。有关于位删除编码将于以下配合块#n+1例子作详述。对于例示中的当前块#n,由于平均值(亦即9)不大于目标值(亦即12),因此压缩器20的压缩结果将作为输出(步骤13)。
接下来,针对当前寄存于缓冲器22的块#n+1进行压缩(亦即,进行差动脉冲编码调制(DPCM)及熵编码(entropy coding))。差动脉冲编码调制(DPCM)的结果显示在图1C及表二的第二栏,而熵编码的结果则显示在表二的第三栏,其像素大小则显示在表二的第四栏,单位为位/像素(bits/pixel)。
表二
原始值 | DPCM | 熵编码 (二进制) | 像素大小 位/像素 |
20 | 20-13=7 | 0111 | 4×3=12 |
128 | 128-20=10 8 | 11110 | 5×3=15 |
200 | 200-128=7 2 | 101100 | 6×3=18 |
255 | 255-200=5 5 | 111110 | 6×3=18 |
总和= 24×4=96 平均值= | 总和=63 平均值= 63/4=15.7 |
96/4=24 |
由表二的最后一列可以得知,四个像素从压缩前的96位(或平均24bits/pixel)变成压缩后的63位(或15.7bits/pixel)。
接着,将压缩的当前块#n+1的像素大小平均值与先前一个(或前多个)块的像素大小平均值予以平均,以得到一平均值(步骤11)。在此例子中,先前块(直到块#n)的像素大小平均值为9bits/pixel,则上述的平均值即为12.3(=(9+15.7)/2)bits/pixel。
在步骤12,将前一步骤所得到的平均值与目标(target)值作比较。在这个例子中,由于平均值(亦即12.3)大于目标值(亦即12),因此压缩控制器24将抑制压缩器20,并启动删除器(truncator)26针对当前块#n+1的原始(未经压缩)像素值进行位删除编码(truncation coding)(步骤14),再将经位删除的结果进行输出(步骤15)。在实施例中,是将像素亮度值的一个或多个最低有效位(LSB)予以删除(truncation),使得位删除后的像素大小平均值不会大于目标(target)值。例如,在本例子中,是将像素每一颜色的四个最低有效位(LSB)予以删除。表三的第二栏、第三栏分别显示位删除前、后的像素位。经位删除后,当前块#n+1的像素大小平均值为12bits/pixel。将此像素大小平均值与先前块(直到块#n)的像素大小平均值(亦即9)予以平均,因而得到一更新的平均值为10.5(=(9+12)/2)。
表三
原始值 | 位删除前 (二进制) | 位删除后 (二进制) |
20 | 00010100 | 0001 |
128 | 10000000 | 1000 |
200 | 11001000 | 1100 |
255 | 11111111 | 1111 |
对于块#n+1,压缩控制器24将会让表三的位删除结果作为输出(步骤15),而非表二所示的压缩结果。
图2A显示本发明实施例的图像解压缩(decompression)方法的流程图,图2B则显示该实施例相关的图像解压缩装置的方块图。
在解压缩的一开始,解压缩控制器(decompression controller)44判定寄存于缓冲器42的像素是否曾受到位删除(步骤30)。该判定通常是检视压缩器(或编码器)传输过来的标题(header)内容。如果此步骤的判定结果为否定的(亦即,像素未曾受到位删除),则这些像素即由解压缩器(decompressor)40进行解压缩(步骤31);其是进行与压缩器20相反的(inverse)运算操作。相反的,如果步骤30的判定结果为肯定的(亦即,像素曾经受到位删除),则这些像素将藉由复原器(reconstructor)46来进行位复原(步骤32),用于将被删除的最低有效位(LSB)予以复原。例如,在该最低有效位(LSB)的位置补入位“0”或“1”。在本例子中,块#n+1是在位于位置[3:0]补上位“0”,如表四第三栏所示。
表四
原始值 | 删除后 (二进制) | 复原后 (二进制) | 无条件进位 (二进制) |
20 | 0001 | 00010000 | 00011000 |
128 | 1000 | 10000000 | 10001000 |
200 | 1100 | 11000000 | 11001000 |
255 | 1111 | 11110000 | 11111000 |
在本实施例中,更进行步骤33的无条件进位(unconditional carry),亦即,将该补入的最低有效位(LSB)当中的最高位以位“1”(亦即,carry)来替代。在这个例子中,共有四个最低有效位(LSB),而其最高位(亦即,从右边数来第四位)以“1”(carry)来代替。此步骤主要是用于补偿位删除时的数据损失,以降低失真度。
根据本实施例,本发明可以在压缩(或编码)时动态地选择适当的压缩/编码方法,使得像素大小不至超过系统带宽,因而得以避免缓冲器溢位。藉此,压缩器/解压缩器或者编码器/解码器得以运作于最高速度而不会有溢位发生。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的申请专利范围;凡其它未脱离发明所揭示的精神下所完成的等效改变或修饰,均应包含在本发明的申请专利范围内。
Claims (13)
1.一种图像压缩控制方法,包含:
压缩一包含数个像素的当前块;
将该压缩的当前块的像素大小平均值与先前块的像素大小平均值予以平均,以得到一平均值;
如果该平均值不大于一目标值,则输出该压缩的当前块;及
如果该平均值大于该目标值,则删除未压缩的该当前块的像素的一部分位,并输出该位删除的当前块,
其中,上述的目标值代表一个不会造成溢位的系统带宽。
2.如权利要求1所述的图像压缩控制方法,其中,上述未压缩的当前块的像素的一或多个最低有效位被删除,使得该位删除的像素大小平均值不会大于该目标值。
3.如权利要求2所述的图像压缩控制方法,更包含:
传输该压缩或位删除的当前块;及
判定该传输的当前块是否曾被位删除。
4.如权利要求3所述的图像压缩控制方法,更包含:
如果该传输当前块被判定未曾被位删除,则将该传输当前块予以解压缩;及
如果该传输当前块被判定曾被位删除,则将该传输当前块的删除位予以复原。
5.如权利要求4所述的图像压缩控制方法,其中,上述的传输当前块在位删除的位置补入位。
6.如权利要求5所述的图像压缩控制方法,更包含:
将该补入位的最高位以一进位位替代。
7.一种图像压缩控制装置,包含:
压缩器,用于压缩包含数个像素的当前块;
压缩控制器,用于将该压缩的当前块的像素大小平均值与先前块的像素大小平均值予以平均,以得到一平均值,且如果该平均值不大于一目标值,则输出该压缩的当前块;及
位删除器,如果该平均值大于该目标值,则删除未压缩的该当前块的像素的一部分位,并输出该位删除的当前块,
其中,上述的目标值代表一个不会造成溢位的系统带宽。
8.如权利要求7所述的图像压缩控制装置,其中,上述位删除器将未压缩的该当前块的像素的一或多个最低有效位予以删除,使得该位删除的像素大小平均值不会大于该目标值。
9.如权利要求7所述的图像压缩控制装置,更包含:
缓冲器,用于寄存该当前块。
10.如权利要求8所述的图像压缩控制装置,更包含:
解压缩控制器,用于判定传输的当前块是否曾被位删除。
11.如权利要求10所述的图像压缩控制装置,更包含:
解压缩器,如果该传输当前块被判定未曾被位删除,则将该传输当前块予以解压缩;及
复原器,如果该传输当前块被判定曾被位删除,则将该传输当前块的删除位予以复原。
12.如权利要求11所述的图像压缩控制装置,其中,上述的复原器在位删除的位置补入位。
13.如权利要求12所述的图像压缩控制装置,其中,上述的复原器将该补入位的最高位以一进位位替代。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710162257 CN101399982B (zh) | 2007-09-30 | 2007-09-30 | 图像压缩控制方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710162257 CN101399982B (zh) | 2007-09-30 | 2007-09-30 | 图像压缩控制方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101399982A CN101399982A (zh) | 2009-04-01 |
CN101399982B true CN101399982B (zh) | 2010-12-01 |
Family
ID=40518193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710162257 Expired - Fee Related CN101399982B (zh) | 2007-09-30 | 2007-09-30 | 图像压缩控制方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101399982B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107172428B (zh) * | 2017-06-06 | 2019-06-28 | 西安万像电子科技有限公司 | 图像的传输方法、装置和系统 |
CN115606178A (zh) * | 2021-05-10 | 2023-01-13 | 京东方科技集团股份有限公司(Cn) | 图像数据的传输方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1568008A (zh) * | 2003-06-24 | 2005-01-19 | 矽统科技股份有限公司 | 利用初始量化位阶预估的动态影像压缩位元率控制方法及装置 |
CN1608381A (zh) * | 2001-12-27 | 2005-04-20 | 皇家飞利浦电子股份有限公司 | 受复杂度约束的数据压缩中的动态控制 |
CN1767653A (zh) * | 2005-11-08 | 2006-05-03 | 上海广电(集团)有限公司中央研究院 | 一种码率控制方法 |
CN1846252A (zh) * | 2003-09-30 | 2006-10-11 | 索尼株式会社 | 数据再现设备、方法和程序 |
-
2007
- 2007-09-30 CN CN 200710162257 patent/CN101399982B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1608381A (zh) * | 2001-12-27 | 2005-04-20 | 皇家飞利浦电子股份有限公司 | 受复杂度约束的数据压缩中的动态控制 |
CN1568008A (zh) * | 2003-06-24 | 2005-01-19 | 矽统科技股份有限公司 | 利用初始量化位阶预估的动态影像压缩位元率控制方法及装置 |
CN1846252A (zh) * | 2003-09-30 | 2006-10-11 | 索尼株式会社 | 数据再现设备、方法和程序 |
CN1767653A (zh) * | 2005-11-08 | 2006-05-03 | 上海广电(集团)有限公司中央研究院 | 一种码率控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101399982A (zh) | 2009-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101737294B1 (ko) | 심볼 압축을 수반하는 데이터의 소스 코딩 및 디코딩을 위한 방법들 및 디바이스들 | |
CN101039374B (zh) | 一种图像无损压缩方法 | |
CN100476858C (zh) | 基于小波变换的图像编解码器中获得编码增益的方法、装置和系统 | |
US7162091B2 (en) | Intra compression of pixel blocks using predicted mean | |
CN101335897B (zh) | 图像压缩/解码方法及系统 | |
US20020106019A1 (en) | Method and apparatus for implementing motion detection in video compression | |
US10003356B2 (en) | Devices and methods of source-encoding and decoding of data | |
CN101242531A (zh) | 为小尺寸或全尺寸播放提供独立编码链的视频编码系统 | |
US8810439B1 (en) | Encoder, decoder and method | |
US20010048769A1 (en) | Method and system for compressing motion image information | |
US8933826B2 (en) | Encoder apparatus, decoder apparatus and method | |
WO2005001760B1 (en) | Fast loss less image compression system based on neighborhood comparisons | |
US20140010445A1 (en) | System And Method For Image Compression | |
US6584226B1 (en) | Method and apparatus for implementing motion estimation in video compression | |
CN101399982B (zh) | 图像压缩控制方法及装置 | |
RU2611249C1 (ru) | Модификатор энтропии и способ его использования | |
CN100425066C (zh) | 图像压缩的方法 | |
CN103746701B (zh) | 一种用于Rice无损数据压缩的快速编码选项选择方法 | |
US5699122A (en) | Method and apparatus for encoding a video signal by using a modified block truncation coding method | |
GB2488094A (en) | Image compression using sum and difference pixel replacement and lowest bit discarding | |
US7925101B2 (en) | Apparatus for controlling image compression | |
EP2383700A1 (en) | System and method for image compression | |
Krainyk | Combined Run-Length and Huffman Encoding for Image Compression | |
US20070036445A1 (en) | Method and apparatus of efficient lossless data stream coding | |
JPH0898208A (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 | ||
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: 20101201 Termination date: 20180930 |