CN105554504B - 基于升降序元组的索引图编码和解码方法 - Google Patents
基于升降序元组的索引图编码和解码方法 Download PDFInfo
- Publication number
- CN105554504B CN105554504B CN201510933456.8A CN201510933456A CN105554504B CN 105554504 B CN105554504 B CN 105554504B CN 201510933456 A CN201510933456 A CN 201510933456A CN 105554504 B CN105554504 B CN 105554504B
- Authority
- CN
- China
- Prior art keywords
- tuple
- ascending order
- descending
- index value
- bit
- 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
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开一种可降低算法复杂度及提高编码效率的基于升降序元组的索引图编码和解码方法,该方法首先将索引图中两两相邻的索引值组成一个二元组序列,利用升序标记表和降序标记表来标记升降序的二元组在索引图中出现的位置信息,然后自适应地为每个二元组分配码字,最后采用上下文自适应的二进制算术编码对升序标记表、降序标记表和二元组码字实现压缩。解码端采用上述过程的逆过程即可重构原始索引图。
Description
技术领域
本发明涉及图像压缩编码领域,尤其是一种可降低算法复杂度及提高编码效率的基于升降序元组的索引图编码和解码方法。
背景技术
一方面,随着数字图书馆的兴起,大量纸质资料被扫描成数字图像格式,虽然节省了馆藏空间,但同时也对计算机的存储空间提出更高要求;另一方面,视频会议、远程教学、云计算、还有个人移动终端等的应用越来越普及,越来越多的应用要求把本地计算机屏幕显示的内容传输到远程终端上并显示,以实现屏幕共享,有些应用甚至要求两台计算机实现实时响应,这就对计算机屏幕图像的传输提出了实时性要求。
要解决上述的扫描文本存储问题和屏幕图像实时传输问题,高效的压缩编码是关键技术之一。扫描文本、屏幕图像和传真图像等的一个显著特点是均混合了文本、图形和自然图像等不同类型的内容,故此又被称为“复合图像(Compound Image)”。虽然目前存在多种典型的图像压缩算法,如JPEG、JPEG 2000、Djvu、MRC等,但是JPEG主要针对连续色调的自然图像编码,却无法很好地满足文本图像对压缩率和质量的要求;Djvu、MRC等算法虽然能够兼顾文本图像的特点实现编码,可是其算法复杂度均较高。在此背景下,设计一种专门针对文本/图形图像的高效编码算法就显得非常迫切和必要。
由于文本图像是典型的非连续色调图像,包含的灰度值较少,于是研究者们提出了一种调色板—索引图算法。该算法的主要思想是将图像中出现次数最多的若干种灰度值作为基色,并分别为其指定不同索引值从而建立调色板,再将图像中每个像素的灰度值用对应的索引值替代便形成了一幅索引图,进而对索引图进行编码即可达到压缩图像的目的。具体地讲,普遍采用4种基色,再用某个量化步长将其它灰度值量化成基色,不能量化成基本色的灰度值则称为逃逸色(Esccpe color),所有的逃逸色使用同一索引值,于是索引图就由5个索引值构成。此时,对索引图的有效压缩就成为了调色板—索引图算法实现文本图像高效压缩的关键。当前,对索引图的编码方法主要有词典编码、算术编码、模板匹配和预测编码等。在这些方法中,有的方法复杂度较高,而有的算法压缩效率较低,尚存在较大的改进空间。
发明内容
本发明是为了解决现有技术所存在的上述技术问题,提供一种可降低算法复杂度及提高编码效率的基于升降序元组的索引图编码和解码方法。
本发明的技术方案是:一种基于升降序元组的索引图编码方法,其特征在于按如下步骤进行:
a. 用3 bit直接编码索引图首索引值,同时生成n×n大小的二值升序标记表和n×n大小的二值降序标记表,并置初始值0,所述n为索引图大小;
b. 按光栅扫描顺序扫描索引图,当前索引值和下一索引值构成一个二元组;如果当前索引值小于下一索引值,则该序列为升序二元组,置升序标记表中当前位置表项为1,并对该升序二元组进行编码,将升序二元组的码字加入升降序元组序列的编码码流中;如果当前索引值大于下一索引值,则该序列为降序二元组,置降序标记表中当前位置表项为1,并对该降序二元组进行编码,将降序二元组的码字加入升降序元组序列的编码码流中;如果当前索引值等于下一索引值,则重复执行步骤b;直到索引图扫描完毕;
c.沿着垂直方向顺序扫描升序标记表和降序标记表,并将扫描得到的二进制码流置于升降序元组序列编码码流的前面,最后采用基于上下文自适应的二进制算术编码方法对上述编码码流进行压缩,从而输出最终的编码码流。
所述b步骤对升序二元组进行编码的步骤如下:
b11. 判断该升序二元组的起始元素,若其为0,则转步骤b12;若其为1,则转步骤b13;若其为2,则转步骤b14;若其为3,则转步骤b15;
b12. 起始元素为0的升序二元组(0,1)、(0,2)、(0,3)和(0,4)以2 bit编码,为其分配的码字分别是:00、01、10和11;
b13. 起始元素为1的升序二元组(1,2)、(1,3)和(1,4)以2 bit编码,为其分配的码字分别是:00、01和10;
b14. 起始元素为2的升序二元组(2,3)和(2,4)以1 bit编码,为其分配的码字分别是0和1;
b15. 起始元素为3的升序二元组(3,4),无需为其分配码字。
b步骤对降序二元组进行编码的步骤如下:
b21. 判断该降序二元组的起始元素,若其为4,则转步骤b22;若其为3,则转步骤b23;若其为2,则转步骤b24;若其为1,则转步骤b25;
b22. 起始元素为4的升序二元组(4,0)、(4,1)、(4,2)和(4,3)以2 bit编码,为其分配的码字分别是:00、01、10和11;
b23. 起始元素为3的降序二元组(3,0)、(3,1)和(3,2)以2 bit编码,为其分配的码字分别是:00、01和10;
b24. 起始元素为2的降序二元组(2,0)和(2,1)以1 bit编码,为其分配的码字分别是:0和1;
b25. 起始元素为1的降序二元组(1,0),无需为其分配码字。
一种上述基于升降序元组的索引图编码方法对应的基于升降序元组的索引图的解码方法,其特征在于解码端接收到一串码流时,执行以下步骤:
d.解码前3 bit得到索引图的第一个索引值,同时作为当前索引值;
e.采用算术解码方法对码流进行解码,提取n×n大小的升序标记表和降序标记表,剩余码流为升降序元组序列的码字;
f.按光栅扫描顺序同时扫描升序标记表和降序标记表,若得到的标记值均为0,则以当前索引值为索引图中当前位置的值;若在升序标记表中得到标记值1,则转步骤g;若在降序标记表中得到标记值1,则转步骤h;直到解码完毕;
g. 若当前索引值为0或者1,则从升降序元组的二进制码流中提取2 bit解码出对应的升序二元组;若当前索引值为2,则从升降序元组的二进制码流中提取1 bit解码出对应的升序二元组;若当前索引值为3,则可直接得到对应的升序二元组;将新得二元组的第2个元素设为当前索引值,转步骤f;
h. 若当前索引值为4或者3,则从升降序元组的二进制码流中提取2 bit解码出对应的降序二元组;若当前索引值为2,则从升降序元组的二进制码流中提取1 bit解码出对应的降序二元组;若当前索引值为1,则可直接得到对应的降序二元组;将新得二元组的第2个元素设为当前索引值,转步骤f。
与现有技术相比,本发明具有以下优点:第一,算法复杂度低。只需遍历一次索引图,在线性时间复杂度内即可完成;第二,编码效率较高。由于文本图像存在大量的平滑区域,本发明扫描得到的升序标记表和降序标记表中80%以上的元素为0,采用基于上下文自适应的二进制算术编码可获得较高的压缩率。
具体实施方式
一种基于升降序元组的索引图编码方法,其特征在于按如下步骤进行:
a. 用3 bit直接编码索引图首索引值,同时生成n×n大小的二值升序标记表和n×n大小的二值降序标记表,并置初始值0,所述n为索引图大小;
b. 按光栅扫描顺序扫描索引图,当前索引值和下一索引值构成一个二元组;如果当前索引值小于下一索引值,则该序列为升序二元组,置升序标记表中当前位置表项为1,并对该升序二元组进行编码,将升序二元组的码字加入升降序元组序列的编码码流中;如果当前索引值大于下一索引值,则该序列为降序二元组,置降序标记表中当前位置表项为1,并对该降序二元组进行编码,将降序二元组的码字加入升降序元组序列的编码码流中;如果当前索引值等于下一索引值,则重复执行步骤b;直到索引图扫描完毕;
c.沿着垂直方向顺序扫描升序标记表和降序标记表,并将扫描得到的二进制码流置于升降序元组序列编码码流的前面,最后采用基于上下文自适应的二进制算术编码方法对上述编码码流进行压缩,从而输出最终的编码码流。
所述b步骤对升序二元组进行编码的步骤如下:
b11. 判断该升序二元组的起始元素,若其为0,则转步骤b12;若其为1,则转步骤b13;若其为2,则转步骤b14;若其为3,则转步骤b15;
b12. 起始元素为0的升序二元组(0,1)、(0,2)、(0,3)和(0,4)以2 bit编码,为其分配的码字分别是:00、01、10和11;
b13. 起始元素为1的升序二元组(1,2)、(1,3)和(1,4)以2 bit编码,为其分配的码字分别是:00、01和10;
b14. 起始元素为2的升序二元组(2,3)和(2,4)以1 bit编码,为其分配的码字分别是0和1;
b15. 起始元素为3的升序二元组(3,4),无需为其分配码字。
b步骤对降序二元组进行编码的步骤如下:
b21. 判断该降序二元组的起始元素,若其为4,则转步骤b22;若其为3,则转步骤b23;若其为2,则转步骤b24;若其为1,则转步骤b25;
b22. 起始元素为4的升序二元组(4,0)、(4,1)、(4,2)和(4,3)以2 bit编码,为其分配的码字分别是:00、01、10和11;
b23. 起始元素为3的降序二元组(3,0)、(3,1)和(3,2)以2 bit编码,为其分配的码字分别是:00、01和10;
b24. 起始元素为2的降序二元组(2,0)和(2,1)以1 bit编码,为其分配的码字分别是:0和1;
b25. 起始元素为1的降序二元组(1,0),无需为其分配码字。
一种上述基于升降序元组的索引图编码方法对应的基于升降序元组的索引图的解码方法,其特征在于解码端接收到一串码流时,执行以下步骤:
d.解码前3 bit得到索引图的第一个索引值,同时作为当前索引值;
e.采用算术解码方法对码流进行解码,提取n×n大小的升序标记表和降序标记表,剩余码流为升降序元组序列的码字;
f.按光栅扫描顺序同时扫描升序标记表和降序标记表,若得到的标记值均为0,则以当前索引值为索引图中当前位置的值;若在升序标记表中得到标记值1,则转步骤g;若在降序标记表中得到标记值1,则转步骤h;直到解码完毕;
g. 若当前索引值为0或者1,则从升降序元组的二进制码流中提取2 bit解码出对应的升序二元组;若当前索引值为2,则从升降序元组的二进制码流中提取1 bit解码出对应的升序二元组;若当前索引值为3,则可直接得到对应的升序二元组;将新得二元组的第2个元素设为当前索引值,转步骤f;
h. 若当前索引值为4或者3,则从升降序元组的二进制码流中提取2 bit解码出对应的降序二元组;若当前索引值为2,则从升降序元组的二进制码流中提取1 bit解码出对应的降序二元组;若当前索引值为1,则可直接得到对应的降序二元组;将新得二元组的第2个元素设为当前索引值,转步骤f。
Claims (4)
1.一种基于升降序元组的索引图编码方法,其特征在于按如下步骤进行:
a. 用3 bit直接编码索引图首索引值,同时生成大小的二值升序标记表和大小的二值降序标记表,并置初始值0,所述n为索引图大小;
b. 按光栅扫描顺序扫描索引图,当前索引值和下一索引值构成一个二元组;如果当前索引值小于下一索引值,则该二元组为升序二元组,置升序标记表中当前位置表项为1,并对该升序二元组进行编码,将升序二元组的码字加入升降序元组序列的编码码流中;如果当前索引值大于下一索引值,则该二元组为降序二元组,置降序标记表中当前位置表项为1,并对该降序二元组进行编码,将降序二元组的码字加入升降序元组序列的编码码流中;如果当前索引值等于下一索引值,则重复执行步骤b;直到索引图扫描完毕;
c.沿着垂直方向顺序扫描升序标记表和降序标记表,并将扫描得到的二进制码流置于升降序元组序列编码码流的前面,最后采用基于上下文自适应的二进制算术编码方法对上述编码码流进行压缩,从而输出最终的编码码流。
2.根据权利要求1所述的基于升降序元组的索引图编码方法,其特征在于所述b步骤对升序二元组进行编码的步骤如下:
b11. 判断该升序二元组的起始元素,若其为0,则转步骤b12;若其为1,则转步骤b13;若其为2,则转步骤b14;若其为3,则转步骤b15;
b12. 起始元素为0的升序二元组(0,1)、(0,2)、(0,3)和(0,4)以2 bit编码,为其分配的码字分别是:00、01、10和11;
b13. 起始元素为1的升序二元组(1,2)、(1,3)和(1,4)以2 bit编码,为其分配的码字分别是:00、01和10;
b14. 起始元素为2的升序二元组(2,3)和(2,4)以1 bit编码,为其分配的码字分别是0和1;
b15. 起始元素为3的升序二元组(3,4),无需为其分配码字。
3.根据权利要求1所述的基于升降序元组的索引图编码方法,其特征在于所述b步骤对降序二元组进行编码的步骤如下:
b21. 判断该降序二元组的起始元素,若其为4,则转步骤b22;若其为3,则转步骤b23;若其为2,则转步骤b24;若其为1,则转步骤b25;
b22. 起始元素为4的升序二元组(4,0)、(4,1)、(4,2)和(4,3)以2 bit编码,为其分配的码字分别是:00、01、10和11;
b23. 起始元素为3的降序二元组(3,0)、(3,1)和(3,2)以2 bit编码,为其分配的码字分别是:00、01和10;
b24. 起始元素为2的降序二元组(2,0)和(2,1)以1 bit编码,为其分配的码字分别是:0和1;
b25. 起始元素为1的降序二元组(1,0),无需为其分配码字。
4.一种与权利要求1所述的基于升降序元组的索引图编码方法对应的基于升降序元组的索引图的解码方法,其特征在于解码端接收到一串码流时,执行以下步骤:
d.解码前3 bit得到索引图的第一个索引值,同时作为当前索引值;
e.采用算术解码方法对码流进行解码,提取大小的升序标记表和降序标记表,剩余码流为升降序元组序列的码字;
f.按光栅扫描顺序同时扫描升序标记表和降序标记表,若得到的标记值均为0,则以当前索引值为索引图中当前位置的值;若在升序标记表中得到标记值1,则转步骤g;若在降序标记表中得到标记值1,则转步骤h;直到解码完毕;
g. 若当前索引值为0或者1,则从升降序元组的二进制码流中提取2 bit解码出对应的升序二元组;若当前索引值为2,则从升降序元组的二进制码流中提取1 bit解码出对应的升序二元组;若当前索引值为3,则可直接得到对应的升序二元组;将新得二元组的第2个元素设为当前索引值,转步骤f;
h. 若当前索引值为4或者3,则从升降序元组的二进制码流中提取2 bit解码出对应的降序二元组;若当前索引值为2,则从升降序元组的二进制码流中提取1 bit解码出对应的降序二元组;若当前索引值为1,则可直接得到对应的降序二元组;将新得二元组的第2个元素设为当前索引值,转步骤f。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510933456.8A CN105554504B (zh) | 2015-12-15 | 2015-12-15 | 基于升降序元组的索引图编码和解码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510933456.8A CN105554504B (zh) | 2015-12-15 | 2015-12-15 | 基于升降序元组的索引图编码和解码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105554504A CN105554504A (zh) | 2016-05-04 |
CN105554504B true CN105554504B (zh) | 2018-07-03 |
Family
ID=55833411
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510933456.8A Expired - Fee Related CN105554504B (zh) | 2015-12-15 | 2015-12-15 | 基于升降序元组的索引图编码和解码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105554504B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107147913B (zh) * | 2017-05-16 | 2019-11-19 | 西安万像电子科技有限公司 | 文字块的传输方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101042295A (zh) * | 2007-01-23 | 2007-09-26 | 浙江工业大学 | 一种可全局索引编码序列的产生方法及其应用 |
CN102223541A (zh) * | 2011-07-14 | 2011-10-19 | 北京工业大学 | 一种混合图像的编码方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9025661B2 (en) * | 2010-10-01 | 2015-05-05 | Qualcomm Incorporated | Indicating intra-prediction mode selection for video coding |
-
2015
- 2015-12-15 CN CN201510933456.8A patent/CN105554504B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101042295A (zh) * | 2007-01-23 | 2007-09-26 | 浙江工业大学 | 一种可全局索引编码序列的产生方法及其应用 |
CN102223541A (zh) * | 2011-07-14 | 2011-10-19 | 北京工业大学 | 一种混合图像的编码方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105554504A (zh) | 2016-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8837006B2 (en) | Pre-processing of image data for enhanced compression | |
CN101816177B (zh) | 文本图像编码 | |
CN101039374B (zh) | 一种图像无损压缩方法 | |
CN113542740B (zh) | 图像传输方法及装置 | |
US11202083B2 (en) | Encoder, decoder and method employing palette utilization and compression | |
JPWO2010052833A1 (ja) | 画像符号化装置及び画像復号装置 | |
CN106534846A (zh) | 一种屏幕内容与自然内容划分及快速编码方法 | |
TW201625003A (zh) | 調色板編碼方法與解碼方法以及電子裝置 | |
CN104780379A (zh) | 一种屏幕图像集合的压缩方法 | |
CN103167289B (zh) | 图像的编码、解码方法及编码、解码装置 | |
CN100425066C (zh) | 图像压缩的方法 | |
JP2005525006A (ja) | 複数スキャンを使用する変換係数圧縮 | |
CN111614960A (zh) | 按图像内容特征进行帧级划分的快速编解码方法 | |
CN105554504B (zh) | 基于升降序元组的索引图编码和解码方法 | |
US7065254B2 (en) | Multilayered image file | |
CN104093027B (zh) | 用于彩色图像的联合标量嵌入式图形编码 | |
CN102231834A (zh) | 一种apng文件在数字电视***中的处理方法和装置 | |
CN105491384A (zh) | 调色板编码方法与解码方法以及电子装置 | |
CN105578191B (zh) | 基于直方图滑动窗口的索引图基色选择方法 | |
CN115037941A (zh) | 一种提高压缩率的智能手环图片压缩存储方法 | |
CN103024246A (zh) | 一种文书档案图像压缩方法 | |
CN111614961A (zh) | 采用不同方式计算哈希值建立哈希表进行搜索的编码方法 | |
CN113301339A (zh) | 数据编码、解码方法及装置 | |
US7164803B2 (en) | Method for encoding digitized images | |
CN102413324A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180703 Termination date: 20181215 |
|
CF01 | Termination of patent right due to non-payment of annual fee |