本发明属于视频编解码的,具体涉及一种高压缩率视频关键帧编码方法及解码方法。
背景技术:
1、视频是由不同的帧图像连续播放形成的,这些帧主要分为三类,分别是:i帧、p帧和b帧。
2、p帧:“帧间预测编码帧”,需要参考前面的i帧和/或p帧的不同部分,才能进行编码,p帧对前面的p帧和i帧有依赖性,但是,p帧压缩率比较高,占用的空间较小。
3、b帧:“双向预测编码帧”,以前帧后帧作为参考帧。,不仅参考前面的帧,还参考后面的帧,所以它的压缩率最高,可以达到200:1,不过,因为依赖后面的帧,所以不适合实时传输例如视频会议。
4、i帧:全帧压缩编码帧,视频序列中的第一个帧始终都是i帧,因此它是关键帧,通常是每个gop的第一个帧,经过适度地压缩,作为随机访问的参考点,可以当成静态图像,它描述了图像背景和运动主体的详情,不需要参考其他画面而生成,所占数据的信息量比较大,采用帧内编码方式,只利用本帧图像内的空间相关性,解码时仅用i帧的数据就可重构完整图像。
5、i帧编码的基本流程为:
6、(1)进行帧内预测,决定所采用的帧内预测模式。
7、(2)原始像素值减去预测值,得到残差。
8、(3)对残差进行变换和量化。
9、(4)变长编码和算术编码。
10、(5)重构图像并滤波,得到的图像作为其它帧的参考帧。
11、在各种视频标准中,由于i帧编码采用帧内编码方式,只利用本帧图像内的空间相关性,因此i帧压缩率低,压缩后所占数据量比较大,特别是在低码率视频编码中,i帧的压缩率问题一直影响了实际视频传输与应用。
技术实现思路
1、本发明提供了一种高压缩率视频关键帧编码方法及解码方法,解决了现有编解码方法对i帧压缩率低,压缩后所占数据量比较大,影响了实际视频传输与应用等技术问题。
2、本发明可通过以下技术方案实现:
3、一种高压缩率视频关键帧编码方法,包括以下步骤:
4、步骤一、对输入的原始图像进行r倍下采样得到低分辨率图像,并进行编解码得到低分辨率图像码流和低分辨率重建图像,再对低分辨率重建图像进行插值处理和超分处理得到多帧参考图像;
5、步骤二、对原始图像、多帧参考图像分别进行分块处理,将多帧参考图像中的每个编码块与原始图像对应的编码块进行比较,筛选出最优参考块即为原始图像对应编码块的最优参考图像预测块refn,n∈[0,n],其中n+1表示参考图像的总帧数;
6、同时采用现有帧内编码方法对原始图像进行预测编码,得到m种帧内空间预测块,并选出最优空间预测图像块spatm,m∈[0,m-1];
7、步骤三、根据率失真优化代价从最优参考图像预测块refn、最优空间预测图像块spatm选择最优预测图像块blk,再将最优预测图像块blk与原始图像对应编码块做差获得最优残差图像块,然后进行变换、量化和熵编码,输出原始图像分辨率码流,最后将低分辨率图像码流和原始图像分辨率码流合起来作为最终编码流输出。
8、进一步,将最优参考图像预测块ref、最优空间预测图像块spat与原始图像对应的编码块分别进行相差得到两个残差图像块,对两个所述残差图像进行率失真优化代价选择,将选择出的残差图像块对应的最优参考图像预测块refn或者最优空间预测图像块spatm作为最优预测图像块blkt,其中t∈[0,1],blk0和blk1分别表示最优参考图像预测块refn和最优空间预测图像块spatm。
9、进一步,最终编码流输出中,每个编码块中的预测块pu码流中均包含t和m或n的值。
10、进一步,对低分辨率重建图像采用插值算法进行r倍上采样,得到与原始图像相同分辨率大小的参考图像;
11、对低分辨率重建图像采用n个基于深度学习网络的超分算法进行r倍超分,得到与原始图像相同分辨率大小的n帧参考图像。
12、进一步,计算原始图像的编码块与多帧参考图像对应的编码块之间sad或者psnr或者ssim,比较计算结果筛选出最优参考块。
13、一种基于上文所述的高压缩率视频关键帧编码方法的高压缩率视频关键帧解码方法,包括以下步骤:
14、步骤ⅰ、解码编码流中的低分辨率图像码流,输出低分辨率重建图像,再对低分辨率重建图像进行插值处理和超分处理得到多帧参考图像;
15、步骤ⅱ、解码编码流中的原始图像分辨率码流,得到每个编码块对应的残差图像块;
16、步骤ⅲ、根据编码块中对应预测块pu包含的t值,判断最优预测图像块blkt是最优参考图像预测块blk0或者是最优空间预测图像块blk1,
17、若是最优参考图像预测块blk0,根据原始图像分辨率码流中每个预测块pu包含的n值,从步骤ⅰ的参考图像中获取最优参考图像预测块refn;
18、若是最优空间预测图像块blk1,根据原始图像分辨率码流中每个预测块pu包含的m值,获取最优空间预测图像块spatm;
19、步骤ⅳ、将各个残差图像块与对应获得的最优预测图像块blkt相加输出对应原始图像分辨率重建图像块,进而得到原始图像分辨率整幅重建图像。
20、进一步,若是最优参考图像预测块blk0,根据原始图像分辨率码流中每个预测块pu包含的n值,从步骤ⅰ的多帧参考图像中找到对应帧参考图像,从中获取最优参考图像预测块refn;
21、若是最优空间预测图像块blk1,根据原始图像分辨率码流中每个预测块pu包含的m值,选择对应的帧内预测方法,再结合已经解码出的重建图像块,预测出当前帧内空间预测块即为获取最优空间预测图像块spatm。
22、本发明有益的技术效果在于:
23、由于基于深度学习的超分算法通过大量数据训练和学习,使得该算法能够提供比传统插值算法好很多的超分图像,利用该超分图像作为帧内编码的参考图像,为帧内图像编码提高压缩效率提供了一种全新解决方法。
24、从视频编码理论来说,基于深度学习的超分算法相当于提供了视频图像的知识参考,有效的压缩了知识冗余,因此提高了视频编码中关键帧即i帧的压缩效率。
25、本发明结合利用传统的空间图像预测,传统的插值图像超分和基于深度学习的超分算法,相当于通过空间参考、知识参考和结构参考等方法组合最优化选择,最后达到较高的压缩效率,极大降低了关键帧即i帧编码码率。
1.一种高压缩率视频关键帧编码方法,其特征在于包括以下步骤:
2.根据权利要求1所述的高压缩率视频关键帧编码方法,其特征在于:将最优参考图像预测块ref、最优空间预测图像块spat与原始图像对应的编码块分别进行相差得到两个残差图像块,对两个所述残差图像进行率失真优化代价选择,将选择出的残差图像块对应的最优参考图像预测块refn或者最优空间预测图像块spatm作为最优预测图像块blkt,其中t∈[0,1],blk0和blk1分别表示最优参考图像预测块refn和最优空间预测图像块spatm。
3.根据权利要求2所述的高压缩率视频关键帧编码方法,其特征在于:最终编码流输出中,每个编码块中的预测块pu码流中均包含t和m或n的值。
4.根据权利要求1所述的高压缩率视频关键帧编码方法,其特征在于:对低分辨率重建图像采用插值算法进行r倍上采样,得到与原始图像相同分辨率大小的参考图像;
5.根据权利要求1所述的高压缩率视频关键帧编码方法,其特征在于:计算原始图像的编码块与多帧参考图像对应的编码块之间sad或者psnr或者ssim,比较计算结果筛选出最优参考块。
6.一种基于权利要求1所述的高压缩率视频关键帧编码方法的高压缩率视频关键帧解码方法,其特征在于包括以下步骤:
7.根据权利要求6所述的高压缩率视频关键帧解码方法,其特征在于:若是最优参考图像预测块blk0,根据原始图像分辨率码流中每个预测块pu包含的n值,从步骤ⅰ的多帧参考图像中找到对应帧参考图像,从中获取最优参考图像预测块refn;