首页 / 专利分类库 / 基本电子电路 / 一种无损数据压缩方法

一种无损数据压缩方法

申请号 CN202310227752.0 申请日 2023-03-04 公开(公告)号 CN117895949A 公开(公告)日 2024-04-16
申请人 曹信江; 发明人 曹信江;
摘要 本 发明 公开了一种无损 数据压缩 方法,对于用现有方法难以压缩的数据,选取一种可复现、可用少量信息描述的数据序列,该序列可以是随机或伪随机的,将该数据序列作为操作数,与要压缩的目标数据进行可复原的操作,再用已知的 无损压缩 方法进行试压缩,如果可以压缩,则压缩之,若不能压缩,则不压缩;再利用可复现数据序列的后续序列与前一序列进行可复原的操作;反复进行多轮次的上述步骤,可将任意大小的数据序列压缩至很小的体积。
权利要求

1.一种无损数据压缩方法,其特征在于,选取一个可复现的、可用少量信息描述的数据序列,作为操作序列,对已用现有方法压缩完成的数据,或接近随机状态的、难以用现有方法进行压缩的数据,即目标数据序列,进行可复原的操作。
2.根据权利要求1所述的一种无损数据压缩方法,其特征在于,对目标数据序列进行可复原操作生成的新的数据序列,用现有的无损数据压缩方法进行试压缩,若能压缩,则压缩之,生成更新的数据序列;若全序列难以压缩,可尝试分段压缩;若不能压缩,则不压缩;记录或标识该情况及采用的压缩方法。
3.根据权利要求2所述的一种无损数据压缩方法,其特征在于,对经操作生成的新的数据序列,经试压缩后,或压缩,或不压缩,再利用操作序列的后序数据序列,反复进行多个轮次的可复原操作、试压缩、压缩或不压缩,直至将目标数据序列压缩至满意大小;每个轮次,均记录压缩与否、压缩方法、使用的操作序列的序号或起、终点等信息,用于解压缩。
4.根据权利要求1、权利要求2、权利要求3所述的一种无损数据压缩方法,其特征在于,按相反的顺序,可逐轮次将最终数据序列恢复至目标数据序列,完成解压缩。

说明书全文

一种无损数据压缩方法

技术领域

[0001] 本发明属于数据压缩领域,尤其涉及一种可将任意大小的数据,或已用现有方法压缩完成的数据,或接近随机状态的、用现有方法难以压缩的数据,继续持续进行无损压缩的技术。

背景技术

[0002] 为节省数据占用的存储空间、传输带宽等资源,对原始数据进行压缩是常见的操作。一般原始数据都存在重复、冗余的情况或有一定规律性,利用这些特点,可采用特定的方法减少重复、冗余数据,根据其规律性,用较少的数据进行描述,即可对原始数据进行压缩,减小数据体积。若压缩后的数据可恢复原状,称为无损压缩。在某些领域,如图片、视频、声音等,可以在较少影响人的感觉的情况下,损失部分数据细节,并大幅度降低数据体积,称为有损压缩
[0003] 不管是无损数据压缩,还是有损数据压缩,经现有方法压缩后的数据,一般已经接近于随机的数据序列,再用现有方法进行压缩,已难以减小数据体积。

发明内容

[0004] 本发明所要解决的技术问题是针对现有数据压缩技术的现状,提供一种可将任意大小的数据,或已用现有方法压缩完成的数据,或接近随机状态的、用现有方法难以压缩的数据,继续持续进行压缩,并可大幅度减小其数据体积,从而节省存储空间、传输带宽等资源。

具体实施方式

[0005]
[0006] 因现有多种成熟、实用的方法进行数据压缩,所以各种原始数据均可用现有压缩方法先行压缩,这不是本发明的主题。本发明采用如下方法,将已用现有方法压缩完成的数据,或接近随机状态的、难以用现有方法进行压缩的数据进行压缩,为叙述方便,称要进行压缩的目标数按据序列为A0。
[0007] 1、选取一种数据序列B,该数据序列可用很少的信息进行描述,并可复现,可以是随机或伪随机的。例如圆周率π、自然数e、根号下2(√2)等无理数,其小数点后的数字序列是已知、可复现、接近随机状态的;或可利用某些方程式、迭代公式,从初始值进行顺序计算或反复迭代生成数据序列,例如,可选择混沌学中的一些已知的公式,反复迭代可生成无限长的接近随机状态的数据序列。这样的数据序列只需很少的信息描述,几乎不占空间。
[0008] 2、将数据序列B作为操作数,与要压缩的目标数据序列A0进行可复原的操作,生成一个新的数据序列,称为A1。可复原的操作方法可有多种,所选取的操作方法不应增大数据体积,例如,一种可用的操作方法为,在二进制状态下,按位进行异或操作。记录所使用的数据序列B的序号或起、终点信息,以便恢复数据时使用和确定后续序列起、终点。
[0009] 3、用现有的无损数据压缩方法对数据序列A1进行试压缩,如能减小其体积,则压缩之;若全序列难以压缩,可尝试分段压缩;压缩生成新的数据序列,称为A1a;经压缩的数据序列命名,在操作生成的序列A1后加“a”结尾以示区别,后文同规则。如试压缩情况不好,不能减小其体积,则不压缩。压缩或不压缩,及采用的压缩方法,均进行记录或标识。
[0010] 4、继续使用数据序列B的后续序列作为操作数,对数据序列A1a(如已压缩)或A1(如未压缩)进行可复原操作,生成新的数据序列A2,继续用现有的无损数据压缩方法对数据序列A2进行试压缩,若能压缩,则压缩之,生成新的数据序列A2a;若不能压缩,则不压缩。
[0011] 5、以上过程反复进行多个轮次,每个轮次将新生成的数据序列进行试压缩,若能压缩,则压缩之;若不能压缩,则不压缩。再进入下一轮次操作,反复进行多个轮次的可复原操作、试压缩、压缩或不压缩,最终通过A0、A1a(或A1)、A2a(或A2)、A3a(或A3)、A4a(或A4)......直至将数据序列A0压缩至满意的体积,生成最终的数据序列Ana(或An),其中n为序号。每个轮次均记录压缩与否、压缩方法、所使用的数据序列B的序号或起、终点等信息,以用于解压缩。辅以对多个文件或文件夹打包再继续采用本方法进行压缩,可得更高压缩率。
[0012] 6、解压缩时,按相反的顺序,逐轮次将最终的数据序列Ana(或An)恢复至原始的目标数据序列A0,完成解压缩。
[0013] 本发明所述的数据压缩方法是无损的,可将任意大小的、用现有方法难以压缩的数据序列,经多轮次压缩至很小的体积,也有望在某些领域替代有损压缩方法。本方法以消耗算为代价,换得数据体积的减小。在互联网、大数据、人工智能及各学科、各行业迅速发展的今天,每分每秒都在产生巨量的新的数据,这些数据极具价值,但也耗费了大量的存储、传输、处理等资源,对高压缩率的无损数据压缩技术需求极为迫切。本发明的社会效益和经济效益可观,意义重大。
[0014] 本发明的无损数据压缩方法已阐明,由本领域普通技术人员做出的各种变化或改型都不会脱离本发明的范围。
QQ群二维码
意见反馈