CN105933708B - 一种数据压缩和解压缩的方法和装置 - Google Patents

一种数据压缩和解压缩的方法和装置 Download PDF

Info

Publication number
CN105933708B
CN105933708B CN201610231983.9A CN201610231983A CN105933708B CN 105933708 B CN105933708 B CN 105933708B CN 201610231983 A CN201610231983 A CN 201610231983A CN 105933708 B CN105933708 B CN 105933708B
Authority
CN
China
Prior art keywords
pixel
block
difference
module
sub
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.)
Active
Application number
CN201610231983.9A
Other languages
English (en)
Other versions
CN105933708A (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.)
Yang Hua
Original Assignee
杨桦
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 杨桦 filed Critical 杨桦
Priority to CN201610231983.9A priority Critical patent/CN105933708B/zh
Publication of CN105933708A publication Critical patent/CN105933708A/zh
Application granted granted Critical
Publication of CN105933708B publication Critical patent/CN105933708B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence

Abstract

本发明公开了一种图像压缩和解压缩装置和方法,所述装置包括差值计算模块、残差编码模块、压缩数据指针生成模块、压缩数据指针解码模块、残差解码模块和差值补偿模块,其中,差值计算模块,被设置为进行图像分块和差值计算;残差编码模块,被设置为进行残差编码并储存编码后的压缩数据;压缩数据指针生成模块,被设置为生成并存储压缩数据指针;压缩数据指针解码模块,被设置为读取压缩数据指针;残差解码模块,被设置为读取压缩数据并进行残差解码;差值补偿模块,被设置为进行差值补偿,恢复出图像所有像素块的原始数据。本发明中在压缩率和复杂度之间取得合理的折中,从而提高了图像处理装置存取外置存储器中数据的效率。

Description

一种数据压缩和解压缩的方法和装置
技术领域
本发明涉及图像处理及人工智能技术领域,特别是涉及一种图像处理装置存取外置存储器中数据时的数据压缩和解压缩的方法和装置。
背景技术
目前图像信息的处理已经越来越成为与人们生活紧密相关的基础技术,图像中所包含的巨大信息量也成为人工智能技术领域的研究重点。从手机中的图像增强、美颜功能,到图像内容的分类与理解,都离不开针对图像的密集运算。
当利用GPU、DSP或者专用的图像处理器等芯片处理图像数据时,都需要从外置存储器存取大量的图像数据,图像处理芯片访问外置存储器的带宽很容易成为图像处理速度的瓶颈,并且成为图像处理系统中功耗消耗量的很大一部分。目前解决这一瓶颈的主要方法是在图像处理芯片和外置存储器之间通过数据压缩和解压缩模块,对写入外置存储器的数据进行压缩,减小写入外部存储器的数据量;当从外置存储器读出数据时,进行解压缩,恢复出原始的图像数据。
在上述的数据压缩和解压缩的过程中,图像压缩率越高,对外部存储器的存取带宽和功耗的减小越明显。但是,现有技术中的图像压缩和解压缩的算法往往比较复杂,尽管能够提供更高的图像压缩率,但是会增加硬件的实现复杂度,提高了硬件成本和运行功耗,并且由于需要较长的处理时间来进行数据压缩和解压缩,增加了芯片访问外置存储器的延迟,反而使得图像处理速度下降。因此,需要一种能够对图像数据进行实时压缩和解压缩处理的方法,在压缩率和复杂度之间取得合理的折中,从而提高图像处理装置存取外置存储器中的图像数据的效率。
发明内容
鉴于上述问题,本发明提供了一种克服上述问题或者至少部分地解决上述问题的一种图像处理装置存取外置存储器中数据时的数据压缩和解压缩的方法和装置。
为了解决上述问题,本发明实施例公开了一种图像压缩和解压缩装置,包括差值计算模块、残差编码模块、压缩数据指针生成模块、压缩数据指针解码模块、残差解码模块和差值补偿模块,其中,
差值计算模块,被设置为将图像划分为多个像素块,再进一步将各像素块划分为多个子像素块以对各像素块进行差值计算,在将一像素块划分为多个子像素块时,取该像素块的中心部分为参考子像素块,并保证该参考子像素块中的至少一个像素被包含在所有该像素块的其他子像素块中,以使得该像素作为其他子像素块的参考像素,然后取参考像素计算其余像素相对于该参考像素的差值;
残差编码模块,被设置为将参考子像素块的参考像素值存入外部存储器,并且对各像素块中每个子像素块的其余像素的差值同时进行定长编码和变长编码,并根据编码后的数据大小选择编码后长度较短的数据储存到外部存储器中;
压缩数据指针生成模块,被设置为生成并存储压缩数据指针,如果已知图像的遍历方法为顺序遍历,跳过此步骤;否则,将每个像素块编码后的数据在外部存储器中的地址指针也存入外部存储器;
压缩数据指针解码模块,被设置为读取压缩数据指针,如果已知图像的遍历方法为顺序遍历,跳过此步骤;否则,当从外部存储器读取压缩后的图像并进行解压缩时,首先从外部存储器读取压缩数据指针;
残差解码模块,被设置为根据读取压缩数据,并根据编码过程中所选择的编码方式相对应地对各子像素块的差值进行定长解码或者变长解码;
差值补偿模块,被设置为根据参考子像素块的参考像素,以及其余各子像素块的差值,进行差值补偿,恢复出图像所有像素块的原始数据。
本发明实施例还公开了一种图像压缩和解压缩方法,所述方法具体包括如下步骤:
(1)将图像划分为多个像素块,再进一步将各像素块划分为多个子像素块以对各像素块进行差值计算,在将一像素块划分为多个子像素块时,取该像素块的中心部分为参考子像素块,并保证该参考子像素块中的至少一个像素被包含在所有该像素块的其他子像素块中,以使得该像素作为其他子像素块的参考像素,然后取参考像素计算其余像素相对于该参考像素的差值;
(2)将参考子像素块的参考像素值存入外部存储器,并且对各像素块中每个子像素块的其余像素的差值同时进行定长编码和变长编码,并根据编码后的数据大小选择编码后长度较短的数据储存到外部存储器中;
(3)生成并存储压缩数据指针,如果已知图像的遍历方法为顺序遍历,跳过此步骤;否则,将每个像素块编码后的数据在外部存储器中的地址指针也存入外部存储器;
(4)读取压缩数据指针,如果已知图像的遍历方法为顺序遍历,跳过此步骤;否则,当从外部存储器读取压缩后的图像并进行解压缩时,首先从外部存储器读取压缩数据指针;
(5)根据读取压缩数据,并根据编码过程中所选择的编码方式相对应地对各子像素块的差值进行定长解码或者变长解码;
(6)根据参考子像素块的参考像素,以及其余各子像素块的差值,进行差值补偿,恢复出图像所有像素块的原始数据。
本发明包括以下优点:
本发明给出一种存取外置存储器中的图像数据时的数据压缩和解压缩的方法和装置,减小了存取外部存储器数据时的带宽和功耗。
本发明在压缩率和复杂度之间取得合理的折中,通过本发明的图像压缩和解压缩的方法和装置可以在存取外置存储器中的图像数据时,实现低成本、低功耗和高效率的有益技术效果。
同时本发明中所采用的图像分块和差值计算方式以及残差编码方式都进一步减小了相对于原始图像的数据量,在有益于硬件实现的同时达到了更好的压缩效果。
附图说明
图1是本发明实施例中数据压缩和解压缩装置的示意图;
图2A是本发明实施例中差值计算模块中图像分块的示意图;
图2B是本发明实施例中差值计算模块中差值计算的示意图;
图3是本发明实施例中残差编码模块和残差解码模块的具体结构的示意图;
图4是本发明实施例中残差编码模块的定长编码示意图;
图5是本发明实施例中残差编码模块的变长编码示意图;
图6是本发明实施例中压缩数据指针生成模块生成压缩数据指针的示意图;
图7是本发明实施例中存取外置存储器的数据时的数据压缩和解压缩方法的流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,为图像处理装置存取外置存储器中数据时的数据压缩和解压缩装置的示意图。所述图像压缩和解压缩装置包括差值计算模块101、残差编码模块102、压缩数据指针生成模块103、压缩数据指针解码模块104、残差解码模块105和差值补偿模块106。
差值计算模块101,被设置为进行图像分块和差值计算。当图像处理模块向外置存储器写入图像数据时,将图像划分为多个像素块,再进一步将各像素块划分为多个子像素块以对各像素块进行差值计算,在将一像素块划分为多个子像素块时,取该像素块的中心部分为参考子像素块,并保证该参考子像素块中的至少一个像素被包含在所有该像素块的其他子像素块中,以使得该像素作为其他子像素块的参考像素。然后,取参考像素计算其余像素相对于该参考像素的差值。这种差值计算方式可以更进一步地减小相对于原始图像的数据量,进而减少访问外置存储器的带宽和功耗。
其中,如果划分的该像素块的数据全部为零值,则输出一个特定标记,不再对该像素块进行编码。
上述子像素块的划分方式遵循了图像的局部相关性原则,提高了各像素与其参考像素的相似度,能更好的实现对数据的压缩。
更进一步地,当像素含有红色R、绿色G、蓝色B或者亮度、色差等多个通道的数据时,还可以对各个通道依次按照上述图像分块和差值计算的方式进行处理。
残差编码模块102,被设置为进行残差编码并储存编码后的压缩数据。具体为,将参考子像素块的参考像素值存入外部存储器,并且对各像素块中每个子像素块的其余像素的差值同时进行定长编码和变长编码,并根据编码后的数据大小选择编码后长度较短的数据储存到外部存储器中。
更进一步地,当子像素块的各像素差值都为零时,残差编码步骤可以输出一个特定标记,而不需要再对每个像素的差值进行编码。
更进一步地,在计算子像素块中未与参考子像素块相邻的像素相对于参考像素的差值数据时,可以根据前面各个像素相对于参考像素的差值数据的大小自适应的调整计算差值的方向。
更进一步地,为了提高压缩率,还可以选择更灵活的编码方式,例如当子像素块的各像素差值有一个或者多个不为零时,在对差值进行变长编码时,将差值分成高位和低位两部分,对其中的低位部分进行定长编码,对其中的高位部分进行变长编码。
压缩数据指针生成模块103,被设置为生成并存储压缩数据指针。如果已知图像的遍历方法为非顺序遍历,或者未能事先确定图像的遍历方法,则将每个像素块编码后的数据在外部存储器中的地址指针也存入外部存储器。为了减少地址指针的记录数量,也可以间隔多个像素块,记录其在外部存储器中的地址指针。如果已知图像的遍历方法为顺序遍历,跳过此步骤。
压缩数据指针解码模块104,被设置为读取压缩数据指针。当从外部存储器读取压缩后的图像并进行解压缩时,如果已知图像的遍历方法为非顺序遍历,或者未能事先确定图像的遍历方法,则首先从外部存储器读取压缩数据指针。如果已知图像的遍历方法为顺序遍历,跳过此步骤。
残差解码模块105,被设置为读取压缩数据并对压缩数据进行残差解码。具体为,根据压缩数据指针解码模块104读取的压缩数据指针信息或者直接从外部存储器中依次读取一个或多个像素块的压缩数据,并且,除参考子像素块的参考像素外,根据编码过程中所选择的编码方式相对应地对其余各子像素块的差值进行定长解码或者变长解码。
差值补偿模块106,被设置为进行差值补偿,恢复出图像所有像素块的原始数据。具体为,根据参考子像素块的参考像素,以及其余各子像素块的差值,进行差值补偿,即作前述差值计算的逆处理,恢复出图像所有像素块的原始数据。
作为一优选实施例,可以把原始图像数据划分为4×4像素大小的像素块,然后再进一步划分为2×2像素大小的子像素块,以下将描述差值计算模块101进行图像分块与差值计算的详细过程。
如图2A所示,原始图像201为通过图像采集设备采集得到的原始图像或者采集后经过处理的图像数据。将原始图像201划分成多个4×4像素大小的像素块202,然后进一步划分为5个2×2像素大小的子像素块203,其中取像素块202的中间部分为参考子像素块203_1,该参考子像素块203_1所包含的四个像素分别被作为其他子像素块203_2,203_3,203_4和203_5的参考像素。
特别地,当原始图像不能正好划分为多个4×4的像素块202时,将图像边界上的数据重复,直到能形成完整的4×4像素块为止。选取相邻的4个像素作为子像素块203,由于相邻的像素之间具有较强的相关性,其像素之间的差值较小,进而可以减小压缩后的数据量。
在每个2×2的子像素块203中,除最后一个像素外,分别选取参考子像素块203_1中与其最邻近的一个像素作为参考像素,进而计算该像素相对于参考像素的差值,对于未与该参考像素相邻的最后一个像素,则根据已计算的差值,选取差值较大的该像素作为最后一个像素的参考像素来计算其差值。
如图2B所示,在子像素块203_2中,对于邻近参考子像素块的像素2和像素5,分别取参考子像素块203_1中与其最邻近的像素6作为参考像素来计算差值,由此可得,像素2的残差为(像素2-像素6),像素5的残差为(像素5-像素6);对于未邻近参考像素的像素1,则比较像素2的残差与像素5的残差的大小,当像素2的残差大于或等于像素5的残差时,取像素2为参考像素来计算像素1的差值,即此时像素1的残差为(像素1-像素2),否则取像素5为参考像素来计算像素1的差值,即此时像素1的残差为(像素1-像素5)。
相对应地,在解码过程中,根据同样的原则选择最后一个像素,即像素1的参考像素,对其进行差值补偿。
由此可见,在计算子像素块中最后一个像素相对于参考像素的差值数据时,可以根据前面各个像素相对于参考像素的差值数据的大小自适应的调整计算差值的方向。在差值补偿过程中,补偿最后一个像素的差值数据时,也根据前面各个像素的差值数据的大小自适应的调整差值补偿的方向。这种自适应的调整方式一方面不需要额外地存储或读取差值计算以及差值补偿的方向数据,另一方面也进一步减小了残差值,进而减少了压缩后的数据量。
参照图3,示出了残差编码模块和残差解码模块的具体结构。残差编码模块102包括定长编码模块301,变长编码模块302和压缩选择模块303。编码时,定长编码模块301和变长编码模块302同时工作,同时对差值数据分别进行定长编码和变长编码,然后压缩选择模块303根据两种编码后数据的长短,选择相应的编码结果输出,并记录下编码字长信息和选择的编码方式。
残差解码模块105包括定长解码模块305和变长解码模块306。解码时,根据选择模块303选择的具体编码方式,将数据流送给定长解码模块305或者变长解码模块306进行解码,得到解码后的差值数据。
如图4所示,为当图像被划分为2×2像素大小的子像素块时,残差编码模块的定长编码示意图。具体包括以下步骤:
步骤401,计算每个子像素块中前三个像素的差值的非零位的最高位数;
步骤402,根据所述最高位数,将每个差值的高位零值删除,并作为编码结果输出。
如图5所示,为当图像被划分为2×2像素大小的子像素块时,残差编码模块的变长编码示意图。具体包括以下步骤:
步骤501,计算每个子像素块中前三个像素的差值的非零位的最低位数;
步骤502,计算每个差值减去低位值所能表达的最大值;
步骤503,根据步骤501计算得到的最低位数,把每个差值的低位值作为编码结果的第一部分输出;
步骤504,对步骤502的结果的高位值进行移位码编码,作为编码结果的第二部分输出。
其中,变长编码可以为哥伦布编码或哈夫曼编码等变长编码方式。
如图6所示,为压缩数据指针生成模块生成压缩数据指针的示意图。当一个或者多个连续像素块601压缩后的数据被写入外部存储器603时,该压缩后的数据的地址指针602也被同时写入外部存储器603,并且该地址指针602在外部存储器中的地址可以根据像素块601在原始图像604中的坐标映射得到,从而通过该地址指针602建立起原始图像的像素坐标和压缩后的数据之间的索引关系。当采用非顺序遍历图像时,能够通过压缩数据指针读出对应坐标上的图像像素的压缩数据。
参照图7,示出了本发明的图像数据压缩和解压缩的步骤流程图,具体可以包括如下步骤:
步骤701,图像分块和差值计算。具体包括:将图像划分为多个像素块,再进一步将各像素块划分为多个子像素块以对各像素块进行差值计算,在将一像素块划分为多个子像素块时,取该像素块的中心部分为参考子像素块,并保证该参考子像素块中的至少一个像素被包含在所有该像素块的其他子像素块中,以使得该像素作为其他子像素块的参考像素;然后取参考像素计算其余像素相对于该参考像素的差值。
其中,如果划分的该像素块的数据全部为零值,则输出一个特定标记,不再对该像素块进行编码。
更进一步地,当像素含有红色R、绿色G、蓝色B或者亮度、色差等多个通道的数据时,还可以对各个通道依次按照上述图像分块和差值计算的方式进行处理。
步骤702,残差编码并储存编码后的压缩数据。具体包括:将参考子像素块的参考像素值存入外部存储器,并且对各像素块中每个子像素块的其余像素的差值同时进行定长编码和变长编码,并根据编码后的数据大小选择编码后长度较短的数据储存到外部存储器中。
更进一步地,当子像素块的各像素差值都为零时,残差编码步骤可以输出一个特定标记,而不需要再对每个像素的差值进行编码。
更进一步地,为了提高压缩率,还可以选择更灵活的编码方式,例如当子像素块的各像素差值有一个或者多个不为零时,在对差值进行变长编码时,将差值分成高位和低位两部分,对其中的低位部分进行定长编码,对其中的高位部分进行变长编码。
步骤703,生成并存储压缩数据指针。具体包括:如果已知图像的遍历方法为非顺序遍历,或者未能事先确定图像的遍历方法,则将每个像素块编码后的数据在外部存储器中的地址指针也存入外部存储器。为了减少地址指针的记录数量,也可以间隔多个像素块,记录其在外部存储器中的地址指针。如果已知图像的遍历方法为顺序遍历,跳过此步骤。
步骤704,读取压缩数据指针。具体包括:当从外部存储器读取压缩后的图像并进行解压缩时,如果已知图像的遍历方法为非顺序遍历,或者未能事先确定图像的遍历方法,则首先从外部存储器读取压缩数据指针。如果已知图像的遍历方法为顺序遍历,跳过此步骤。
步骤705,读取压缩数据并进行残差解码。具体包括:根据指针信息或者直接从外部存储器中依次读取一个或多个像素块的压缩数据,并且,除参考子像素块的参考像素外,根据步骤702中选择的编码方式相对应地对其余各子像素块的差值进行定长解码或者变长解码。
步骤706,进行差值补偿。具体包括:根据参考子像素块的参考像素,以及其余各子像素块的差值,进行差值补偿,即作前述差值计算的逆处理,恢复出图像所有像素块的原始数据。
所述图像压缩和解压缩装置可以作为独立的硬件实体,也可以为抽象的硬件集合,所述各个子模块还可以分别或组合为相关的子硬件加速实体,并协同实现图像压缩和解压缩装置的全部或部分功能。
以上对本发明所提供的一种图像处理装置存取外置存储器中数据时的数据压缩和解压缩的装置和方法进行了详细介绍,上述记载中应用了具体示例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种图像压缩和解压缩装置,其特征在于:包括差值计算模块、残差编码模块、压缩数据指针生成模块、压缩数据指针解码模块、残差解码模块和差值补偿模块,其中,
差值计算模块,被设置为将图像划分为多个像素块,再进一步将各像素块划分为多个子像素块以对各像素块进行差值计算,在将一像素块划分为多个子像素块时,取该像素块的中心部分为参考子像素块,并保证该参考子像素块中的至少一个像素被包含在所有该像素块的其他子像素块中,以使得该像素作为其他子像素块的参考像素,然后取参考像素计算其余像素相对于该参考像素的差值;
残差编码模块,被设置为将参考子像素块的参考像素值存入外部存储器,并且对各像素块中每个子像素块的其余像素的差值同时进行定长编码和变长编码,并根据编码后的数据大小选择编码后长度较短的数据储存到外部存储器中;
压缩数据指针生成模块,被设置为生成并存储压缩数据指针,如果已知图像的遍历方法为顺序遍历,跳过此步骤;否则,将每个像素块编码后的数据在外部存储器中的地址指针也存入外部存储器;
压缩数据指针解码模块,被设置为读取压缩数据指针,如果已知图像的遍历方法为顺序遍历,跳过此步骤;否则,当从外部存储器读取压缩后的图像并进行解压缩时,首先从外部存储器读取压缩数据指针;
残差解码模块,被设置为根据读取压缩数据,并根据编码过程中所选择的编码方式相对应地对各子像素块的差值进行定长解码或者变长解码;
差值补偿模块,被设置为根据参考子像素块的参考像素,以及其余各子像素块的差值,进行差值补偿,恢复出图像所有像素块的原始数据。
2.根据权利要求1所述的装置,其特征在于:在差值计算模块中,如果划分的该像素块的数据全部为零值,则输出一个特定标记,不再对该像素块进行编码;在残差编码模块中,当子像素块的各像素差值都为零时,残差编码步骤输出一个特定标记,不再对每个像素的差值进行编码。
3.根据权利要求1所述的装置,其特征在于:在残差编码模块中对差值进行变长编码时,当子像素块的各像素差值有一个或者多个不为零时,将所述差值分成高位和低位两部分,对其中的低位部分进行定长编码,对其中的高位部分进行变长编码。
4.根据权利要求1所述的装置,其特征在于:在残差编码模块中,在计算子像素块中未与参考子像素块相邻的像素相对于参考像素的差值数据时,可以根据前面各个像素相对于参考像素的差值数据的大小自适应的调整计算差值的方向。
5.根据权利要求1所述的装置,其特征在于:在差值计算模块中,将原始图像划分成多个4×4像素大小的像素块,然后将每个像素块进一步划分成5个2×2像素大小的子像素块,其中取该像素块的中间部分的四个像素为参考子像素块,该参考子像素块所包含的四个像素分别被作为其他四个子像素块的参考像素以进行差值计算。
6.根据权利要求5所述的装置,其特征在于:所述差值计算包括选取参考子像素块中与所述其他四个子像素块中的一个最邻近的一像素作为所述其他四个子像素块中的一个的参考像素,进而计算其所包含的像素中邻近所述参考像素的像素相对于所述参考像素的差值,对于未与所述参考像素相邻的最后一个像素,则根据已计算的所述差值,选取差值较大的像素作为所述最后一个像素的参考像素来计算其差值。
7.根据权利要求1所述的装置,其特征在于:所述残差编码模块包括定长编码模块,变长编码模块和压缩选择模块,编码时,定长编码模块和变长编码模块同时对差值数据分别进行定长编码和变长编码,然后压缩选择模块根据两种编码后数据的长短,选择相应的编码结果输出,并记录下编码字长信息和选择的编码方式;
所述残差解码模块包括定长解码模块和变长解码模块,解码时,根据所述压缩选择模块选择的具体编码方式,将数据流送给定长解码模块或变长解码模块进行解码,得到解码后的差值数据。
8.根据权利要求5所述的装置,其特征在于:在残差编码模块中,所述定长编码包括,计算每个子像素块中前三个像素的差值的非零位的最高位数;然后,根据所述最高位数,将每个差值的高位零值删除,并作为编码结果输出。
9.根据权利要求5所述的装置,其特征在于:在残差编码模块中,所述变长编码包括,首先计算每个子像素块中前三个像素的差值的非零位的最低位数;其次计算每个差值减去低位值所能表达的最大值;然后根据所述最低位数,把每个差值的低位值作为编码结果的第一部分输出;最后对所述最大值进行变长编码,作为编码结果的第二部分输出。
10.一种图像压缩和解压缩方法,其特征在于:所述方法具体包括如下步骤:
(1)将图像划分为多个像素块,再进一步将各像素块划分为多个子像素块以对各像素块进行差值计算,在将一像素块划分为多个子像素块时,取该像素块的中心部分为参考子像素块,并保证该参考子像素块中的至少一个像素被包含在所有该像素块的其他子像素块中,以使得该像素作为其他子像素块的参考像素,然后取参考像素计算其余像素相对于该参考像素的差值;
(2)将参考子像素块的参考像素值存入外部存储器,并且对各像素块中每个子像素块的其余像素的差值同时进行定长编码和变长编码,并根据编码后的数据大小选择编码后长度较短的数据储存到外部存储器中;
(3)生成并存储压缩数据指针,如果已知图像的遍历方法为顺序遍历,跳过此步骤;否则,将每个像素块编码后的数据在外部存储器中的地址指针也存入外部存储器;
(4)读取压缩数据指针,如果已知图像的遍历方法为顺序遍历,跳过此步骤;否则,当从外部存储器读取压缩后的图像并进行解压缩时,首先从外部存储器读取压缩数据指针;
(5)根据读取压缩数据,并根据编码过程中所选择的编码方式相对应地对各子像素块的差值进行定长解码或者变长解码;
(6)根据参考子像素块的参考像素,以及其余各子像素块的差值,进行差值补偿,恢复出图像所有像素块的原始数据。
CN201610231983.9A 2016-04-15 2016-04-15 一种数据压缩和解压缩的方法和装置 Active CN105933708B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610231983.9A CN105933708B (zh) 2016-04-15 2016-04-15 一种数据压缩和解压缩的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610231983.9A CN105933708B (zh) 2016-04-15 2016-04-15 一种数据压缩和解压缩的方法和装置

Publications (2)

Publication Number Publication Date
CN105933708A CN105933708A (zh) 2016-09-07
CN105933708B true CN105933708B (zh) 2019-02-12

Family

ID=56839125

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610231983.9A Active CN105933708B (zh) 2016-04-15 2016-04-15 一种数据压缩和解压缩的方法和装置

Country Status (1)

Country Link
CN (1) CN105933708B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106849956B (zh) * 2016-12-30 2020-07-07 华为机器有限公司 压缩方法、解压缩方法、装置和数据处理系统
CN108171662B (zh) * 2017-12-18 2020-08-07 珠海全志科技股份有限公司 读取图像压缩数据的方法及包含该方法的反畸变方法
CN108694735B (zh) * 2018-05-11 2022-04-15 歌尔科技有限公司 穿戴设备及模拟表盘指针图片压缩存储、重绘方法、设备
CN110322904B (zh) * 2019-07-05 2021-06-22 南京芯驰半导体科技有限公司 压缩图像信息读取控制方法及装置
CN110460854B (zh) * 2019-07-15 2021-09-03 珠海市杰理科技股份有限公司 图像压缩方法
CN111220876B (zh) * 2020-03-30 2022-12-06 厦门四信智慧电力科技有限公司 一种暂态录波数据压缩方法、装置、设备及存储介质
CN114531598A (zh) * 2020-11-06 2022-05-24 深圳Tcl数字技术有限公司 图像的压缩方法、装置、智能终端及计算机可读存储介质
CN112839230B (zh) * 2021-01-20 2023-04-28 上海思朗科技有限公司 图像数据压缩装置及图像数据解压缩装置
CN117115051A (zh) * 2023-10-18 2023-11-24 深圳市惟新科技股份有限公司 一种结合大数据分析结果精准图像分析的方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4114494B2 (ja) * 2002-03-07 2008-07-09 セイコーエプソン株式会社 画像処理装置及び画像処理プログラム、並びに画像処理方法
KR20110113561A (ko) * 2010-04-09 2011-10-17 한국전자통신연구원 적응적인 필터를 이용한 인트라 예측 부호화/복호화 방법 및 그 장치
CN102857753B (zh) * 2011-07-01 2015-11-25 华为技术有限公司 一种参考帧压缩和解压方法及装置
JP2014078891A (ja) * 2012-10-11 2014-05-01 Canon Inc 画像処理装置、画像処理方法
CN104333674B (zh) * 2014-11-24 2019-01-22 广东中星电子有限公司 一种视频稳像方法和装置

Also Published As

Publication number Publication date
CN105933708A (zh) 2016-09-07

Similar Documents

Publication Publication Date Title
CN105933708B (zh) 一种数据压缩和解压缩的方法和装置
JP2968582B2 (ja) デジタルデータを処理するための方法および装置
US5300949A (en) Scalable digital video decompressor
CN106412579B (zh) 一种图像的编码、解码方法和装置
US10440360B2 (en) Video processing system
CN104012097A (zh) 用于压缩和解压缩数据的方法与装置
CN105100814B (zh) 图像编码、解码方法及装置
CN110691250B (zh) 结合块匹配和串匹配的图像压缩装置
CN106937113A (zh) 基于混合色度采样率的图像压缩方法和装置
KR20210094054A (ko) 데이터 어레이들의 비트 평면 인코딩
CN105472389A (zh) 一种用于超高清视频处理系统的片外缓存压缩方法
KR100573527B1 (ko) 그래픽 이미지 압축 및 복원 방법
CN110971904B (zh) 一种图像压缩的控制方法
US8942474B2 (en) Method and system for interpolating index values of associated tiles in an image
DE102011100936A1 (de) Techniken zum Speichern und Abrufen von Pixeldaten
CN104935945B (zh) 扩展参考像素样值集的图像编码或解码方法
Olano et al. Variable bit rate GPU texture decompression
CN108881923B (zh) 减少jpeg编解码行缓冲容量的方法
US8515187B2 (en) Method, compressor, decompressor and signal representation for lossless compression of pixel block values using row and column slope codewords
CN110087085A (zh) 图像处理装置
US20030156651A1 (en) Method for reducing code artifacts in block coded video signals
CN112887722A (zh) 一种图像无损压缩方法
KR102154580B1 (ko) 이미지 처리 장치 및 방법
JP2020530229A (ja) 動き補償参照フレーム圧縮
CN110689590B (zh) 贴图的压缩编码方法、装置以及移动端设备

Legal Events

Date Code Title Description
DD01 Delivery of document by public notice

Addressee: Zhang Yangang

Document name: Notification of Passing Preliminary Examination of the Application for Invention

C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20180705

Address after: 100012 unit 4, 4 cubic meter building, Shuang Ying Road, Chaoyang District, Beijing 608

Applicant after: Yang Hua

Address before: 100012 unit four, four cubic meter building, Shuang Ying Road, Chaoyang District, Beijing 608

Applicant before: Zhang Yangang

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant