图像数据的压缩方法和装置制造方法及图纸

技术编号:17268212 阅读:77 留言:0更新日期:2018-02-14 17:00
本发明专利技术提供一种图像数据的压缩方法和装置。该方法包括:对待压缩数据进行掩码操作,得到掩码处理后的掩码数据;对掩码数据进行哈希处理,得到掩码数据对应的哈希表的键值;判断键值位置处是否存储有有效地址;若是,则自输入数据流的有效地址处起读取参考数据流,将待压缩数据流与参考数据流进行比较,得到压缩结果。本发明专利技术实施例提供的图像数据的压缩方法和装置,通过在对图像数据进行压缩之前,先对待压缩数据进行掩码操作,使得图像数据中的重复的数据片段增多,提高了图像数据的压缩比,同时由于仅在现有的无损压缩过程中增加了掩码操作,故压缩步骤较少,操作简单,提高了压缩速度。

Method and device for compression of image data

【技术实现步骤摘要】
图像数据的压缩方法和装置
本专利技术涉及压缩技术,尤其涉及一种图像数据的压缩方法和装置。
技术介绍
压缩技术主要用于节约存储空间,现有的压缩方法可分为无损压缩和有损压缩。压缩效果常用压缩比表示,压缩比越大,压缩过程所节约的空间越大。为保证压缩后的数据所包含的信息与压缩前数据所包含的信息一致,可采用无损压缩方法,但是根据香农第一定理,无损压缩的压缩比取决于源数据的信息熵,信息熵越大压缩比越小。因此对于色彩信息丰富的自然图像而言,由于其信息熵较大,故会导致无损压缩的压缩比较低,即很难通过无损压缩节约存储空间。为解决上述问题,在图像压缩过程中通常采用有损压缩方法,如联合图像专家小组(JointPhotographicExpertsGroup,简称Jpeg)压缩方法,通过舍弃图像中人眼不易感知的细节来提高压缩比。有损压缩方法具有质量可调节、压缩比高的特点,但是压缩过程先后包括颜色空间转换、下采样、DCT变换、量化、Zig-zag重排序、熵编码等过程,压缩步骤多、操作复杂,导致压缩速度较慢。
技术实现思路
本专利技术实施例提供一种图像数据的压缩方法和装置,用以解决现有图像数据的压缩方法存在压缩步骤多、操作复杂、压缩速度较慢的问题。第一方面,本专利技术实施例提供一种图像数据的压缩方法,包括:对待压缩数据进行掩码操作和哈希处理操作,得到压缩数据对应的掩码数据和掩码数据对应的哈希表的键值,待压缩数据为自输入数据流的待压缩数据流的起始地址处起读取的预设字节的数据;判断键值位置处是否存储有有效地址;若是,则自输入数据流的有效地址处起读取参考数据流,将待压缩数据流与参考数据流进行比较,得到压缩结果。上述方法通过在对图像数据进行压缩之前,先对待压缩数据进行掩码操作,使得图像数据中的重复的数据片段增多,提高了图像数据的压缩比,同时由于仅在现有的无损压缩过程中增加了掩码操作,故压缩步骤较少,操作简单,提高了压缩速度。结合第一方面,在第一方面的第一种可能的实现方式中,对待压缩数据进行掩码操作,得到掩码处理后的掩码数据,包括:根据预设压缩误差,获取预设压缩误差的掩码;将待压缩数据的各字节数据与掩码进行按位与操作,得到掩码后的掩码数据。结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,根据预设压缩误差,获取预设压缩误差的掩码,包括:判断预设压缩误差是否为1、3、7等2的指数幂减去1得到的数据;若是,则对预设压缩误差取反,获取预设压缩误差的掩码;若否,则获取大于预设压缩误差的所有的2的指数幂中的最小值,对最小值减1后取反,获取预设压缩误差的掩码。通过根据用户输入的预设压缩误差,确定掩码,可使得本专利技术提供的图像数据压缩方法的压缩损失在用户的预设范围内,确保了压缩效果。结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,将待压缩数据流与参考数据流进行比较,得到压缩结果,包括:沿待压缩数据流,自起始地址处起,按顺序读取一个字节的数据作为第一待比较数据,并将指向起始地址的第一指针向后移动一个字节;沿参考数据流,自有效地址处起,按顺序读取一个字节的数据作为第二待比较数据,并将指向有效地址的第二指针向后移动一个字节;根据第一待比较数据和第二待比较数据的比较结果,得到压缩结果。结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,根据第一待比较数据和第二待比较数据的比较结果,得到压缩结果,包括:判断第一待比较数据与第二待比较数据的差值是否符合预设规则;若否,则根据第一指针当前所指的地址,获得终止地址;若是,则根据第一指针和第二指针,再次读取得到第一待比较数据和第二待比较数据,将第一指针和第二指针分别向后移动一个字节,判断再次读取得到的第一待比较数据与第二待比较数据的差值是否符合预设规则,直至第一待比较数据与第二待比较数据不符合预设规则,根据第一指针当前所指的地址,获得终止地址;根据终止地址、起始地址以及有效地址,得到压缩结果。结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,根据终止地址、起始地址以及有效地址,得到压缩结果,包括:根据终止地址和起始地址获取匹配长度;根据起始地址和有效地址,获取偏移值;根据匹配长度和偏移值,得到压缩结果。结合第一方面的第四种可能的实现方式,在第一方面的第六种可能的实现方式中,若预设压缩误差加1后是2的指数幂,判断第一待比较数据与第二待比较数据的差值是否符合预设规则,包括:对第一待比较数据进行掩码操作,得到掩码后的第一待比较数据;对第二待比较数据进行掩码操作,得到掩码后的第二待比较数据;判断掩码后的第一待比较数据与掩码后的第二待比较数据的差值是否为0;若是,则确定第一待比较数据与第二待比较数据的差值符合预设规则;若否,则确定第一待比较数据与第二待比较数据的差值不符合预设规则。结合第一方面的第四种可能的实现方式,在第一方面的第七种可能的实现方式中,若预设压缩误差加1后不是2的指数幂,判断第一待比较数据与第二待比较数据的差值是否符合预设规则,包括:判断第一待比较数据与第二待比较数据的差值的绝对值是否小于预设压缩误差;若是,则确定第一待比较数据与第二待比较数据的差值符合预设规则;若否,则确定第一待比较数据与第二待比较数据的差值不符合预设规则。结合第一方面、第一方面的第一种至第七种中任一种可行的实现方式,在第一方面的第八种可能的实现方式中,方法还包括:若键值位置处没有存储有效地址,将起始地址存储在哈希表的键值位置处,将指向起始地址的第一指针向后移动一个字节,顺序读取预设字节的数据作为新的待压缩数据;判断新的待压缩数据对应的哈希表的键值位置处是否存储有有效地址;若是,则获得第一指针当前所指的终止地址;若否,则将第一指针继续向后移动一个字节,再次读取新的待压缩数据,直至再次读取新的待压缩数据对应的哈希表的键值位置处存储有有效地址,获得第一指针当前所指的终止地址;根据终止地址和起始地址获取复制长度,根据起始地址和复制长度,读取复制数据,根据复制数据,得到压缩结果。结合第一方面、第一方面的第六种至第七种中任一种可行的实现方式,在第一方面的第九种可能的实现方式中,本次压缩过程中的待压缩数据流的起始地址为上一次压缩过程中的终止地址或预设起始地址。下面介绍本专利技术实施例提供的一种图像数据的压缩装置,该装置与方法一一对应,用以实现上述实施例中的图像数据的压缩方法,具有相同的技术特征和技术效果,本专利技术实施例对此不再赘述。第二方面,本专利技术实施例提供一种图像数据的压缩装置,包括:掩码处理模块,用于对待压缩数据进行掩码操作,得到掩码处理后的掩码数据,待压缩数据为自输入数据流的待压缩数据流的起始地址处起读取的预设字节的数据;哈希处理模块,用于对掩码数据进行哈希处理,得到掩码数据对应的哈希表的键值;有效地址判断模块,用于判断键值位置处是否存储有有效地址;压缩模块,用于当键值位置处是否存储有有效地址时,自输入数据流的有效地址处起读取参考数据流,将待压缩数据流与参考数据流进行比较,得到压缩结果。结合第二方面,在第二方面的第一种可能的实现方式中,掩码处理模块具体用于:根据预设压缩误差,获取预设压缩误差的掩码;将待压缩数据的各字节数据与掩码进行按位与操作,得到掩码后的掩码数据。结合第二方本文档来自技高网...
图像数据的压缩方法和装置

【技术保护点】
一种图像数据的压缩方法,其特征在于,包括:对待压缩数据进行掩码操作,得到掩码处理后的掩码数据,所述待压缩数据为自输入数据流的待压缩数据流的起始地址处起读取的预设字节的数据;对所述掩码数据进行哈希处理,得到所述掩码数据对应的哈希表的键值;判断所述键值位置处是否存储有有效地址;若是,则自所述输入数据流的所述有效地址处起读取参考数据流,将所述待压缩数据流与所述参考数据流进行比较,得到压缩结果。

【技术特征摘要】
1.一种图像数据的压缩方法,其特征在于,包括:对待压缩数据进行掩码操作,得到掩码处理后的掩码数据,所述待压缩数据为自输入数据流的待压缩数据流的起始地址处起读取的预设字节的数据;对所述掩码数据进行哈希处理,得到所述掩码数据对应的哈希表的键值;判断所述键值位置处是否存储有有效地址;若是,则自所述输入数据流的所述有效地址处起读取参考数据流,将所述待压缩数据流与所述参考数据流进行比较,得到压缩结果。2.根据权利要求1所述的方法,其特征在于,所述对待压缩数据进行掩码操作,得到掩码处理后的掩码数据,包括:根据预设压缩误差,获取所述预设压缩误差的掩码;将所述待压缩数据的各字节数据与所述掩码进行按位与操作,得到掩码后的掩码数据。3.根据权利要求2所述的方法,其特征在于,所述根据预设压缩误差,获取所述预设压缩误差的掩码,包括:判断所述预设压缩误差加1后是否为2的指数幂;若是,则对所述预设压缩误差取反,获取所述预设压缩误差的掩码;若否,则获取大于所述预设压缩误差的所有的2的指数幂中的最小值,对所述最小值减1后取反,获取所述预设压缩误差的掩码。4.根据权利要求3所述的方法,其特征在于,所述将所述待压缩数据流与所述参考数据流进行比较,得到压缩结果,包括:沿所述待压缩数据流,自所述起始地址处起,按顺序读取一个字节的数据作为第一待比较数据,并将指向所述起始地址的第一指针向后移动一个字节;沿所述参考数据流,自所述有效地址处起,按顺序读取一个字节的数据作为第二待比较数据,并将指向所述有效地址的第二指针向后移动一个字节;根据所述第一待比较数据和所述第二待比较数据的比较结果,得到压缩结果。5.根据权利要求4所述的方法,其特征在于,所述根据所述第一待比较数据和所述第二待比较数据的比较结果,得到压缩结果,包括:判断所述第一待比较数据与所述第二待比较数据的差值是否符合预设规则;若否,则根据所述第一指针当前所指的地址,获得终止地址;若是,则根据所述第一指针和所述第二指针,再次读取得到第一待比较数据和第二待比较数据,将所述第一指针和所述第二指针分别向后移动一个字节,判断再次读取得到的第一待比较数据与第二待比较数据的差值是否符合预设规则,直至所述第一待比较数据与所述第二待比较数据不符合预设规则,根据所述第一指针当前所指的地址,获得终止地址;根据所述终止地址、所述起始地址以及所述有效地址,得到压缩结果。6.根据权利要求5所述的方法,其特征在于,所述根据所述终止地址、所述起始地址以及所述有效地址,得到压缩结果,包括:根据所述终止地址和所述起始地址获取匹配长度;根据所述起始地址和所述有效地址,获取偏移值;根据所述匹配长度和所述偏移值,得到压缩结果。7.根据权利要求5所述的方法,其特征在于,若所述预设压缩误差加1后是2的指数幂,所述判断所述第一待比较数据与所述第二待比较数据的差值是否符合预设规则,包括:对所述第一待比较数据进行掩码操作,得到掩码后的第一待比较数据;对所述第二待比较数据进行掩码操作,得到掩码后的第二待比较数据;判断所述掩码后的第一待比较数据与所述掩码后的第二待比较数据的差值是否为0。8.根据权利要求5所述的方法,其特征在于,若所述预设压缩误差加1后不是2的指数幂,所述判断所述第一待比较数据与所述第二待比较数据的差值是否符合预设规则,包括:判断所述第一待比较数据与所述第二待比较数据的差值的绝对值是否小于所述预设压缩误差。9.根据权利要求1至8任一项所述的方法,其特征在于,所述方法还包括:若所述键值位置处没有存储所述有效地址,将所述起始地址存储在所述哈希表的所述键值位置处,将指向所述起始地址的第一指针向后移动一个字节,顺序读取所述预设字节的数据作为新的待压缩数据;判断所述新的待压缩数据对应的哈希表的键值位置处是否存储有有效地址;若是,则获得所述第一指针当前所指的终止地址;若否,则将所述第一指针继续向后移动一个字节,再次读取新的待压缩数据,直至再次读取新的待压缩数据对应的哈希表的键值位置处存储有有效地址,获得所述第一指针当前所指的终止地址;根据所述终止地址和所述起始地址获取复制长度;根据所述起始地址和所述复制长度,读取复制数据;根据所述复制数据,得到压缩结果。10.一种图像数据的压缩装置,其特征在于,包括:掩码处理模块,用于对待压缩数据进行掩码操作,得到掩码处理...

【专利技术属性】
技术研发人员:李勇
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1