一种基于JND算法的视频编码方法、装置、介质及计算设备制造方法及图纸

技术编号:32657186 阅读:16 留言:0更新日期:2022-03-17 11:05
本公开的实施方式提供了一种基于JND算法的视频编码方法,包括:计算视频中待编码的视频帧中的各个待编码的编码单元的残差;获取所述待编码的视频帧之前的任一视频帧的编码结果;将所述第一编码数据作为所述预设的码率控制算法的输入,计算与所述视频帧对应的参数;基于预设的JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到作为实际编码数据进行输出的第二编码数据;基于非JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第三编码数据。在以上过程中,既可以减少视觉冗余,降低视频帧的编码数据量,又可以避免码率控制算法导致JND算法失效的问题。致JND算法失效的问题。致JND算法失效的问题。

【技术实现步骤摘要】
一种基于JND算法的视频编码方法、装置、介质及计算设备


[0001]本公开的实施方式涉及视频编码领域,更具体地,本公开的实施方式涉及一种基于JND算法的视频编码方法、装置、介质及计算设备。

技术介绍

[0002]本部分旨在为权利要求书中陈述的本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
[0003]视频编码是指,通过压缩技术,将原始视频格式的文件转换成另一种视频格式文件。其中,视频是连续的图像序列,由连续的帧构成,一帧即为一幅图像。由于连续的帧之间相似性极高,为便于储存传输,我们需要对原始的视频进行编码压缩,以去除视频数据中的冗余信息。
[0004]传统的视频编码技术主要针对空间域冗余、时间域冗余以及统计冗余进行压缩编码,很少考虑到人眼视觉系统特性和心理效应,因此存在大量的视觉冗余。

技术实现思路

[0005]在本上下文中,本公开的实施方式期望提供一种基于JND算法的视频编码方法及装置。
[0006]在本公开实施方式的第一方面中,提供了一种基于JND算法的视频编码方法,包括:
[0007]计算视频中待编码的视频帧中的各个待编码的编码单元的残差;
[0008]获取所述待编码的视频帧之前的任一视频帧的编码结果;其中,所述任一视频帧的编码结果至少包括第一编码数据,所述第一编码数据包括基于非JND算法,使用与所述任一视频帧对应的参数,对所述任一视频帧中的各个待编码的编码单元的残差进行编码,得到的编码数据;所述参数包括基于预设的码率控制算法计算出的用于编码的参数;
[0009]将所述第一编码数据作为所述预设的码率控制算法的输入,计算与所述视频帧对应的参数;
[0010]基于预设的JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第二编码数据,并将所述第二编码数据作为实际编码数据进行输出;以及,基于非JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第三编码数据;其中,所述第三编码数据用于作为所述预设的码率控制算法的输入,计算与所述视频帧的之后的任一视频帧对应的编码参数。
[0011]在本公开的一个实施例中,所述计算视频中待编码的视频帧中的各个待编码的编码单元的残差,包括:
[0012]获取所述视频中待编码的视频帧,确定所述待编码的视频帧中的各个待编码的编码单元;
[0013]计算所述各个待编码的编码单元与所述视频帧之前的任一视频帧中已完成编码的编码单元的残差。
[0014]在本公开的一个实施例中,所述编码单元包括宏块或CTU编码树单元。
[0015]在本公开的一个实施例中,所述预设的JND算法包括应用于像素域的JND算法;
[0016]基于预设的JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第二编码数据,包括:
[0017]基于所述像素域的JND算法,计算所述视频帧中的各个待编码的编码单元的JND系数;
[0018]计算所述视频帧中的各个待编码的编码单元的残差与所述JND系数的差值,并使用与所述视频帧对应的参数,对所述差值进行变换、量化和熵编码,确定出与所述视频帧中的各个待编码的编码单元对应的编码数据。
[0019]在本公开的一个实施例中,所述预设的JND算法包括应用于变换域的JND算法;
[0020]基于预设的JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第二编码数据,包括:
[0021]对所述视频帧中的各个待编码的编码单元的残差进行DCT离散余弦变换,确定所述视频帧中的各个待编码的编码单元对应的DCT系数;
[0022]基于所述变换域的JND算法,根据所述DCT系数确定所述视频帧中的各个待编码的编码单元对应的JND系数;
[0023]计算所述视频帧中的各个待编码的编码单元对应的所述DCT系数与所述JND系数的差值,并使用与所述视频帧对应的参数,对所述差值进行量化和熵编码,确定出与所述视频帧中的各个待编码的编码单元对应的编码数据。
[0024]在本公开的一个实施例中,所述参数包括量化参数;
[0025]所述将所述第一编码数据作为所述预设的码率控制算法的输入,计算与所述视频帧对应的参数,包括:
[0026]获取所述待编码的视频帧的之前的任一视频帧的第一编码数据,将所述第一编码数据作为所述预设的码率控制算法的输入,以由所述预设的码率控制算法预测所述待编码的视频帧的编码数据;
[0027]根据所述预测的待编码的视频帧的编码数据计算与所述视频帧对应的量化参数。
[0028]在本公开实施方式的第二方面中,提供了一种基于JND算法的视频编码装置,包括:
[0029]残差计算模块,计算视频中待编码的视频帧中的各个待编码的编码单元的残差;
[0030]获取模块,获取所述待编码的视频帧之前的任一视频帧的编码结果;其中,所述任一视频帧的编码结果至少包括第一编码数据,所述第一编码数据包括基于非JND算法,使用与所述任一视频帧对应的参数,对所述任一视频帧中的各个待编码的编码单元的残差进行编码,得到的编码数据;所述参数包括基于预设的码率控制算法计算出的用于编码的参数;
[0031]码率控制模块,将所述第一编码数据作为所述预设的码率控制算法的输入,计算与所述视频帧对应的参数;
[0032]编码模块,基于预设的JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第二编码数据,并将所述第二编码数据作
为实际编码数据进行输出;以及,基于非JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第三编码数据;其中,所述第三编码数据用于作为所述预设的码率控制算法的输入,计算与所述视频帧的之后的任一视频帧对应的编码参数。
[0033]在本公开实施方式的第三方面中,提供了一种存储介质;其上存储有计算机指令,该指令被处理器执行时实现如下所述方法的步骤:
[0034]计算视频中待编码的视频帧中的各个待编码的编码单元的残差;
[0035]获取所述待编码的视频帧之前的任一视频帧的编码结果;其中,所述任一视频帧的编码结果至少包括第一编码数据,所述第一编码数据包括基于非JND算法,使用与所述任一视频帧对应的参数,对所述任一视频帧中的各个待编码的编码单元的残差进行编码,得到的编码数据;所述参数包括基于预设的码率控制算法计算出的用于编码的参数;
[0036]将所述第一编码数据作为所述预设的码率控制算法的输入,计算与所述视频帧对应的参数;
[0037]基于预设的JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第二编码数据,并将所述第二编码数据作为实际编码数据进行输出;以本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于JND算法的视频编码方法,包括:计算视频中待编码的视频帧中的各个待编码的编码单元的残差;获取所述待编码的视频帧之前的任一视频帧的编码结果;其中,所述任一视频帧的编码结果至少包括第一编码数据,所述第一编码数据包括基于非JND算法,使用与所述任一视频帧对应的参数,对所述任一视频帧中的各个待编码的编码单元的残差进行编码,得到的编码数据;所述参数包括基于预设的码率控制算法计算出的用于编码的参数;将所述第一编码数据作为所述预设的码率控制算法的输入,计算与所述视频帧对应的参数;基于预设的JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第二编码数据,并将所述第二编码数据作为实际编码数据进行输出;以及,基于非JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第三编码数据;其中,所述第三编码数据用于作为所述预设的码率控制算法的输入,计算与所述视频帧的之后的任一视频帧对应的编码参数。2.根据权利要求1所述的方法,所述计算视频中待编码的视频帧中的各个待编码的编码单元的残差,包括:获取所述视频中待编码的视频帧,确定所述待编码的视频帧中的各个待编码的编码单元;计算所述各个待编码的编码单元与所述视频帧之前的任一视频帧中已完成编码的编码单元的残差。3.根据权利要求1所述的方法,所述编码单元包括宏块或CTU编码树单元。4.根据权利要求1所述的方法,所述预设的JND算法包括应用于像素域的JND算法;基于预设的JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第二编码数据,包括:基于所述像素域的JND算法,计算所述视频帧中的各个待编码的编码单元的JND系数;计算所述视频帧中的各个待编码的编码单元的残差与所述JND系数的差值,并使用与所述视频帧对应的参数,对所述差值进行变换、量化和熵编码,确定出与所述视频帧中的各个待编码的编码单元对应的编码数据。5.根据权利要求1所述的方法,所述预设的JND算法包括应用于变换域的JND算法;基于预设的JND算法,使用与所述视频帧对应的参数,对所述视频帧中的各个待编码的编码单元的残差进行编码,得到第二编码数据,包括:对所述视频帧中的各个待编码的编码单元的残差进行DCT离散余弦变换,确定所述视频帧中的各个待编码的编码单元对应的DCT系数;基于所述变换域的JND算法,根据所述DCT系数确定所述视频帧中的各个待编码的编...

【专利技术属性】
技术研发人员:韩庆瑞阮良陈功程玲
申请(专利权)人:杭州网易智企科技有限公司
类型:发明
国别省市:

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

1
相关领域技术
  • 暂无相关专利