视频图像数据的压缩方法与解压方法、计算机装置、计算机可读存储介质制造方法及图纸

技术编号:17884348 阅读:175 留言:0更新日期:2018-05-06 04:48
本发明专利技术公开视频图像数据的压缩方法与解压方法、计算机装置、计算机可读存储介质,该压缩方法包括将一帧图像中的超级图像模块划分为多个预设像素大小的第一像素块,并对第一像素块进行水平预测编码以及垂直预测编码;计算第一像素块原始编码数据的总比特数、水平预测编码结果的总比特数以及垂直预测编码结果的总比特数,选择总比特数较少的作为最优编码模式,将初始化像素的像素值、最优编码模式以及所选择的最优编码模式下的各个像素的残差值写入滤波压缩数据中。该解码方法是对上述压缩数据进行解码的方法,该计算机装置运行程序时可以实现上述的方法。本发明专利技术可以减小解码器解码过程中占用的内存带宽。

Video image data compression method and decompression method, computer device, and computer readable storage medium

The invention discloses a compression method and a decompression method, a computer device, a computer readable storage medium, which divides a super image module in a frame image into a first pixel block with a plurality of preset pixel sizes, and performs a horizontal predictive coding and a vertical predictive coding for the first pixel block. The total bit number of the original coded data of the first pixel block, the total bit number of the horizontal predictive coding result and the total bit number of the vertical predictive coding result are calculated, and the number of the total bits is selected as the optimal encoding mode, and the pixel value of the pixel, the optimal encoding mode and the selected optimal coding mode will be initialized. The residual values of one pixel are written into filtered compressed data. The decoding method is a method for decoding the compressed data, which can realize the above method when running the program. The invention can reduce the memory bandwidth occupied in the decoding process of the decoder.

【技术实现步骤摘要】
视频图像数据的压缩方法与解压方法、计算机装置、计算机可读存储介质
本专利技术涉及图像数据的压缩与解压领域,尤其涉及针对VP9视频标准的视频图像数据的压缩方法与解压方法,还涉及实现这种压缩方法、解压方法的计算机装置以及计算机可读存储介质。
技术介绍
现在人们使用电子设备拍摄视频后,通常会将视频传输至网络并分享给其他用户,然而,随着电子设备拍摄的视频清晰度越来越高,视频解码过程所需的动态随机存储器(DDR)带宽也越来越大,为了减小视频解码器所需的动态随机存储器带宽,需要对视频解码过程中的一些临时缓存数据进行压缩,再对压缩后的数据进行读写,从而减少解码读写动态随机存储器的数据量,减少解码器占用的内存带宽。目前较为常用的视频编码、解码的标准包括H264以及H265标准,而VP9视频编解码标准是谷歌公司推出的一种新的视频编解码标准,目前按照VP9编解码标准进行编解码的视频已广泛应用在多个视频网站上,如视频网站youtube上。VP9编解码标准规定一帧图像可以分为多个图像分片(tile),每一个图像分片的码流数据是按该图像分片光栅扫描顺序存储的,因此在不使用该图像分片进行并行解码时,解码器按图像分片的光栅扫描顺序逐个解码每个图像分片。VP9视频编解码标准中编码单元大小为64×64个像素,被称为超级图像模块(superblock)。通常一个图像分片包括有一个或者多个超级图像模块,在图像分片的内部,解码器按照光栅扫描顺序解码每个超级图像模块。通常在解码视频过程中,对于I帧,需要对图像的部分滤波数据临时缓存到动态随机存储器,对于P帧,则需要对运动向量数据以及部分滤波数据临时缓存到动态随机存储器,对这些临时缓存数据压缩后再进行读写操作可以有效减小解码的动态随机存储器读写带宽。在超级图像模块内部,每个像素大小为8×8的小块共享一个运动向量数据,因此每个超级图像模块内部有8×8组运动向量数据。即在解码一个超级图像模块时,会生成并写出8×8个运动向量数据到动态随机存储器中,在解码运动向量数据的过程中,解码器还需要从动态随机存储器中读取若干个其他小块图像的运动向量数据,以对当前小块图像的运动向量数据进行预测。在解码P帧时,其内部某个帧间预测块(interblock)的运动向量需要读取左侧一个小块和上侧一个小块的运动向量数据进行预测,左侧一个小块的运动向量数据一般还存在解码电路的流水级模块中,不需要从动态随机存储器中读取;但上侧一个小块的运动向量数据可能属于上一个超级图像模块的一行像素,已不在解码器的静态存储器(SRAM)中,需要从动态随机存储器中读取。根据VP9视频编解码标准的规则,若邻域的运动向量数据还不足以完成当前帧间预测块的运动向量预测,则需要使用解码顺序的上一帧图像相同位置的运动向量数据进行预测。此时,电子设备的硬件解码电路需要从内存中将相应位置的运动向量数据读取回来进行处理。从动态随机存储器中读取运动向量数据的过程,给解码设备增加了额外的动态随机存储器带宽。目前还没有针对VP9编解码标准的运动向量数据进行压缩的方案。另一方面,在对一个超级图像模块进行滤波时,额外需要该超级图像模块左侧8列Y、8列U、8列V数据以及上侧8行Y、8行U、8行V数据。若该超级图像模块不是位于图像分片的最左侧,则左侧8列数据为硬件解码器流水线前一个超级图像模块的数据,其还保存在静态存储器中;若该超级图像模块位于图像分片的最左侧(但不是图像的最左侧),则左侧8列数据并不在静态存储器中,硬件电路需要发命令将其从内存中读取回来。对于上侧8行的数据,一般情况下其都不会在内部静态存储器中,硬件电路需要发命令将其从内存中读取回来,这也需要占用电子设备大量的内存资源。
技术实现思路
本专利技术的第一目的是提供一种减小电子设备解码图像时使用的内存带宽资源的视频图像数据压缩方法。本专利技术的第二目的是提供一种可以减少图像解码时占用内存带宽的视频图像数据解压方法。本专利技术的第三目的是提供一种实现上述视频图像数据压缩方法或者解压方法的计算机装置。本专利技术的第四目的是提供一种实现上述视频图像数据压缩方法或者解压方法的计算机可读存储介质。为了实现上述的主要目的,本专利技术提供的视频图像数据的压缩方法包括对一帧图像中需要临时缓存的滤波数据进行压缩,包括以下步骤:将需要临时缓存的数据块划分为多个预设像素大小的第一像素块,并对第一像素块进行水平预测编码:获取初始像素的像素值,并按列计算第一像素块内的其他像素的实际值与预测值的第一残差值,计算水平预测编码结果的总比特数;对第一像素块进行垂直预测编码:按行计算第一像素块内除初始像素外的其他像素的实际值与预测值的第二残差值,计算垂直预测编码结果的总比特数;计算第一像素块原始编码数据的总比特数、水平预测编码结果的总比特数以及垂直预测编码结果的总比特数,选择总比特数较少的作为最优编码模式,将初始化像素的像素值、最优编码模式以及所选择的最优编码模式下的各个像素的残差值写入滤波压缩数据中。一个优选的方案是,将需要临时缓存的超级图像模块划分为多个预设像素大小的第一像素块前,将超级图像模块划分为多个编码单元,将每一编码单元划分多个第一像素块;将初始化像素的像素值、最优编码模式以及最优编码模式下的各个像素的残差值写入滤波压缩数据时,还生成编码单元滤波索引信息,一个编码单元的滤波索引信息包括多个第一像素块的滤波索引信息。进一步的,滤波索引信息包括编码单元中包含的有效编码块的数量和/或压缩后的有效数据量的数值。更进一步的方案是,该压缩方法还包括对一帧图像的运动向量数据进行压缩,包括以下步骤:将超级图像模块划分为多个预设像素大小的第二像素块,判断每一第二像素块的运动向量数据能否通过参考相邻位置的第二像素块的运动向量数据预测生成,如可以,则将运动向量索引信息中的预测标志置为有效,否则,将预测标志置为无效,并将第二像素块的运动向量原始数据写入运动向量压缩数据中。进一步的方案是,运动向量数据通过一个或者两个参考帧的运动向量数据计算获得,运动向量索引信息包括参考帧标志,在参考帧的数量为一个时,将参考帧标志置为无效,只写入一个参考帧的运动向量数据,在参考帧的数量为两个时,将参考帧标志置为有效,并写入两个个参考帧的运动向量压缩数据。更进一步的方案是,运动向量索引信息还包括压缩标志;将第二像素块的运动向量原始数据写入压缩数据前,判断原始数量中是否存在无效数据,如是,删除无效数据,并且将删除无效数据后的数据写入运动向量压缩数据,将压缩标志置为有效,否则,将原始数据写入运动向量压缩数据,将压缩标志置为无效。为实现上述的第二目的,本专利技术提供的视频图像数据的解压方法包括滤波数据的解压步骤,包括读取当前解压的第一像素块的滤波索引信息以及滤波压缩数据,根据滤波压缩数据中最优编码模式确定第一像素块的解码模式,并获取第一像素块中初始像素的像素值、残差值的数据,依据解码模式计算第一像素块每一像素点的像素值。一个优选的方案是,该解压方法还包括运动向量数据的解压步骤,包括:读取第二像素块的运动向量索引信息,根据运动向量索引信息中的预测标志、参考帧标志以及压缩数据,计算第二像素块的每一像素的运动向量数据。为实现上述的第三目的,本专利技术提供的计算机装置包括处理器以及计算机可读存储介质,计算机可读存储介质本文档来自技高网
...
视频图像数据的压缩方法与解压方法、计算机装置、计算机可读存储介质

【技术保护点】
视频图像数据的压缩方法,包括:对一帧图像的滤波数据进行压缩,其特征在于,对滤波数据进行压缩的步骤包括:将所述一帧图像中的超级图像模块划分为多个预设像素大小的第一像素块,并对所述第一像素块进行水平预测编码:获取初始像素的像素值,并按列计算所述第一像素块内的其他像素的实际值与预测值的第一残差值,计算水平预测编码结果的总比特数;对所述第一像素块进行垂直预测编码:按行计算所述第一像素块内除所述初始像素外的其他像素的实际值与预测值的第二残差值,计算垂直预测编码结果的总比特数;计算所述第一像素块原始编码数据的总比特数、水平预测编码结果的总比特数以及垂直预测编码结果的总比特数,选择总比特数较少的作为最优编码模式,将所述初始化像素的像素值、最优编码模式以及所选择的最优编码模式下的各个像素的残差值写入滤波压缩数据中。

【技术特征摘要】
1.视频图像数据的压缩方法,包括:对一帧图像的滤波数据进行压缩,其特征在于,对滤波数据进行压缩的步骤包括:将所述一帧图像中的超级图像模块划分为多个预设像素大小的第一像素块,并对所述第一像素块进行水平预测编码:获取初始像素的像素值,并按列计算所述第一像素块内的其他像素的实际值与预测值的第一残差值,计算水平预测编码结果的总比特数;对所述第一像素块进行垂直预测编码:按行计算所述第一像素块内除所述初始像素外的其他像素的实际值与预测值的第二残差值,计算垂直预测编码结果的总比特数;计算所述第一像素块原始编码数据的总比特数、水平预测编码结果的总比特数以及垂直预测编码结果的总比特数,选择总比特数较少的作为最优编码模式,将所述初始化像素的像素值、最优编码模式以及所选择的最优编码模式下的各个像素的残差值写入滤波压缩数据中。2.根据权利要求1所述的视频图像数据的压缩方法,其特征在于:将一帧图像中的所述超级图像模块划分为多个预设像素大小的第一像素块前,将所述超级图像模块划分为多个编码单元,将每一所述编码单元划分多个所述第一像素块;将所述初始化像素的像素值、最优编码模式以及最优编码模式下的各个像素的残差值写入滤波压缩数据时,还生成所述编码单元滤波索引信息,一个所述编码单元的所述滤波索引信息包括多个所述第一像素块的滤波索引信息。3.根据权利要求2所述的视频图像数据的压缩方法,其特征在于:所述滤波索引信息包括所述编码单元中包含的有效编码块的数量和/或压缩后的有效数据量的数值。4.根据权利要求1至3任一项所述的视频图像数据的压缩方法,其特征在于,所述压缩方法还包括对一帧图像的运动向量数据进行压缩,对运动向量数据进行压缩的步骤包括:将所述超级图像模块划分为多个预设像素大小的第二像素块,判断每一所述第二像素块的运动向量数据能否通过相邻的第二像素块的运动向量数据预测生成,如可以,则将运动向量索引信息中的预测标志置为有效,否则,将所述预测标志置为无效,并将所述第二像素块的运动向...

【专利技术属性】
技术研发人员:邹文欢张义周星
申请(专利权)人:珠海全志科技股份有限公司
类型:发明
国别省市:广东,44

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

1