CN114900693A - 一种基于方块截短编码的图像压缩方法、解压缩方法及装置 - Google Patents

一种基于方块截短编码的图像压缩方法、解压缩方法及装置 Download PDF

Info

Publication number
CN114900693A
CN114900693A CN202210327774.XA CN202210327774A CN114900693A CN 114900693 A CN114900693 A CN 114900693A CN 202210327774 A CN202210327774 A CN 202210327774A CN 114900693 A CN114900693 A CN 114900693A
Authority
CN
China
Prior art keywords
data
mean
coding
inter2
inter1
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.)
Pending
Application number
CN202210327774.XA
Other languages
English (en)
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.)
Sheng Microelectronics Suzhou Co ltd
Original Assignee
Sheng Microelectronics Suzhou Co ltd
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 Sheng Microelectronics Suzhou Co ltd filed Critical Sheng Microelectronics Suzhou Co ltd
Priority to CN202210327774.XA priority Critical patent/CN114900693A/zh
Publication of CN114900693A publication Critical patent/CN114900693A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/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/186Methods 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 colour or a chrominance component
    • 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

Abstract

本发明公开了一种基于方块截短编码(Block Truncation Coding)的图像压缩、解压缩方法及装置,属于图像处理领域。本发明主要公开了压缩方法与解压缩方法,其中压缩方法包括:对原始画面进行宏块划分,宏块编码方式选择,宏块编码,编码方式和编码内容组成编码流;其中解压缩方法包括:对编码流解码得到编码方式和编码内容,宏块解码方式选择,宏块解码,宏块拼接得到输出画面,本发明提出的基于方块截短编码的压缩、解压缩方法,压缩率大约在2倍左右,算法实现简单,失真小,实时性强。

Description

一种基于方块截短编码的图像压缩方法、解压缩方法及装置
技术领域
本发明是关于一种图像压缩算法,属于图像处理领域,且特别是有关于一种基于方块截短编码(Block Truncation Coding)的图像压缩与解压缩方法。
背景技术
图像压缩算法通过消除图像中的冗余信息,在保留原始图像特征的同时,减少数据量,以达到降低存储和传输消耗的目的。
图像压缩通常分为无损压缩与有损压缩。常见的无损压缩算法有霍夫曼编码、算数编码、行程编码和词典编码,无损压缩算法对压缩率不可控且压缩率通常较低。有损压缩算法大致分为基于变换的有损压缩和基于预测的有损压缩,基于变换的有损压缩通常会先对图像分块,然后对每块数据单独进行空间变换以及量化编码,具有代表性的算法有基于离散余弦变换的JPEG算法和基于小波变换的JPEG2000算法;而基于预测的有损压缩方式通过解压缩后的重建数据预测当前数据,量化并编码实际值与预测值的误差。现有的压缩算法会将多种压缩手段相结合,虽然压缩效果达到了较高的水平,但在实时电路中实现这些算法会相当复杂困难。因此有必要开发一种计算复杂度低,电路面积小,延时低的图像压缩算法。
方块截短编码是一种快速、有效、经典的数字图像压缩方法,具有计算开销小,压缩率固定等特点。本文基于方块截短编码原理进行改进,并融入了其他编码方式,提出了一种新的图像压缩与解压缩方法。相比于原本方法,首先,缩小了宏块大小,从而降低了电路实现的复杂度,其次,结合其他编码方式,可识别并保留更多图形特征,进一步提高了压缩质量。
发明内容
本发明提供一种基于方块截短编码的图像压缩与解压缩方法,包括压缩方法和解压缩方法,其中压缩方法包括:对原始画面进行宏块划分、宏块编码方式选择、宏块编码、编码方式和编码内容组成编码流;解压缩方法包括:对编码流解码得到编码方式和编码内容、宏块解码方式选择、宏块解码、宏块拼接得到输出画面。
压缩算法的步骤如下:
(1)对原始画面进行宏块划分
将原始画面切分成2*2个像素点组成的宏块,其中每个像素点由R、G、B三个子像素点组成,且子像素点的数据量为8比特;
(2)宏块编码方式选择
(3)宏块编码
(4)编码方式和编码内容组成编码流
所述编码流包含两个部分:编码头和编码段,其中编码头包含所选择的编码方式的信息,使用2比特表示;编码段为在该编码方式下的编码内容,使用N比特表示,其中N为编码方式中编码段的最大比特数。
解压缩算法的步骤如下:
(1)对编码流解码得到编码方式和编码内容
通过解析所述编码流,将每个宏块的编码数据分为编码头和编码段两部分;
当不同宏块使用不同的编码方式进行编码时,编码头与编码段的总长度保持固定;
(2)宏块解码方式选择
宏块解码方式选择是根据所述编码头中的信息选择对应的解码方式对编码段解码;
(3)宏块解码
(4)宏块拼接得到输出画面
根据各宏块的解码方式,及该解码方式下的解码数据,拼接出解压缩画面。
进一步地,对所述宏块内的2*2的R、G、B数据进行色彩空间变换得到2*2的Y、Co、Cg数据,其中,Y代表像素点的亮度,Co和Cg代表像素点的色度;宏块编码方式有四种供选择,分别是编码方式一、编码方式二、编码方式三、编码方式四;其中
所述编码方式二的选择条件是:宏块符合以下色度均匀性条件
max{Co0,Co1,Co2,Co3}-min{Co0,Co1,Co2,Co3}≤Co_THD
max{Cg0,Cg1,Cg2,Cg3}-min{Cg0,Cg1,Cg2,Cg3}≤Cg_THD,
色度均匀性条件指,宏块内Co,Cg数据变化范围应当不超过设定阈值;
所述编码方式三的选择条件之一是:宏块内2*2的R、G、B数据中,组成R0~R3的不同数值不超过两个,且组成G0~G3和B0~B3的不同数值共计不超过两个,此时将R通道标记为主通道,G、B标记为副通道;
所述编码方式三的选择条件之二是:宏块内2*2的R、G、B数据中,组成G0~G3的不同数值不超过两个,且组成R0~R3和B0~B3的不同数值共计不超过两个,此时将G通道标记为主通道,R、B标记为副通道;
所述编码方式三的选择条件之三是:宏块内2*2的R、G、B数据中,组成B0~B3的不同数值不超过两个,且组成R0~R3和G0~G3的不同数值共计不超过两个,此时将B通道标记为主通道,R、G标记为副通道;
所述编码方式四的选择条件是:宏块内2*2的R、G、B数据,均可由宏块内其中两个像素点的R、G、B数据等比例线性内插近似得到;
所述编码方式一的选择条件是:排除所述编码方式二、编码方式三和编码方式四的选择条件的范围。
进一步地,选择编码方式一后,宏块编码的具体步骤如下:
(1)宏块内的2*2的R、G、B数据的范围在0~255之间,对R0~R3,G0~G3,B0~B3分别拆分成高位部分R0MSB2bit~R3MSB2bit,G0MSB2bit~G3MSB2bit,B0MSB2bit~B3MSB2bit和低位部分R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit
(2)计算R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中12个数据的平均值Mean
(3)计算R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中小于平均值Mean的所有数据的平均值Lower_Mean,以及计算
R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中不小于平均值Mean的所有数据的平均值Upper_Mean,编码Lower_Mean与Upper_Mean
(4)对于R0~R3,G0~G3,B0~B3数据,分别寻找
Lower_Mean,Upper_Mean,Lower_Mean+64,Upper_Mean+64,Lower_Mean+128,Upper_Mean+128,Lower_Mean+192,Upper_Mean+192共8个节点中最接近目标值的节点表示目标值并编码该节点所属序号0~7。
进一步地,选择编码方式二后,宏块编码的具体步骤如下:
(1)对宏块内的2*2的R、G、B数据进行色彩空间变换得到2*2的Y、Co、Cg数据
(2)分别计算Co0~Co3,Cg0~Cg3的平均值Co_ave,Cg_ave并编码
(3)对Y分量数据Y0~Y3分别拆分成高位部分Y0MSB4bit~Y3MSB4bit和低位部分Y0LSB4bit~Y3LSB4bit
(4)计算Y0LSB4bit~Y3LSB4bit中4个数据的平均值Mean
(5)计算Y0LSB4bit~Y3LSB4bit中小于平均值Mean的所有数据的平均值Y_Lower_Mean,以及计算Y0LSB4bit~Y3LSB4bit中不小于平均值Mean的所有数据的平均值Y_Upper_Mean,编码Y_Lower_Mean与Y_Upper_Mean
(6)对于Y0~Y3数据,分别寻找Y_Lower_Mean,Y_Upper_Mean,Y_Lower_Mean+16,Y_Upper_Mean+16,Y_Lower_Mean+32,Y_Upper_Mean+32,......,Y_Lower_Mean+240,Y_Upper_Mean+240共32个节点中最接近目标值的节点表示目标值并编码该节点所属序号0~31。
进一步地,选择编码方式三后,宏块编码的具体步骤如下:
(1)编码R、G、B通道中的主通道信息
(2)分别编码主通道中的最大最小值,以及另外两个副通道中共同的最大最小值
(3)分别使用‘0’或‘1’编码每个子像素点属于最大值或最小值。
进一步地,选择编码方式四后,宏块编码的具体步骤如下:
(1)编码宏块中各像素点是否需要插补的信息,其中两个为无需插补的像素点
(RNode1,GNode1,BNode1),(RNode2,GNode2,BNode2),另外两个为需要插补的像素点
(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)
(2)分别编码宏块中两个无需插补的像素点(RNode1,GNode1,BNode1)的高位部分
RNode1_MSB5bit,GNode1_MSB6bit,BNode1_MSB5bit,以及(RNode2,GNode2,BNode2)的高位部分
RNode2_MSB5bit,GNode2_MSB6bit,BNode2_MSB5bit
(3)分别编码宏块中剩余两个需插补的像素点(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)的插补系数factorInter1_4bit,factorInter2_4bit,其中插补系数使用4比特精度表示
RInter1=(RNode1*factorInter1_4bit+RNode2*(16-factorInter1_4bit))/16
GInter1=(GNode1*factorInter1_4bit+GNode2*(16-factorInter1_4bit))/16
BInter1=(BNode1*factorInter1_4bit+BNode2*(16-factorInter1_4bit))/16
RInter2=(RNode1*factorInter2_4bit+RNode2*(16-factorInter2_4bit))/16
GInter2=(GNode1*factorInter2_4bit+GNode2*(16-factorInter2_4bit))/16
BInter2=(BNode1*factorInter2_4bit+BNode2*(16-factorInter2_4bit))/16。
进一步地,宏块解码方式有四种供选择,分别是解码方式一、解码方式二、解码方式三、解码方式四;其中,
解码方式一对应所述编码头中信息的编码方式一,选择解码方式一后,根据所述编码段在该编码方式一下的编码内容作出如下解码:
(1)解析Lower_Mean与Upper_Mean,并计算8个节点值
(2)解析每个子像素点的节点序号,并在8个节点值中取值并还原每个宏块内的R0~R3,G0~G3,B0~B3
解码方式二对应所述编码头中信息的编码方式二,选择解码方式二后,根据所述编码段在该编码方式二下的编码内容作出如下解码:
(1)解析Co0~Co3,Cg0~Cg3的平均值Co_ave,Cg_ave,并还原Co0~Co3,Cg0~Cg3
(2)解析Y_Lower_Mean与Y_Upper_Mean,并计算Y的32个节点值
(3)解析每个子像素点的Y的节点序号,并在32个Y的节点值中取值并还原每个宏块中的Y0~Y3
(4)对宏块内的2*2的Y、Co、Cg数据进行色彩空间变换得到2*2的R、G、B数据
其中,Y代表像素点的亮度,Co和Cg代表像素点的色度;
解码方式三对应所述编码头中信息的编码方式三,选择解码方式三后,根据所述编码段在该编码方式三下的编码内容作出如下解码:
(1)解析R、G、B通道中的主通道信息
(2)解析主通道的最大最小值及主通道内各子像素点的标识位‘0’或‘1’,并还原主通道中的2*2数据
(3)解析两个副通道共同的最大最小值及副通道内各子像素点的标识位‘0’或‘1’,并还原两个副通道中的2*2数据
解码方式四对应所述编码头中信息的编码方式四,选择解码方式四后,根据所述编码段在该编码方式四下的编码内容作出如下解码:
(1)解析宏块中各像素点是否需要插补的信息,还原2*2中两个无需插补的像素点
(RNode1,GNode1,BNode1),(RNode2,GNode2,BNode2)和两个需插补的像素点
(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)的位置
(2)解析宏块中两个无需插补的像素点:(RNode1,GNode1,BNode1)的高位部分
RNode1_MSB5bit,GNode1_MSB6bit,BNode1_MSB5bit,以及(RNode2,GNode2,BNode2)的高位部分
RNode2_MSB5bit,GNode2_MSB6bit,BNode2_MSB5bit,并还原至8比特精度
(3)解析宏块中剩余两个需插补的像素点(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)的4比特精度插补系数factorInter1_4bit,factorInter2_4bit,并还原需插补的像素点
RInter1=(RNode1*factorInter1_4bit+RNode2*(16-factorInter1_4bit))/16
GInter1=(GNode1*factorInter1_4bit+GNode2*(16-factorInter1_4bit))/16
BInter1=(BNode1*factorInter1_4bit+BNode2*(16-factorInter1_4bit))/16
RInter2=(RNode1*factorInter2_4bit+RNode2*(16-factorInter2_4bit))/16
GInter2=(GNode1*factorInter2_4bit+GNode2*(16-factorInter2_4bit))/16
BInter2=(BNode1*factorInter2_4bit+BNode2*(16-factorInter2_4bit))/16
其中,(RNode1,GNode1,BNode1),(RNode2,GNode2,BNode2)为无需插补的像素点,
(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)为需要插补的像素点。
本申请还包括一种基于方块截短编码的图像压缩与解压缩装置,包含压缩部分和解压缩部分:
压缩部分包括行数据缓冲单元、宏块数据采集单元、编码方式选择单元、宏块编码单元以及压缩数据组合单元;
行数据缓冲单元:获取奇数行数据,并做存储缓冲
宏块数据采集单元:获取偶数行数据,并与行数据缓冲单元的奇数行数据拼接,得到当前宏块的2*2数据,并输出给编码方式选择单元
编码方式选择单元:根据当前宏块的2*2数据,进行数据分析,选择合适的编码方式,并将当前宏块的2*2数据和编码方式传给宏块编码单元,将编码方式所代表的压缩数据流传输给压缩数据组合单元
宏块编码单元:对当前宏块的2*2数据进行对应编码,输出宏块数据所代表的的压缩数据流给压缩数据组合单元
压缩数据组合单元:将编码方式所代表的压缩数据流和宏块数据所代表的压缩数据流进行组合,得到当前宏块压缩数据流并输出
解压缩部分包括压缩数据拆分单元、解码方式选择单元、宏块解码单元、宏块数据拼接单元以及行数据缓冲单元;
压缩数据拆分单元:将收到的当前宏块压缩数据流进行拆分,包含解码方式的压缩数据流和包含宏块数据的压缩数据流,将包含解码方式的压缩数据流传给解码方式选择单元,将包含宏块数据的压缩数据流传给宏块解码单元
解码方式选择单元:根据包含解码方式的压缩数据流,提取解码方式并传给宏块解码单元
宏块解码单元:将包含宏块数据的压缩数据流进行对应方式解码,得到当前宏块的2*2数据
宏块数据拼接单元:将不同宏块的2*2数据拼接成连续输出图像数据,其中,奇数行数据直接在当前行输出,偶数行数据传给行数据缓冲单元
行数据缓冲单元:缓存偶数行数据,并在偶数行输出。
附图说明
图1所示为本发明的压缩方法;
图2所示为本发明的解压缩方法;
图3所示为本发明的2*2个像素点组成的宏块;
图4所示为本发明的每个宏块的编码流;
图5所示为本发明的图像压缩与解压缩装置的压缩系统结构图;
图6所示为本发明的图像压缩与解压缩装置的解压缩系统结构图;
图7所示为本发明的图像压缩与解压缩装置的宏块编/解码单元图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1-7,一种基于方块截短编码的图像压缩方法,如图1所示,包括对原始画面进行宏块划分、宏块编码方式选择、宏块编码、编码方式和编码内容组成编码流;
如图3所示,对原始画面进行宏块划分是将原始画面切分成2*2个像素点组成的宏块,其中每个像素点由R、G、B三个子像素点组成,且子像素点的数据量为8比特;
如图4所示,所述编码流包含两个部分:编码头和编码段,其中编码头包含所选择的四种编码方式之一的信息,使用2比特表示;编码段为在该编码方式下的编码内容,使用N比特表示,其中N为四种编码方式中编码段的最大比特数。
一种基于方块截短编码的图像解压缩方法,如图2所示,包括对编码流解码得到编码方式和编码内容、宏块解码方式选择、宏块解码、宏块拼接得到输出画面;
具体步骤如下:
(1)对编码流解码得到编码方式和编码内容
通过解析所述编码流,将每个宏块的编码数据分为编码头和编码段两部分;
当不同宏块使用不同的编码方式进行编码时,编码头与编码段的总长度保持固定;
(2)宏块解码方式选择
宏块解码方式选择是根据所述编码头中的信息选择对应的解码方式对编码段解码;
(3)宏块解码
(4)宏块拼接得到输出画面
根据各宏块的解码方式,及该解码方式下的解码数据,拼接出解压缩画面。
对所述宏块内的2*2的R、G、B数据进行色彩空间变换得到2*2的Y、Co、Cg数据,其中,Y代表像素点的亮度,Co和Cg代表像素点的色度;宏块编码方式有四种供选择,分别是编码方式一、编码方式二、编码方式三、编码方式四;其中
所述编码方式二的选择条件是:宏块符合以下色度均匀性条件
max{Co0,Co1,Co2,Co3}-min{Co0,Co1,Co2,Co3}≤Co_THD
max{Cg0,Cg1,Cg2,Cg3}-min{Cg0,Cg1,Cg2,Cg3}≤Cg_THD,
色度均匀性条件指,宏块内Co,Cg数据变化范围应当不超过设定阈值;
所述编码方式三的选择条件之一是:宏块内2*2的R、G、B数据中,组成R0~R3的不同数值不超过两个,且组成G0~G3和B0~B3的不同数值共计不超过两个,此时将R通道标记为主通道,G、B标记为副通道;
所述编码方式三的选择条件之二是:宏块内2*2的R、G、B数据中,组成G0~G3的不同数值不超过两个,且组成R0~R3和B0~B3的不同数值共计不超过两个,此时将G通道标记为主通道,R、B标记为副通道;
所述编码方式三的选择条件之三是:宏块内2*2的R、G、B数据中,组成B0~B3的不同数值不超过两个,且组成R0~R3和G0~G3的不同数值共计不超过两个,此时将B通道标记为主通道,R、G标记为副通道;
所述编码方式四的选择条件是:宏块内2*2的R、G、B数据,均可由宏块内其中两个像素点的R、G、B数据等比例线性内插近似得到;
所述编码方式一的选择条件是:排除所述编码方式二、编码方式三和编码方式四的选择条件的范围。
选择编码方式一后,宏块编码的具体步骤如下:
(1)宏块内的2*2的R、G、B数据的范围在0~255之间,对R0~R3,G0~G3,B0~B3分别拆分成高位部分R0MSB2bit~R3MSB2bit,G0MSB2bit~G3MSB2bit,B0MSB2bit~B3MSB2bit和低位部分R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit
(2)计算R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中12个数据的平均值Mean
(3)计算R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中小于平均值Mean的所有数据的平均值Lower_Mean,以及计算
R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中不小于平均值Mean的所有数据的平均值Upper_Mean,编码Lower_Mean与Upper_Mean
(4)对于R0~R3,G0~G3,B0~B3数据,分别寻找
Lower_Mean,Upper_Mean,Lower_Mean+64,Upper_Mean+64,Lower_Mean+128,Upper_Mean+128,Lower_Mean+192,Upper_Mean+192共8个节点中最接近目标值的节点表示目标值并编码该节点所属序号0~7。
选择编码方式二后,宏块编码的具体步骤如下:
(1)对宏块内的2*2的R、G、B数据进行色彩空间变换得到2*2的Y、Co、Cg数据
(2)分别计算Co0~Co3,Cg0~Cg3的平均值Co_ave,Cg_ave并编码
(3)对Y分量数据Y0~Y3分别拆分成高位部分Y0MSB4bit~Y3MSB4bit和低位部分Y0LSB4bit~Y3LSB4bit
(4)计算Y0LSB4bit~Y3LSB4bit中4个数据的平均值Mean
(5)计算Y0LSB4bit~Y3LSB4bit中小于平均值Mean的所有数据的平均值Y_Lower_Mean,以及计算Y0LSB4bit~Y3LSB4bit中不小于平均值Mean的所有数据的平均值Y_Upper_Mean,编码Y_Lower_Mean与Y_Upper_Mean
(6)对于Y0~Y3数据,分别寻找Y_Lower_Mean,Y_Upper_Mean,Y_Lower_Mean+16,Y_Upper_Mean+16,Y_Lower_Mean+32,Y_Upper_Mean+32,......,Y_Lower_Mean+240,Y_Upper_Mean+240共32个节点中最接近目标值的节点表示目标值并编码该节点所属序号0~31。
选择编码方式三后,宏块编码的具体步骤如下:
(1)编码R、G、B通道中的主通道信息
(2)分别编码主通道中的最大最小值,以及另外两个副通道中共同的最大最小值
(3)分别使用‘0’或‘1’编码每个子像素点属于最大值或最小值。
选择编码方式四后,宏块编码的具体步骤如下:
(1)编码宏块中各像素点是否需要插补的信息,其中两个为无需插补的像素点
(RNode1,GNode1,BNode1),(RNode2,GNode2,BNode2),另外两个为需要插补的像素点
(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)
(2)分别编码宏块中两个无需插补的像素点(RNode1,GNode1,BNode1)的高位部分
RNode1_MSB5bit,GNode1_MSB6bit,BNode1_MSB5bit,以及(RNode2,GNode2,BNode2)的高位部分
RNode2_MSB5bit,GNode2_MSB6bit,BNode2_MSB5bit
(3)分别编码宏块中剩余两个需插补的像素点(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)的插补系数factorInter1_4bit,factorInter2_4bit,其中插补系数使用4比特精度表示
RInter1=(RNode1*factorInter1_4bit+RNode2*(16-factorInter1_4bit))/16
GInter1=(GNode1*factorInter1_4bit+GNode2*(16-factorInter1_4bit))/16
BInter1=(BNode1*factorInter1_4bit+BNode2*(16-factorInter1_4bit))/16
RInter2=(RNode1*factorInter2_4bit+RNode2*(16-factorInter2_4bit))/16
GInter2=(GNode1*factorInter2_4bit+GNode2*(16-factorInter2_4bit))/16
BInter2=(BNode1*factorInter2_4bit+BNode2*(16-factorInter2_4bit))/16。
宏块解码方式有四种供选择,分别是解码方式一、解码方式二、解码方式三、解码方式四;其中,
解码方式一对应所述编码头中信息的编码方式一,选择解码方式一后,根据所述编码段在该编码方式一下的编码内容作出如下解码:
(1)解析Lower_Mean与Upper_Mean,并计算8个节点值
(2)解析每个子像素点的节点序号,并在8个节点值中取值并还原每个宏块内的R0~R3,G0~G3,B0~B3
解码方式二对应所述编码头中信息的编码方式二,选择解码方式二后,根据所述编码段在该编码方式二下的编码内容作出如下解码:
(1)解析Co0~Co3,Cg0~Cg3的平均值Co_ave,Cg_ave,并还原Co0~Co3,Cg0~Cg3
(2)解析Y_Lower_Mean与Y_Upper_Mean,并计算Y的32个节点值
(3)解析每个子像素点的Y的节点序号,并在32个Y的节点值中取值并还原每个宏块中的Y0~Y3
(4)对宏块内的2*2的Y、Co、Cg数据进行色彩空间变换得到2*2的R、G、B数据其中,Y代表像素点的亮度,Co和Cg代表像素点的色度;
解码方式三对应所述编码头中信息的编码方式三,选择解码方式三后,根据所述编码段在该编码方式三下的编码内容作出如下解码:
(1)解析R、G、B通道中的主通道信息
(2)解析主通道的最大最小值及主通道内各子像素点的标识位‘0’或‘1’,并还原主通道中的2*2数据
(3)解析两个副通道共同的最大最小值及副通道内各子像素点的标识位‘0’或‘1’,并还原两个副通道中的2*2数据
解码方式四对应所述编码头中信息的编码方式四,选择解码方式四后,根据所述编码段在该编码方式四下的编码内容作出如下解码:
(1)解析宏块中各像素点是否需要插补的信息,还原2*2中两个无需插补的像素点
(RNode1,GNode1,BNode1),(RNode2,GNode2,BNode2)和两个需插补的像素点
(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)的位置
(2)解析宏块中两个无需插补的像素点:(RNode1,GNode1,BNode1)的高位部分
RNode1_MSB5bit,GNode1_MSB6bit,BNode1_MSB5bit,以及(RNode2,GNode2,BNode2)的高位部分
RNode2_MSB5bit,GNode2_MSB6bit,BNode2_MSB5bit,并还原至8比特精度
(3)解析宏块中剩余两个需插补的像素点(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)的4比特精度插补系数factorInter1_4bit,factorInter2_4bit,并还原需插补的像素点
RInter1=(RNode1*factorInter1_4bit+RNode2*(16-factorInter1_4bit))/16
GInter1=(GNode1*factorInter1_4bit+GNode2*(16-factorInter1_4bit))/16
BInter1=(BNode1*factorInter1_4bit+BNode2*(16-factorInter1_4bit))/16
RInter2=(RNode1*factorInter2_4bit+RNode2*(16-factorInter2_4bit))/16
GInter2=(GNode1*factorInter2_4bit+GNode2*(16-factorInter2_4bit))/16
BInter2=(BNode1*factorInter2_4bit+BNode2*(16-factorInter2_4bit))/16
其中,(RNode1,GNode1,BNode1),(RNode2,GNode2,BNode2)为无需插补的像素点,(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)为需要插补的像素点。
如图5-7所示,一种基于方块截短编码的图像压缩与解压缩装置,包含压缩部分和解压缩部分:
压缩部分包括行数据缓冲单元、宏块数据采集单元、编码方式选择单元、宏块编码单元以及压缩数据组合单元;
行数据缓冲单元:获取奇数行数据,并做存储缓冲
宏块数据采集单元:获取偶数行数据,并与行数据缓冲单元的奇数行数据拼接,得到当前宏块的2*2数据,并输出给编码方式选择单元
编码方式选择单元:根据当前宏块的2*2数据,进行数据分析,选择合适的编码方式,并将当前宏块的2*2数据和编码方式传给宏块编码单元,将编码方式所代表的压缩数据流传输给压缩数据组合单元
宏块编码单元:对当前宏块的2*2数据进行对应编码,输出宏块数据所代表的的压缩数据流给压缩数据组合单元
压缩数据组合单元:将编码方式所代表的压缩数据流和宏块数据所代表的压缩数据流进行组合,得到当前宏块压缩数据流并输出
解压缩部分包括压缩数据拆分单元、解码方式选择单元、宏块解码单元、宏块数据拼接单元以及行数据缓冲单元;
压缩数据拆分单元:将收到的当前宏块压缩数据流进行拆分,包含解码方式的压缩数据流和包含宏块数据的压缩数据流,将包含解码方式的压缩数据流传给解码方式选择单元,将包含宏块数据的压缩数据流传给宏块解码单元
解码方式选择单元:根据包含解码方式的压缩数据流,提取解码方式并传给宏块解码单元
宏块解码单元:将包含宏块数据的压缩数据流进行对应方式解码,得到当前宏块的2*2数据
宏块数据拼接单元:将不同宏块的2*2数据拼接成连续输出图像数据,其中,奇数行数据直接在当前行输出,偶数行数据传给行数据缓冲单元
行数据缓冲单元:缓存偶数行数据,并在偶数行输出。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限制。

Claims (10)

1.一种基于方块截短编码的图像压缩方法,其特征在于:包括对原始画面进行宏块划分、宏块编码方式选择、宏块编码、编码方式和编码内容组成编码流;
对原始画面进行宏块划分是将原始画面切分成2*2个像素点组成的宏块,其中每个像素点由R、G、B三个子像素点组成,且子像素点的数据量为8比特;
所述编码流包含两个部分:编码头和编码段,其中编码头包含所选择的编码方式的信息,使用2比特表示;编码段为在该编码方式下的编码内容,使用N比特表示,其中N为编码方式中编码段的最大比特数。
2.一种基于方块截短编码的图像解压缩方法,其特征在于:包括对编码流解码得到编码方式和编码内容、宏块解码方式选择、宏块解码、宏块拼接得到输出画面;
具体步骤如下:
(1)对编码流解码得到编码方式和编码内容
通过解析所述编码流,将每个宏块的编码数据分为编码头和编码段两部分;
当不同宏块使用不同的编码方式进行编码时,编码头与编码段的总长度保持固定;
(2)宏块解码方式选择
宏块解码方式选择是根据所述编码头中的信息选择对应的解码方式对编码段解码;
(3)宏块解码
(4)宏块拼接得到输出画面
根据各宏块的解码方式,及该解码方式下的解码数据,拼接出解压缩画面。
3.根据权利要求1所述的一种基于方块截短编码的图像压缩方法,其特征在于,对所述宏块内的2*2的R、G、B数据进行色彩空间变换得到2*2的Y、Co、Cg数据,其中,Y代表像素点的亮度,Co和Cg代表像素点的色度;宏块编码方式有四种供选择,分别是编码方式一、编码方式二、编码方式三、编码方式四;其中
所述编码方式二的选择条件是:宏块符合以下色度均匀性条件
max{Co0,Co1,Co2,Co3}-min{Co0,Co1,Co2,Co3}≤Co_THD
max{Cg0,Cg1,Cg2,Cg3}-min{Cg0,Cg1,Cg2,Cg3}≤Cg_THD,
色度均匀性条件指,宏块内Co,Cg数据变化范围应当不超过设定阈值;
所述编码方式三的选择条件之一是:宏块内2*2的R、G、B数据中,组成R0~R3的不同数值不超过两个,且组成G0~G3和B0~B3的不同数值共计不超过两个,此时将R通道标记为主通道,G、B标记为副通道;
所述编码方式三的选择条件之二是:宏块内2*2的R、G、B数据中,组成G0~G3的不同数值不超过两个,且组成R0~R3和B0~B3的不同数值共计不超过两个,此时将G通道标记为主通道,R、B标记为副通道;
所述编码方式三的选择条件之三是:宏块内2*2的R、G、B数据中,组成B0~B3的不同数值不超过两个,且组成R0~R3和G0~G3的不同数值共计不超过两个,此时将B通道标记为主通道,R、G标记为副通道;
所述编码方式四的选择条件是:宏块内2*2的R、G、B数据,均可由宏块内其中两个像素点的R、G、B数据等比例线性内插近似得到;
所述编码方式一的选择条件是:排除所述编码方式二、编码方式三和编码方式四的选择条件的范围。
4.根据权利要求3所述的一种基于方块截短编码的图像压缩方法,其特征在于,选择编码方式一后,宏块编码的具体步骤如下:
(1)宏块内的2*2的R、G、B数据的范围在0~255之间,对R0~R3,G0~G3,B0~B3分别拆分成高位部分R0MSB2bit~R3MSB2bit,G0MSB2bit~G3MSB2bit,B0MSB2bit~B3MSB2bit和低位部分R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit
(2)计算R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中12个数据的平均值Mean
(3)计算R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中小于平均值Mean的所有数据的平均值Lower_Mean,以及计算
R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中不小于平均值Mean的所有数据的平均值Upper_Mean,编码Lower_Mean与Upper_Mean
(4)对于R0~R3,G0~G3,B0~B3数据,分别寻找Lower_Mean,Upper_Mean,Lower_Mean+64,Upper_Mean+64,Lower_Mean+128,Upper_Mean+128,Lower_Mean+192,Upper_Mean+192共8个节点中最接近目标值的节点表示目标值并编码该节点所属序号0~7。
5.根据权利要求3所述的一种基于方块截短编码的图像压缩方法,其特征在于,选择编码方式二后,宏块编码的具体步骤如下:
(1)对宏块内的2*2的R、G、B数据进行色彩空间变换得到2*2的Y、Co、Cg数据
(2)分别计算Co0~Co3,Cg0~Cg3的平均值Co_ave,Cg_ave并编码
(3)对Y分量数据Y0~Y3分别拆分成高位部分Y0MSB4bit~Y3MSB4bit和低位部分Y0LSB4bit~Y3LSB4bit
(4)计算Y0LSB4bit~Y3LSB4bit中4个数据的平均值Mean
(5)计算Y0LSB4bit~Y3LSB4bit中小于平均值Mean的所有数据的平均值Y_Lower_Mean,以及计算Y0LSB4bit~Y3LSB4bit中不小于平均值Mean的所有数据的平均值Y_Upper_Mean,编码Y_Lower_Mean与Y_Upper_Mean
(6)对于Y0~Y3数据,分别寻找Y_Lower_Mean,Y_Upper_Mean,Y_Lower_Mean+16,Y_Upper_Mean+16,Y_Lower_Mean+32,Y_Upper_Mean+32,......,Y_Lower_Mean+240,Y_Upper_Mean+240共32个节点中最接近目标值的节点表示目标值并编码该节点所属序号0~31。
6.根据权利要求3所述的一种基于方块截短编码的图像压缩方法,其特征在于,选择编码方式三后,宏块编码的具体步骤如下:
(1)编码R、G、B通道中的主通道信息
(2)分别编码主通道中的最大最小值,以及另外两个副通道中共同的最大最小值
(3)分别使用‘0’或‘1’编码每个子像素点属于最大值或最小值。
7.根据权利要求3所述的一种基于方块截短编码的图像压缩方法,其特征在于,选择编码方式四后,宏块编码的具体步骤如下:
(1)编码宏块中各像素点是否需要插补的信息,其中两个为无需插补的像素点(RNode1,GNode1,BNode1),(RNode2,GNode2,BNode2),另外两个为需要插补的像素点(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)
(2)分别编码宏块中两个无需插补的像素点(RNode1,GNode1,BNode1)的高位部分RNode1_MSB5bit,GNode1_MSB6bit,BNode1_MSB5bit,以及(RNode2,GNode2,BNode2)的高位部分RNode2_MSB5bit,GNode2_MSB6bit,BNode2_MSB5bit
(3)分别编码宏块中剩余两个需插补的像素点(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)的插补系数factorInter1_4bit,factorInter2_4bit,其中插补系数使用4比特精度表示
RInter1=(RNode1*factorInter1_4bit+RNode2*(16-factorInter1_4bit))/16
GInter1=(GNode1*factorInter1_4bit+GNode2*(16-factorInter1_4bit))/16
BInter1=(BNode1*factorInter1_4bit+BNode2*(16-factorInter1_4bit))/16
RInter2=(RNode1*factorInter2_4bit+RNode2*(16-factorInter2_4bit))/16
GInter2=(GNode1*factorInter2_4bit+GNode2*(16-factorInter2_4bit))/16
BInter2=(BNode1*factorInter2_4bit+BNode2*(16-factorInter2_4bit))/16。
8.根据权利要求2所述的一种基于方块截短编码的图像解压缩方法,其特征在于,宏块解码方式有四种供选择,分别是解码方式一、解码方式二、解码方式三、解码方式四;其中,
解码方式一对应所述编码头中信息的编码方式一,选择解码方式一后,根据所述编码段在该编码方式一下的编码内容:
(1)宏块内的2*2的R、G、B数据的范围在0~255之间,对R0~R3,G0~G3,B0~B3分别拆分成高位部分R0MSB2bit~R3MSB2bit,G0MSB2bit~G3MSB2bit,B0MSB2bit~B3MSB2bit和低位部分R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit
(2)计算R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中12个数据的平均值Mean
(3)计算R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中小于平均值Mean的所有数据的平均值Lower_Mean,以及计算R0LSB6bit~R3LSB6bit,G0LSB6bit~G3LSB6bit,B0LSB6bit~B3LSB6bit中不小于平均值Mean的所有数据的平均值Upper_Mean,编码Lower_Mean与Upper_Mean
(4)对于R0~R3,G0~G3,B0~B3数据,分别寻找Lower_Mean,Upper_Mean,Lower_Mean+64,Upper_Mean+64,Lower_Mean+128,Upper_Mean+128,Lower_Mean+192,Upper_Mean+192共8个节点中最接近目标值的节点表示目标值并编码该节点所属序号0~7
作出如下解码:
(1)解析Lower_Mean与Upper_Mean,并计算8个节点值
(2)解析每个子像素点的节点序号,并在8个节点值中取值并还原每个宏块内的R0~R3,G0~G3,B0~B3;
解码方式二对应所述编码头中信息的编码方式二,选择解码方式二后,根据所述编码段在该编码方式二下的编码内容:
(1)对宏块内的2*2的R、G、B数据进行色彩空间变换得到2*2的Y、Co、Cg数据
(2)分别计算Co0~Co3,Cg0~Cg3的平均值Co_ave,Cg_ave并编码
(3)对Y分量数据Y0~Y3分别拆分成高位部分Y0MSB4bit~Y3MSB4bit和低位部分Y0LSB4bit~Y3LSB4bit
(4)计算Y0LSB4bit~Y3LSB4bit中4个数据的平均值Mean
(5)计算Y0LSB4bit~Y3LSB4bit中小于平均值Mean的所有数据的平均值Y_Lower_Mean,以及计算Y0LSB4bit~Y3LSB4bit中不小于平均值Mean的所有数据的平均值Y_Upper_Mean,编码Y_Lower_Mean与Y_Upper_Mean
(6)对于Y0~Y3数据,分别寻找Y_Lower_Mean,Y_Upper_Mean,Y_Lower_Mean+16,Y_Upper_Mean+16,Y_Lower_Mean+32,Y_Upper_Mean+32,......,Y_Lower_Mean+240,Y_Upper_Mean+240共32个节点中最接近目标值的节点表示目标值并编码该节点所属序号0~31
作出如下解码:
(1)解析Co0~Co3,Cg0~Cg3的平均值Co_ave,Cg_ave,并还原Co0~Co3,Cg0~Cg3
(2)解析Y_Lower_Mean与Y_Upper_Mean,并计算Y的32个节点值
(3)解析每个子像素点的Y的节点序号,并在32个Y的节点值中取值并还原每个宏块中的Y0~Y3
(4)对宏块内的2*2的Y、Co、Cg数据进行色彩空间变换得到2*2的R、G、B数据
其中,Y代表像素点的亮度,Co和Cg代表像素点的色度;
解码方式三对应所述编码头中信息的编码方式三,选择解码方式三后,根据所述编码段在该编码方式三下的编码内容:
(1)编码R、G、B通道中的主通道信息
(2)分别编码主通道中的最大最小值,以及另外两个副通道中共同的最大最小值
(3)分别使用‘0’或‘1’编码每个子像素点属于最大值或最小值
作出如下解码:
(1)解析R、G、B通道中的主通道信息
(2)解析主通道的最大最小值及主通道内各子像素点的标识位‘0’或‘1’,并还原主通道中的2*2数据
(3)解析两个副通道共同的最大最小值及副通道内各子像素点的标识位‘0’或‘1’,并还原两个副通道中的2*2数据;
其中,所述编码方式三的选择条件之一是:宏块内2*2的R、G、B数据中,组成R0~R3的不同数值不超过两个,且组成G0~G3和B0~B3的不同数值共计不超过两个,此时将R通道标记为主通道,G、B标记为副通道;
所述编码方式三的选择条件之二是:宏块内2*2的R、G、B数据中,组成G0~G3的不同数值不超过两个,且组成R0~R3和B0~B3的不同数值共计不超过两个,此时将G通道标记为主通道,R、B标记为副通道;
所述编码方式三的选择条件之三是:宏块内2*2的R、G、B数据中,组成B0~B3的不同数值不超过两个,且组成R0~R3和G0~G3的不同数值共计不超过两个,此时将B通道标记为主通道,R、G标记为副通道;
解码方式四对应所述编码头中信息的编码方式四,选择解码方式四后,根据所述编码段在该编码方式四下的编码内容:
(1)编码宏块中各像素点是否需要插补的信息,其中两个为无需插补的像素点(RNode1,GNode1,BNode1),(RNode2,GNode2,BNode2),另外两个为需要插补的像素点(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)
(2)分别编码宏块中两个无需插补的像素点(RNode1,GNode1,BNode1)的高位部分RNode1_MSB5bit,GNode1_MSB6bit,BNode1_MSB5bit,以及(RNode2,GNode2,BNode2)的高位部分RNode2_MSB5bit,GNode2_MSB6bit,BNode2_MSB5bit
(3)分别编码宏块中剩余两个需插补的像素点(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)的插补系数factorInter1_4bit,factorInter2_4bit,其中插补系数使用4比特精度表示
RInter1=(RNode1*factorInter1_4bit+RNode2*(16-factorInter1_4bit))/16
GInter1=(GNode1*factorInter1_4bit+GNode2*(16-factorInter1_4bit))/16
BInter1=(BNode1*factorInter1_4bit+BNode2*(16-factorInter1_4bit))/16
RInter2=(RNode1*factorInter2_4bit+RNode2*(16-factorInter2_4bit))/16
GInter2=(GNode1*factorInter2_4bit+GNode2*(16-factorInter2_4bit))/16
BInter2=(BNode1*factorInter2_4bit+BNode2*(16-factorInter2_4bit))/16
作出如下解码:
(1)解析宏块中各像素点是否需要插补的信息,还原2*2中两个无需插补的像素点(RNode1,GNode1,BNode1),(RNode2,GNode2,BNode2)和两个需插补的像素点(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)的位置
(2)解析宏块中两个无需插补的像素点:(RNode1,GNode1,BNode1)的高位部分RNode1_MSB5bit,GNode1_MSB6bit,BNode1_MSB5bit,以及(RNode2,GNode2,BNode2)的高位部分RNode2_MSB5bit,GNode2_MSB6bit,BNode2_MSB5bit,并还原至8比特精度
(3)解析宏块中剩余两个需插补的像素点(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)的4比特精度插补系数factorInter1_4bit,factorInter2_4bit,并还原需插补的像素点
RInter1=(RNode1*factorInter1_4bit+RNode2*(16-factorInter1_4bit))/16
GInter1=(GNode1*factorInter1_4bit+GNode2*(16-factorInter1_4bit))/16
BInter1=(BNode1*factorInter1_4bit+BNode2*(16-factorInter1_4bit))/16
RInter2=(RNode1*factorInter2_4bit+RNode2*(16-factorInter2_4bit))/16
GInter2=(GNode1*factorInter2_4bit+GNode2*(16-factorInter2_4bit))/16
BInter2=(BNode1*factorInter2_4bit+BNode2*(16-factorInter2_4bit))/16
其中,(RNode1,GNode1,BNode1),(RNode2,GNode2,BNode2)为无需插补的像素点,(RInter1,GInter1,BInter1),(RInter2,GInter2,BInter2)为需要插补的像素点。
9.一种基于方块截短编码的图像压缩装置,根据权利要求1、3-7所述的任意一种基于方块截短编码的图像解压缩方法,其特征在于,包括行数据缓冲单元、宏块数据采集单元、编码方式选择单元、宏块编码单元以及压缩数据组合单元;
行数据缓冲单元:获取奇数行数据,并做存储缓冲
宏块数据采集单元:获取偶数行数据,并与行数据缓冲单元的奇数行数据拼接,得到当前宏块的2*2数据,并输出给编码方式选择单元
编码方式选择单元:根据当前宏块的2*2数据,进行数据分析,选择合适的编码方式,并将当前宏块的2*2数据和编码方式传给宏块编码单元,将编码方式所代表的压缩数据流传输给压缩数据组合单元
宏块编码单元:对当前宏块的2*2数据进行对应编码,输出宏块数据所代表的的压缩数据流给压缩数据组合单元
压缩数据组合单元:将编码方式所代表的压缩数据流和宏块数据所代表的压缩数据流进行组合,得到当前宏块压缩数据流并输出。
10.一种基于方块截短编码的解压缩装置,根据权利要求2和8所述的任意一种基于方块截短编码的图像解压缩方法,其特征在于,包括压缩数据拆分单元、解码方式选择单元、宏块解码单元、宏块数据拼接单元以及行数据缓冲单元;
压缩数据拆分单元:将收到的当前宏块压缩数据流进行拆分,包含解码方式的压缩数据流和包含宏块数据的压缩数据流,将包含解码方式的压缩数据流传给解码方式选择单元,将包含宏块数据的压缩数据流传给宏块解码单元
解码方式选择单元:根据包含解码方式的压缩数据流,提取解码方式并传给宏块解码单元
宏块解码单元:将包含宏块数据的压缩数据流进行对应方式解码,得到当前宏块的2*2数据
宏块数据拼接单元:将不同宏块的2*2数据拼接成连续输出图像数据,其中,奇数行数据直接在当前行输出,偶数行数据传给行数据缓冲单元
行数据缓冲单元:缓存偶数行数据,并在偶数行输出。
CN202210327774.XA 2022-03-31 2022-03-31 一种基于方块截短编码的图像压缩方法、解压缩方法及装置 Pending CN114900693A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210327774.XA CN114900693A (zh) 2022-03-31 2022-03-31 一种基于方块截短编码的图像压缩方法、解压缩方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210327774.XA CN114900693A (zh) 2022-03-31 2022-03-31 一种基于方块截短编码的图像压缩方法、解压缩方法及装置

Publications (1)

Publication Number Publication Date
CN114900693A true CN114900693A (zh) 2022-08-12

Family

ID=82715017

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210327774.XA Pending CN114900693A (zh) 2022-03-31 2022-03-31 一种基于方块截短编码的图像压缩方法、解压缩方法及装置

Country Status (1)

Country Link
CN (1) CN114900693A (zh)

Similar Documents

Publication Publication Date Title
US9462279B2 (en) Image encoding/decoding method and device
US7162091B2 (en) Intra compression of pixel blocks using predicted mean
KR100880039B1 (ko) 웨이블릿 기반 이미지 코덱에서의 부호화 이득을 달성하는방법 및 시스템
US7181072B2 (en) Intra compression of pixel blocks using predicted mean
US4541012A (en) Video bandwidth reduction system employing interframe block differencing and transform domain coding
EP1834487B1 (en) Method for improved entropy coding
US6757438B2 (en) Method and apparatus for video compression using microwavelets
JP4365957B2 (ja) 画像処理方法及びその装置及び記憶媒体
CN108924553B (zh) 视频编码、解码方法、装置、计算机设备和存储介质
JPWO2008084745A1 (ja) 画像符号化装置および画像復号化装置
JP2012170122A (ja) イメージをコード化する方法およびイメージコーダ
KR20180069818A (ko) 넌-4:4:4 크로마 서브-샘플링의 디스플레이 스트림 압축 (dsc) 을 위한 엔트로피 코딩 기법들
KR101037421B1 (ko) 화상 데이터 압축 장치, 압축 방법 및 프로그램을 기록한 기록 매체 및 화상 데이터 복원 장치, 복원 방법 및 프로그램을 기록한 기록 매체
JP3117091B2 (ja) 画像符号化装置
JP2004533181A (ja) デジタルイメージに対する選択的なクロミナンスデシメーション
EP1324618A2 (en) Encoding method and arrangement
JPH09200758A (ja) 画像符号化装置
CN116489360A (zh) 一种图像编解码方法及装置
CN114900693A (zh) 一种基于方块截短编码的图像压缩方法、解压缩方法及装置
TW202141979A (zh) 用於針對具有基於聯合圖元/變換的量化的視訊解碼的量化參數控制的方法
Singh et al. A brief introduction on image compression techniques and standards
KR100351568B1 (ko) 움직임 보상 예측 블록의 경계 방향성을 고려한 고압축장치 및 그 방법
KR100744442B1 (ko) 디지털 비디오 및 이미지들에 대한 개선된 캐스케이드 압축 방법 및 시스템
Aalmoes et al. Overview of still-picture and video compression standards
JP2584854B2 (ja) 画像符号化方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: Room 1905, building 4, No. 209, Zhuyuan Road, high tech Zone, Suzhou City, Jiangsu Province 215000

Applicant after: Sunrise Microelectronics (Suzhou) Co.,Ltd.

Address before: Room 1905, building 4, No. 209, Zhuyuan Road, high tech Zone, Suzhou City, Jiangsu Province 215000

Applicant before: Sheng Microelectronics (Suzhou) Co.,Ltd.

CB02 Change of applicant information