CN112839230A - 图像数据压缩装置及图像数据解压缩装置 - Google Patents
图像数据压缩装置及图像数据解压缩装置 Download PDFInfo
- Publication number
- CN112839230A CN112839230A CN202110076277.2A CN202110076277A CN112839230A CN 112839230 A CN112839230 A CN 112839230A CN 202110076277 A CN202110076277 A CN 202110076277A CN 112839230 A CN112839230 A CN 112839230A
- Authority
- CN
- China
- Prior art keywords
- image data
- compressed
- decompressed
- data sequence
- ith
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开了一种图像数据压缩装置及图像数据解压缩装置。其中,图像数据压缩装置每时钟周期对第i个待压缩图像数据序列进行图像编码压缩处理,实现了图像数据的流水式压缩,提升了图像数据压缩效率,简化了图像数据压缩流程,降低了系统复杂度,提升了数据传输效率;图像数据解压缩装置每时钟周期对输入的待解压缩图像数据序列并行进行流水式解压缩,每时钟周期输出1个包含n个像素的解压缩图像数据序列,从而提升了解压缩效率,减少图像解压缩所占用的时间。
Description
技术领域
本发明涉及图像处理技术领域,具体涉及一种图像数据压缩装置及图像数据解压缩装置。
背景技术
随现代通信技术的发展,实时可视化通信、多媒体通信、网络电视、视频监控等业务越来越受到大家的关注,要求传输的图像信息的种类和数据量也越来越大,为了有效地传输和存储图像,图像压缩技术成了急需解决的问题。
图像压缩是指用尽可能少的数据来进行图像的存储和传输。无损压缩是指解压还原后的图像数据与原始图像数据完全相同。图像数据压缩一般有编码和解码两个过程,信源数据经过编码器进行压缩编码,压缩后的数据被传输到解码器进行解码还原以重新构造图像。常规图像数据压缩结构框图如图1所示,输入的图像数据被存储在输入数据缓存模块,经过数据压缩处理模块处理后传回输入数据缓存模块,图像数据在两个模块间不断迭代直到完成压缩,才将压缩后的图像数据输出。常规数据压缩结构的压缩流程复杂、包含逻辑过多,增加了系统复杂度,且图像压缩效率低。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的图像数据压缩装置及图像数据解压缩装置。
根据本发明的一个方面,提供了一种图像数据压缩装置,包括:输入接口、实时压缩模块和输出接口;
输入接口,适于每时钟周期输入待压缩图像数据序列,其中,每时钟周期的待压缩图像数据序列包含n个像素;
实时压缩模块,与输入接口相连,适于每时钟周期针对第i个待压缩图像数据序列进行图像编码压缩处理;其中,i=1时,对第1个待压缩图像数据序列,进行图像编码压缩处理,得到第1个压缩图像数据;1<i≤m时,根据第i个待压缩图像数据序列中的像素及第i-1个待压缩图像数据序列中的像素进行图像编码压缩处理,得到第i个压缩图像数据,并将第i个压缩图像数据输出至输出接口;
输出接口,与实时压缩模块相连,适于实时输出各个压缩图像数据。
根据本发明的另一方面,提供了一种图像数据解压缩装置,包括:输入接口、压缩数据段截取模块、解压缩模块和输出接口;
输入接口,适于每时钟周期输入一个固定位宽的待解压缩图像数据序列;
压缩数据段截取模块,适于每个时钟周期截取一个待解压缩图像数据序列,总共有m个;
解压缩模块,与压缩数据段截取模块相连,适于根据第1个待解压缩图像数据序列进行图像解码处理,得到第1个包含n个像素的解压缩图像数据序列;以及,1<i≤m时,根据第i个待解压缩图像数据序列及第i-1个待解压缩图像数据序列中的已还原的第1个像素进行图像解码处理,得到第i个包含n个像素的解压缩图像数据序列,并将第i个解压缩图像数据序列输出至输出接口;
输出接口,与解压缩模块相连,适于每时钟周期输出1个包含n个像素的解压缩图像数据序列。
根据本发明提供的方案,每时钟周期对第i个待压缩图像数据序列进行图像编码压缩处理,实现了图像数据的流水式压缩,提升了图像数据压缩效率,简化了图像数据压缩流程,降低了系统复杂度,提升了数据传输效率;在解压缩时,能够并行进行流水式解压缩,提升了解压缩效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了现有技术中图像数据压缩装置的结构示意图;
图2A示出了根据本发明实施例的图像数据压缩装置的结构示意图;
图2B示出了根据本发明实施例的图像数据压缩装置的另一结构示意图;
图2C为差值计算模块对图像数据进行处理的示意图;
图3示出了根据本发明一个实施例的图像数据解压缩装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
图2A示出了根据本发明实施例的图像数据压缩装置的结构示意图。如图2A所示,该装置包括:输入接口201、实时压缩模块202和输出接口203;其中,输入接口、实时压缩模块及输出接口每时钟周期进行相应的数据处理,例如,输入接口每时钟周期输入待压缩图像数据序列;实时压缩模块每时钟周期对与其相连的上一级模块(这里指输入接口)发送的数据进行图像编码压缩处理;输出接口每时钟周期对与其相连的上一级模块(这里指实时压缩模块)发送的数据进行输出处理,从而形成流水式图像压缩处理。具体实现如下:
输入接口201,适于每时钟周期输入待压缩图像数据序列,其中,每时钟周期的待压缩图像数据序列包含n个像素。
待压缩图像数据序列指需要进行压缩的图像数据序列,例如,可以是图像数据传输过程中,为了节省传输带宽,提高传输效率,而需要进行压缩的图像数据,比如,待压缩图像数据序列可以是图像或视频等图像数据,或者,图像或视频中的部分图像数据。
在本实施例中,通过输入接口每时钟周期输入待压缩图像数据序列,待压缩图像数据序列所包含的图像数据是有序的数据,每时钟周期所输入的待压缩图像数据序列包含n个像素,n的数值可以根据实际需要而设定。
实时压缩模块202,与输入接口相连,适于每时钟周期针对第i个待压缩图像数据序列进行图像编码压缩处理;其中,i=1时,对第1个待压缩图像数据序列,进行图像编码压缩处理,得到第1个压缩图像数据;1<i≤m时,根据第i个待压缩图像数据序列中的像素及第i-1个待压缩图像数据序列中的像素进行图像编码压缩处理,得到第i个压缩图像数据,并将第i个压缩图像数据输出至输出接口。
待压缩图像数据序列通过输入接口输入至与其相连的实时压缩模块,实时压缩模块每时钟周期针对第i个待压缩图像数据序列进行图像编码压缩处理,例如,可以利用预设压缩算法,比如,哈夫曼编码算法或者能够进行图像编码压缩处理的其它压缩算法,每时钟周期针对第i个待压缩图像数据序列进行图像编码压缩处理,通过图像编码压缩处理,能够有效降低图像数据所占用的内存空间,节省了传输所需带宽。
为了提高解压缩的并行性,实时压缩模块执行如下图像编码压缩处理:i=1时,对第1个待压缩图像数据序列,进行图像编码压缩处理,得到第1个压缩图像数据;1<i≤m时,根据第i个待压缩图像数据序列中的像素及第i-1个待压缩图像数据序列中的像素进行图像编码压缩处理,得到第i个压缩图像数据,并将第i个压缩图像数据输出至输出接口。
输出接口203,与实时压缩模块相连,适于实时输出各个压缩图像数据。
实时压缩模块将各个压缩图像数据输出至输出接口,由输出接口实时输出实时压缩模块传输来的各个压缩图像数据。
在本发明一种可选实施方式中,实时压缩模块对待压缩图像数据序列进行图像编码处理后,得到压缩图像数据,然而很可能出现所得到的压缩图像数据的数据量没有减少反而增多的情况出现,为了有效减少对传输带宽的占用,降低图像数据所占用的存储空间,在得到压缩图像数据后,还需要将压缩图像数据与原始的待压缩图像数据序列进行比较,以便于输出数据量少的图像数据。
具体地,图2B示出了根据本发明实施例的图像数据压缩装置的另一结构示意图,如图2B所示,该装置还包括:原数据缓存队列204,与输入接口相连,适于缓存各个时钟周期的待压缩图像数据序列。
原数据缓存队列用于暂时存储各个时钟周期待压缩图像数据序列,以便于后续选用较短长度的数据。
压缩数据缓存队列205,与实时压缩模块相连,适于缓存各个压缩图像数据。
实时压缩模块将各个压缩图像数据输出至压缩数据缓存队列,由压缩数据缓存队列进行缓存,供结果选择模块进行选择。
结果选择模块206,分别与原数据缓存队列及压缩数据缓存队列相连,适于将原数据缓存队列中缓存的各个待压缩图像数据序列与压缩数据缓存队列中缓存的相对应的各个压缩图像数据之中数据总长度短的作为待输出的压缩图像数据输出至输出接口。
结果选择模块将压缩图像数据的总长度与原始的待压缩图像数据序列的总长度做对比,选择总长度较短的作为待输出的压缩图像数据的最终结果传输出去。
输出接口203与结果选择模块相连,进一步适于:实时输出结果选择模块传输来的各个压缩图像数据。
结果选择模块将数据总长度短的作为待输出的压缩图像数据输出至输出接口,输出接口实时输出结果选择模块传输来的各个压缩图像数据。
在本发明一种可选实施方式中,如图2B所示,实时压缩模块202包括:差值计算模块2021及差值编码模块2022。
其中,差值计算模块2021,与输入接口相连,适于设Q(i,j)为第i个待压缩图像数据序列中的第j个像素,若i=1且j=1,则差值为Q(i,j);若1<i≤m且j=1,则差值为Q(i,1)-Q(i-1,1);若1<j≤n,则差值为Q(i,j)-Q(i,j-1)。
通常情况下,图像数据的相邻像素间存在较强的相似性,为了能够有效减少表达相同信息使用的位数,本实施例中的差值计算模块利用了图像数据的相邻像素间存在较强的相似性这一特性,对图像数据进行处理,具体地,差值计算模块计算像素之间的差值,其中,在计算像素之间的差值过程中,针对不同的像素,所采用的计算方法并不相同,为了便于描述,设Q(i,j)为第i个待压缩图像数据序列中的第j个像素,若i=1且j=1,则差值为Q(i,j);若1<i≤m且j=1,则差值为Q(i,1)-Q(i-1,1);若1<j≤n,则差值为Q(i,j)-Q(i,j-1)。
为了便于理解,下面结合图2C进行说明,图2C为差值计算模块对图像数据进行处理的示意图,输入接口每时钟周期输入一个包含6个像素的待压缩图像数据序列,分6个时钟周期输入了6个待压缩图像数据序列,6个待压缩图像数据序列包含像素px00-像素px55,同一时钟周期传输的像素数据在同一行,下一时钟周期的依次在下一行,例如,第一时钟周期输入包含像素px00-像素px05的待压缩图像数据序列,像素px00-像素px05在第一行,第二时钟周期输入包含像素px10-像素px15的待压缩图像数据序列,像素px10-像素px15在第二行,……,第六时钟周期输入包含像素px50-像素px55的待压缩图像数据序列,像素px50-像素px55在第六行。
为了便于后续对图像进行并行解压缩处理,先存储第1个待压缩图像数据序列中的第1个像素px00的像素值,即,i=1且j=1时,差值为第1行的第1个像素px00的像素值;1<i≤m且j=1,则差值为该行的第1个像素的像素值与上方相邻像素的像素值的差值;1<j≤n时,差值为该行的第j个像素的像素值与左侧相邻像素的像素值的差值。在这个策略下,各行解压缩的过程可以使用同一份解压缩逻辑流水式的并行进行。举例说明,若i=2且j=1,则计算像素px10的像素值与像素px00的像素值之间的差值,表示为px10-px00;若i=1且j=2,则计算像素px01的像素值与像素px00的像素值之间的差值,表示为px01-px00。待压缩图像数据序列中的“→”表示相邻的两个像素求差值的参考关系,从而得到图2C所示的差值处理后的图像数据。上述方式所确定的差值处理后的图像数据,为压缩和解压缩提供了便利,由于本实施例不是单纯按照像素的一维顺序求差值,因此,使得解压缩时,其余各行的第一个像素值的解压无需等待前一行的最后一个像素值解压完成后才能够解压缩,从而提高了解压缩效率。图2C是示意性说明了计算差值的过程,并不具有限定作用。
差值编码模块2022,与差值计算模块相连,适于对差值进行图像编码压缩处理,得到第i个压缩编码数据,统计第i个压缩编码数据的数据长度,将数据长度插入至第i个压缩编码数据的预设位置,得到第i个压缩图像数据。
差值编码模块每时钟周期对差值计算模块计算得到的差值进行图像编码压缩处理,例如,利用哈夫曼编码算法或者能够进行图像编码压缩处理的其它压缩算法,进行图像编码压缩处理,这里以利用哈夫曼编码算法进行图像编码压缩处理为例进行描述:
哈夫曼(Huffman)编码是图像数据压缩中的一种经典编码方式,是可变字长编码的一种。该方法完全依据字符出现概率来构造异字头的平均长度最短的码字,哈夫曼码的码字是异前置码字,即任一码字不会是另一码字的前面部分,这使码字可以连在一起传送,中间不需另加隔离符号,只要传送时不出错,收端仍可分离各个码字,不致混淆。在本实施例中,预先存储了差值与Haffman编码的对应关系,差值与Haffman编码是一一对应的关系,表1示意性列举了差值与Haffman编码的对应关系,需要说明的是,表1中Haffman编码的最右位为最低位,读取顺序为从右至左。
表1:
具体地,差值编码模块可以根据差值计算模块输出的差值查询表1,得到该差值对应的Haffman编码,每时钟周期进行相同处理,最终得到第i个压缩编码数据,该第i个压缩编码数据是第i个待压缩图像数据序列对应的压缩编码数据。
在得到第i个压缩编码数据后,该压缩编码数据的数据长度即可确定。为了便于在解压时可以快速截取一个待解压缩图像数据序列,并且找到下一个待解压缩图像数据序列的开始位置,从而可以快速准备出下一个待解压缩图像数据序列,需要统计第i个压缩编码数据的数据长度,将数据长度插入至第i个压缩编码数据的预设位置,得到压缩图像数据,例如,将数据长度插入到第i个压缩编码数据的起始位置,为了便于后续识别数据长度,设定压缩编码数据的数据长度占用8位。插入数据长度后的数据称为第i个压缩图像数据。
本实施例中,各个模块都是每时钟周期进行相应的处理,从而实现了并行进行图像编码压缩处理,提升了图像压缩效率,减少图像压缩所占用的时间。
在本发明一种可选实施方式中,实时压缩模块202还包括:数据整理模块2023,与差值编码模块相连,适于根据预设位宽对各个压缩图像数据进行分割整理,差值编码模块处理后的数据是变长数据,压缩数据缓存队列每次缓存的数据长度是有限的,即,压缩数据缓存队列有固定位宽,这里的预设位宽即为压缩数据缓存队列的位宽,因此,数据整理模块可以根据压缩数据缓存队列的位宽对各个压缩图像数据进行分割整理。
本实施例中各个模块每时钟周期进行相应的处理,实现了流水式压缩,因此,无需先将待压缩图像数据序列缓存至缓存队列中,再对缓存队列中的数据进行图像编码压缩处理,而后将压缩图像数据再缓存至缓存队列中,从而提升了图像数据压缩的执行速度,降低响应延迟。
本发明上述实施例提供的图像数据压缩方法,每时钟周期对第i个待压缩图像数据序列进行图像编码压缩处理,实现了图像数据的流水式压缩,提升了图像数据压缩效率,简化了图像数据压缩流程,降低了系统复杂度,提升了数据传输效率。
图3示出了根据本发明一个实施例的图像数据解压缩装置的结构示意图。如图3所示,该装置包括:输入接口301、压缩数据段截取模块302、解压缩模块303和输出接口304;
输入接口301,适于每时钟周期输入一个固定位宽的待解压缩图像数据序列。
待解压缩图像数据序列指需要进行解压缩的图像数据序列,其中,待解压缩图像数据序列是经过图像编码压缩处理后的数据序列。在本实施例中,通过调用输入接口每时钟周期输入一个固定位宽的待解压缩图像数据序列,固定位宽的宽度可以根据实际需要而设定。
压缩数据段截取模块302,适于每个时钟周期截取一个待解压缩图像数据序列,总共有m个。
压缩数据段截取模块每个时钟周期对一个或多个固定位宽的待解压缩图像数据序列进行截取,截取得到一个待解压缩图像数据序列,这里截取得到的待解压缩图像数据序列是能够提供给解压缩模块进行图像解码处理的图像数据序列,即,第i个待解压缩图像数据序列,通过截取得到m个待解压缩图像数据序列。
解压缩模块303,与所述压缩数据段截取模块相连,适于根据第1个待解压缩图像数据序列进行图像解码处理,得到第1个包含n个像素的解压缩图像数据序列;以及,1<i≤m时,根据所述第i个待解压缩图像数据序列及第i-1个待解压缩图像数据序列中的已还原的第1个像素进行图像解码处理,得到第i个包含n个像素的解压缩图像数据序列,并将所述第i个解压缩图像数据序列输出至所述输出接口。
待解压缩图像数据序列通过压缩数据段截取模块输出至与其相连的解压缩模块,解压缩模块每时钟周期针对第i个待解压缩图像数据序列进行图像解码处理,为了提高解压缩的并行性,解压缩模块执行如下图像解码处理:i=1时,根据第1个待解压缩图像数据序列进行图像解码处理,得到第1个包含n个像素的解压缩图像数据序列;以及,1<i≤m时,根据所述第i个待解压缩图像数据序列及第i-1个待解压缩图像数据序列中的已还原的第1个像素进行图像解码处理,得到第i个包含n个像素的解压缩图像数据序列,并将所述第i个解压缩图像数据序列输出至所述输出接口。
输出接口304,与所述解压缩模块相连,适于每时钟周期输出1个包含n个像素的解压缩图像数据序列。
解压缩模块将解压缩得到的包含n个像素的解压缩图像数据序列输出至输出接口,输出接口每时钟周期输出1个包含n个像素的解压缩图像数据序列。
在本发明一种可选实施方式中,所述解压缩模块进一步包括:n个解压缩单元;
任一解压缩单元,适于针对第i个待解压缩图像数据序列,按照从低位到高位的顺序读取第i个待解压缩图像数据序列中的待解压缩图像数据;将读取的待解压缩图像数据与预设解码集中的编码值进行匹配,将匹配的编码值对应的数值作为差值;从第i个待解压缩图像数据序列中截去已匹配的待解压缩图像数据,将剩余的待解压缩图像数据传递至下一个解压缩单元,直至耗尽第i个待解压缩图像数据序列,得到n个差值;
最后一个解压缩单元连接输出接口。
具体地,第i个待解压缩图像数据序列中的图像数据是以编码值形式来表示,解压缩模块中的任一解压缩单元每时钟周期进行相应的处理,针对第i个待解压缩图像数据序列,可以通过查询记录有编码值与差值对应关系的预设解码集来得到编码值对应的差值,这个过程可以通过以下两步实现:按照从低位到高位的顺序读取第i个待解压缩图像数据序列中的待解压缩图像数据;将读取的待解压缩图像数据与预设解码集中的编码值进行匹配,将匹配的编码值对应的数值作为差值,举例说明,第i个待解压缩图像数据序列为:0101101,认定最右侧是最低位,最左侧是最高位,读取时从低位到高位进行读取,也就是说,先读“1”,将读取的“1”与预设解码集中的编码值进行匹配,确定匹配上,再继续读“0”,将读取的“01”与预设解码集中的编码值进行匹配,表2示出了部分预设解码集,确定不能匹配,从而将“1”对应的数值作为差值,比如“1”对应的数值为“0”,那么“0”即为差值;虽然匹配到差值,但是该解压缩单元还需要做如下处理:从第i个待解压缩图像数据序列中截去已匹配的待解压缩图像数据,将剩余的待解压缩图像数据传递至下一个解压缩单元,例如,将匹配上的待解压缩图像数据“1”从第i个待解压缩图像数据序列中截去,截去处理后剩余的待解压缩图像数据为010110,将剩余的待解压缩图像数据010110传递至下一个解压缩单元,下一个解压缩单元做同样的处理,读取到“0”,将读取的“0”与预设解码集中的编码值进行匹配,确定匹配上,再继续读“1”,将读取的“10”与预设解码集中的编码值进行匹配,确定匹配上,再继续读“1”,将读取的“110”与预设解码集中的编码值进行匹配,再继续读“0”,将读取的“0110”与预设解码集中的编码值进行匹配,确定不能匹配,从而将“110”对应的数值作为差值,比如“110”对应的数值为“-1”,那么“-1”即为差值,直至耗尽第i个待解压缩图像数据序列,得到n个差值。这里仅是举例说明,不具有任何限定作用。
表2:
序号 | 数值 | 编码值 |
1 | -7 | 1111100 |
2 | -6 | 1011100 |
3 | -5 | 110100 |
4 | -4 | 100100 |
5 | -3 | 101100 |
6 | -2 | 11000 |
7 | -1 | 110 |
8 | 0 | 1 |
9 | 1 | 010 |
10 | 2 | 01000 |
11 | 3 | 001100 |
12 | 4 | 000100 |
13 | 5 | 010100 |
14 | 6 | 0011100 |
15 | 7 | 0111100 |
16 | 超出-7~7范围的其余值 | 原始数据,0000 |
在本发明一种可选实施方式中,在得到差值后,还需要还原图像数据,具体地,第1个解压缩单元,还适于:根据第i个待解压缩图像数据序列中的第1个差值及第i-1个待解压缩图像数据序列中的已还原的第1个像素,进行第i个待解压缩图像数据序列中的第1个像素的还原处理。
第1个解压缩单元负责执行第i个待解压缩图像数据序列中的第1个像素的元素的还原,在本实施例中,第1个解压缩单元是每时钟周期执行一次还原处理,第1个解压缩单元按照时钟周期先后顺序对第1待解压缩图像数据序列至第n个待解压缩图像数据序列中的第1个像素进行还原,上一个待解压缩图像数据序列中的第1个像素还原后才会执行下一个待解压缩图像数据序列中的第1个像素的还原。
第1个待解压缩图像数据序列中的第1个像素还原后是差值本身,从第2个时钟周期开始至第n个时钟周期结束,是根据第i个待解压缩图像数据序列中的第1个差值及第i-1个待解压缩图像数据序列中的已还原的第1个像素,进行第i个待解压缩图像数据序列中的第1个像素的还原处理,例如,对第2个待解压缩图像数据序列中的第1个像素进行还原时,是根据第2个待解压缩图像数据序列中的第1个差值及第1个待解压缩图像数据序列中的已还原的第1个像素进行还原,例如,第2个待解压缩图像数据序列中的第1个差值为px10-px00,第1个待解压缩图像数据序列中的已还原的第1个像素为px00,那么可以通过计算第2个待解压缩图像数据序列中的第1个差值px10-px00与第1个待解压缩图像数据序列中的已还原的第1个像素px00之和,来进行第2个待解压缩图像数据序列中的第1个像素的还原。这里仅是举例说明,不具有任何限定作用。
第j个解压缩单元还适于:当j>1时,根据第i个待解压缩图像数据序列中的第j个差值及根据第i个待解压缩图像数据序列中的已还原的第j-1个像素,进行第i个待解压缩图像数据序列中的第j个像素的还原处理。
第j个解压缩单元负责执行第i个待解压缩图像数据序列中的第j个像素的元素的还原,在本实施例中,第j个解压缩单元是每时钟周期执行一次还原处理,第j个解压缩单元按照时钟周期先后顺序对第1待解压缩图像数据序列至第n个待解压缩图像数据序列中的第j个像素进行还原,上一个待解压缩图像数据序列中的第j个像素还原后才会执行下一个待解压缩图像数据序列中的第j个像素的还原。
从第1个时钟周期开始至第n个时钟周期结束,是根据第i个待解压缩图像数据序列中的第j个差值及第i个待解压缩图像数据序列中的已还原的第j-1个像素,进行第i个待解压缩图像数据序列中的第j个像素的还原处理,例如,对第1个待解压缩图像数据序列中的第2个像素进行还原时,是根据第1个待解压缩图像数据序列中的第2个差值及第1个待解压缩图像数据序列中的已还原的第1个像素进行还原,例如,第1个待解压缩图像数据序列中的第2个差值为px01-px00,第1个待解压缩图像数据序列中的已还原的第1个像素为px00,那么可以通过计算第1个待解压缩图像数据序列中的第2个差值px01-px00与第1个待解压缩图像数据序列中的已还原的第1个像素px00之和,来进行第1个待解压缩图像数据序列中的第2个像素的还原处理。这里仅是举例说明,不具有任何限定作用。
本实施例中各个模块都是每时钟周期执行相应的处理,因此,在执行第i-1个待解压缩图像数据序列中的第1个像素的还原处理后,也就是下个时钟周期,就可以执行第i个待解压缩图像数据序列中的第1个像素的还原处理,无需等待第i-1个待解压缩图像数据序列中除了第1个像素以外的其它像素的还原处理;每个待解压缩图像数据序列的第1个像素的还原处理完成后,可以并行执行其它像素的还原处理,互不相干,提高了解压缩并行度。
在本发明一种可选实施方式中,所述压缩数据段截取模块进一步适于:每个时钟周期基于数据长度标记位截取一个或多个固定位宽的待解压缩图像数据序列,得到第i个待解压缩图像数据序列。
为了便于图像数据解压缩,在对第i个待压缩图像数据序列进行图像编码压缩处理时,在预设位置插入了数据长度标记位,即,第i个压缩图像数据中包含了数据长度标记位,因此,可以通过读取相应位置的数据长度标记位记录的数据长度来进行数据截取,数据长度标记位占用固定位数,例如,8位,那么,前8位即为数据长度。
输入接口每时钟周期输入一个固定位宽的待解压缩图像数据序列,很有可能数据长度标记位所标记的数据长度的图像数据位于一个或多个固定位宽的待解压缩图像数据序列中,因此,压缩数据段截取模块每个时钟周期基于数据长度标记位对一个或多个固定位宽的待解压缩图像数据序列进行截取,从一个或多个固定位宽的待解压缩图像数据序列中截取出与数据长度标记位记录的数据长度对应的第i个待解压缩图像数据序列。在截取得到某个待解压缩图像数据序列后,便可以确定下一个待解压缩图像数据序列的开始位置,那么,压缩数据段截取模块可以在下一个时钟周期再次基于数据长度标记位截取一个或多个固定位宽的待解压缩图像数据序列,得到下一个待解压缩图像数据序列,最终得到m个待解压缩图像数据序列。
在本发明一种可选实施方式中,由于解压缩后图像数据的数据量增多,可能需要更多的时钟周期才能够实现图像数据的输出,为了避免输入接口输入固定位宽的待解压缩图像数据序列时造成输入拥堵,所述装置还包括:压缩流数据缓存队列,与所述输入接口相连,适于缓存各个时钟周期的待解压缩图像数据序列。
根据本发明上述实施例提供的图像数据解压缩装置,在解压缩时,能够并行进行流水式解压缩,提升了解压缩效率,减少图像解压缩所占用的时间。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。
Claims (9)
1.一种图像数据压缩装置,包括:输入接口、压缩模块和输出接口;
输入接口,适于每时钟周期输入待压缩图像数据序列,其中,每时钟周期的待压缩图像数据序列包含n个像素;
实时压缩模块,与所述输入接口相连,适于每时钟周期针对第i个待压缩图像数据序列进行图像编码压缩处理;其中,i=1时,对第1个待压缩图像数据序列,进行图像编码压缩处理,得到第1个压缩图像数据;1<i≤m时,根据第i个待压缩图像数据序列中的像素及第i-1个待压缩图像数据序列中的像素进行图像编码压缩处理,得到第i个压缩图像数据,并将所述第i个压缩图像数据输出至所述输出接口;
输出接口,与所述实时压缩模块相连,适于实时输出各个压缩图像数据。
2.根据权利要求1所述的装置,其中,所述装置还包括:原数据缓存队列,与所述输入接口相连,适于缓存各个时钟周期的待压缩图像数据序列;
压缩数据缓存队列,与所述实时压缩模块相连,适于缓存各个压缩图像数据;
结果选择模块,分别与所述原数据缓存队列及所述压缩数据缓存队列相连,适于将原数据缓存队列中缓存的各个待压缩图像数据序列与压缩数据缓存队列中缓存的相对应的各个压缩图像数据之中数据总长度短的作为待输出的压缩图像数据输出至所述输出接口;
所述输出接口与所述结果选择模块相连,进一步适于:实时输出所述结果选择模块传输来的各个压缩图像数据。
3.根据权利要求1或2所述的装置,其中,所述实时压缩模块包括:
差值计算模块,与所述输入接口相连,适于设Q(i,j)为第i个待压缩图像数据序列中的第j个像素,若i=1且j=1,则差值为Q(i,j);若1<i≤m且j=1,则差值为Q(i,1)-Q(i-1,1);若1<j≤n,则差值为Q(i,j)-Q(i,j-1);
差值编码模块,与所述差值计算模块相连,适于对所述差值进行图像编码压缩处理,得到第i个压缩编码数据,统计第i个压缩编码数据的数据长度,将所述数据长度插入至第i个压缩编码数据的预设位置,得到第i个压缩图像数据。
4.根据权利要求3所述的装置,其中,所述实时压缩模块还包括:
数据整理模块,与所述差值编码模块相连,适于根据预设位宽对各个压缩图像数据进行分割整理。
5.一种图像数据解压缩装置,包括:输入接口、压缩数据段截取模块、解压缩模块和输出接口;
输入接口,适于每时钟周期输入一个固定位宽的待解压缩图像数据序列;
压缩数据段截取模块,适于每个时钟周期截取一个待解压缩图像数据序列,总共有m个;
解压缩模块,与所述压缩数据段截取模块相连,适于根据第1个待解压缩图像数据序列进行图像解码处理,得到第1个包含n个像素的解压缩图像数据序列;以及,1<i≤m时,根据所述第i个待解压缩图像数据序列及第i-1个待解压缩图像数据序列中的已还原的第1个像素进行图像解码处理,得到第i个包含n个像素的解压缩图像数据序列,并将所述第i个解压缩图像数据序列输出至所述输出接口;
输出接口,与所述解压缩模块相连,适于每时钟周期输出1个包含n个像素的解压缩图像数据序列。
6.根据权利要求5所述的装置,其中,所述解压缩模块进一步包括:n个解压缩单元;
任一解压缩单元,适于针对第i个待解压缩图像数据序列,按照从低位到高位的顺序读取第i个待解压缩图像数据序列中的待解压缩图像数据;将读取的待解压缩图像数据与预设解码集中的编码值进行匹配,将匹配的编码值对应的数值作为差值;从第i个待解压缩图像数据序列中截去已匹配的待解压缩图像数据,将剩余的待解压缩图像数据传递至下一个解压缩单元,直至耗尽第i个待解压缩图像数据序列,得到n个差值;
最后一个解压缩单元连接输出接口。
7.根据权利要求5或6所述的装置,其中,
第1个解压缩单元,还适于:根据第i个待解压缩图像数据序列中的第1个差值及第i-1个待解压缩图像数据序列中的已还原的第1个像素,进行第i个待解压缩图像数据序列中的第1个像素的还原处理;
第j个解压缩单元还适于:当j>1时,根据第i个待解压缩图像数据序列中的第j个差值及根据第i个待解压缩图像数据序列中的已还原的第j-1个像素,进行第i个待解压缩图像数据序列中的第j个像素的还原处理。
8.根据权利要求5或6所述的装置,其中,所述压缩数据段截取模块进一步适于:每个时钟周期基于数据长度标记位截取一个或多个固定位宽的待解压缩图像数据序列,得到第i个待解压缩图像数据序列。
9.根据权利要求5或6所述的装置,其中,所述装置还包括:
压缩流数据缓存队列,与所述输入接口相连,适于缓存各个时钟周期的待解压缩图像数据序列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110076277.2A CN112839230B (zh) | 2021-01-20 | 2021-01-20 | 图像数据压缩装置及图像数据解压缩装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110076277.2A CN112839230B (zh) | 2021-01-20 | 2021-01-20 | 图像数据压缩装置及图像数据解压缩装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112839230A true CN112839230A (zh) | 2021-05-25 |
CN112839230B CN112839230B (zh) | 2023-04-28 |
Family
ID=75929048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110076277.2A Active CN112839230B (zh) | 2021-01-20 | 2021-01-20 | 图像数据压缩装置及图像数据解压缩装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112839230B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11792303B1 (en) | 2022-09-30 | 2023-10-17 | International Business Machines Corporation | Fast clear memory of system memory |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010103932A (ja) * | 2008-10-27 | 2010-05-06 | Fuji Xerox Co Ltd | 符号化装置、復号装置、及び画像処理システム |
CN105791819A (zh) * | 2014-12-26 | 2016-07-20 | 炬芯(珠海)科技有限公司 | 一种图像的帧压缩方法、图像的解压缩方法及装置 |
CN105933708A (zh) * | 2016-04-15 | 2016-09-07 | 张彦刚 | 一种数据压缩和解压缩的方法和装置 |
CN107592541A (zh) * | 2017-09-13 | 2018-01-16 | 中国科学院半导体研究所 | 一种图像解压方法和系统 |
CN107749758A (zh) * | 2017-10-30 | 2018-03-02 | 成都心吉康科技有限公司 | 实时生理数据无损压缩、解压缩的方法、装置和系统 |
CN109040759A (zh) * | 2018-07-27 | 2018-12-18 | 西安空间无线电技术研究所 | 一种图像并行压缩装置及方法 |
CN109743583A (zh) * | 2019-01-14 | 2019-05-10 | 东华理工大学 | 一种基于相邻差值图像压缩的方法 |
CN110213589A (zh) * | 2019-06-18 | 2019-09-06 | 合肥安杰特光电科技有限公司 | 一种高速图像的实时压缩编码方法 |
-
2021
- 2021-01-20 CN CN202110076277.2A patent/CN112839230B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010103932A (ja) * | 2008-10-27 | 2010-05-06 | Fuji Xerox Co Ltd | 符号化装置、復号装置、及び画像処理システム |
CN105791819A (zh) * | 2014-12-26 | 2016-07-20 | 炬芯(珠海)科技有限公司 | 一种图像的帧压缩方法、图像的解压缩方法及装置 |
CN105933708A (zh) * | 2016-04-15 | 2016-09-07 | 张彦刚 | 一种数据压缩和解压缩的方法和装置 |
CN107592541A (zh) * | 2017-09-13 | 2018-01-16 | 中国科学院半导体研究所 | 一种图像解压方法和系统 |
CN107749758A (zh) * | 2017-10-30 | 2018-03-02 | 成都心吉康科技有限公司 | 实时生理数据无损压缩、解压缩的方法、装置和系统 |
CN109040759A (zh) * | 2018-07-27 | 2018-12-18 | 西安空间无线电技术研究所 | 一种图像并行压缩装置及方法 |
CN109743583A (zh) * | 2019-01-14 | 2019-05-10 | 东华理工大学 | 一种基于相邻差值图像压缩的方法 |
CN110213589A (zh) * | 2019-06-18 | 2019-09-06 | 合肥安杰特光电科技有限公司 | 一种高速图像的实时压缩编码方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11792303B1 (en) | 2022-09-30 | 2023-10-17 | International Business Machines Corporation | Fast clear memory of system memory |
Also Published As
Publication number | Publication date |
---|---|
CN112839230B (zh) | 2023-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7411529B2 (en) | Method of decoding bin values using pipeline architecture and decoding device therefor | |
CN109379598B (zh) | 一种基于fpga实现的图像无损压缩方法 | |
CN111797976A (zh) | 神经网络的训练方法、图像识别方法、装置、设备及介质 | |
CN101449462A (zh) | 基于集合关联高速缓存映射技术的高速数据压缩 | |
CN101841707B (zh) | 基于jpeg2000标准的高速实时处理算术熵编码方法 | |
US9100042B2 (en) | High throughput decoding of variable length data symbols | |
US8934727B2 (en) | Image processing apparatus, image processing method, and image forming apparatus | |
US20170195693A1 (en) | Count table maintenance apparatus for maintaining count table during processing of frame and related count table maintenance method | |
CN112839230B (zh) | 图像数据压缩装置及图像数据解压缩装置 | |
US9015429B2 (en) | Method and apparatus for an efficient hardware implementation of dictionary based lossless compression | |
US7684627B2 (en) | Techniques for image decompression | |
CN110958212B (zh) | 一种数据压缩、数据解压缩方法、装置及设备 | |
CN113497627A (zh) | 一种数据压缩和解压缩方法、装置及系统 | |
US8817875B2 (en) | Methods and systems to encode and decode sequences of images | |
CN111222624A (zh) | 一种并行计算方法及装置 | |
US20030191914A1 (en) | Bit plane coding apparatus | |
CN113141508A (zh) | 算术编码器及实现算术编码的方法和图像编码方法 | |
US10283073B2 (en) | Data processing systems | |
CN116170599B (zh) | 一种同步实时图像压缩方法、系统、介质及终端 | |
CN116883691B (zh) | 一种边缘设备的高帧率多路目标检测方法 | |
CN108155969B (zh) | 一种针对变长编码数据的解码电路 | |
CN112597082B (zh) | 总线的数据传输方法及电子设备 | |
CN116318171B (zh) | Lz4解压缩硬件加速实现/压缩方法、装置、介质及芯片 | |
TWI620947B (zh) | 用於高速衛星資料軟體平行前端解碼器的平行處理方法及其軟體架構 | |
CN108419080B (zh) | 一种jpegls上下文计算的流水线化优化方法及装置 |
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 | ||
CB02 | Change of applicant information |
Address after: 201306 building C, No. 888, Huanhu West 2nd Road, Lingang New District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai Applicant after: Shanghai Silang Technology Co.,Ltd. Address before: 100176 room 506-1, 5th floor, building 6, courtyard 10, KEGU 1st Street, Beijing Economic and Technological Development Zone, Daxing District, Beijing Applicant before: Beijing Si Lang science and Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |