首页 / 专利库 / 资料储存系统 / 数据压缩 / 无损压缩 / 熵编码 / 一种视频编码方法、解码方法、装置及电子设备

一种视频编码方法、解码方法、装置及电子设备

阅读:419发布:2020-05-13

专利汇可以提供一种视频编码方法、解码方法、装置及电子设备专利检索,专利查询,专利分析的服务。并且本 发明 实施例 提供了一种 视频编码 方法、解码方法、装置及 电子 设备,包括:获得失真图像,生成失真图像对应的边信息分量,将失真图像的失真图像 颜色 分量以及边信息分量,输入预先建立的 卷积神经网络 模型进行卷积滤波处理,得到去失真图像颜色分量,对待 熵编码 数据进行熵编码,得到编码后的视频比特流,待熵编码数据为对当前原始 帧 图像进行视频编码生成的,且包括用于生成边信息分量的边信息。采用该方案,实现了在视频编解码过程中,使用一种不同于 现有技术 的卷积神经网络模型对失真图像进行去失真处理。,下面是一种视频编码方法、解码方法、装置及电子设备专利的具体信息内容。

1.一种视频编码方法,其特征在于,包括:
获得失真图像,所述失真图像为对待编码视频中的当前原始图像进行视频编码的过程中生成的;
生成所述失真图像对应的边信息分量,所述边信息分量表示所述失真图像相对所述当前原始帧图像的失真特征;
将所述失真图像的失真图像颜色分量以及所述边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量,其中,所述卷积神经网络模型为基于预设训练集进行训练得到的,所述预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量;
对待熵编码数据进行熵编码,得到编码后的视频比特流,所述待熵编码数据为对所述当前原始帧图像进行视频编码生成的,且包括用于生成所述边信息分量的边信息。
2.如权利要求1所述的方法,其特征在于,所述失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的重建图像;或者
所述失真图像为对重建图像采用其他预设滤波方法进行滤波后得到的,所述重建图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的。
3.如权利要求1所述的方法,其特征在于,所述边信息分量至少包括表示如下失真特征之一:
表示所述失真图像相对所述当前原始帧图像的失真程度;
表示所述失真图像相对所述当前原始帧图像的失真位置
表示所述失真图像相对所述当前原始帧图像的失真类型。
4.如权利要求1所述的方法,其特征在于,生成所述失真图像对应的边信息分量,包括:
确定所述失真图像每个像素点的失真程度值;
基于所述失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成所述失真图像对应的边信息分量,其中,所述边信息分量包括的每个分量值与所述失真图像上相同位置的像素点相对应。
5.如权利要求4所述的方法,其特征在于,确定所述失真图像每个像素点的失真程度值,包括:
获取所述当前原始帧图像的每个编码区域的量化参数,将所述失真图像每个像素点所在编码区域的量化参数,确定为所述失真图像每个像素点的失真程度值。
6.如权利要求4所述的方法,其特征在于,基于所述失真图像各像素点的位置,使用获取的所述各像素点的失真程度值,生成所述失真图像对应的边信息分量,包括:
基于所述失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值;或者
基于所述失真图像的像素值范围,对获取的所述各像素点的失真程度值进行标准化处理,得到处理后失真程度值,所述处理后失真程度值的取值范围与所述像素值范围相同;基于所述失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值。
7.一种视频编码装置,其特征在于,包括:
第一图像获得模,用于获得失真图像,所述失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的;
第一生成模块,用于生成所述失真图像对应的边信息分量,所述边信息分量表示所述失真图像相对所述当前原始帧图像的失真特征;
第一滤波处理模块,用于将所述失真图像的失真图像颜色分量以及所述边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量,其中,所述卷积神经网络模型为基于预设训练集进行训练得到的,所述预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量;
熵编码模块,用于对待熵编码数据进行熵编码,得到编码后的视频比特流,所述待熵编码数据为对所述当前原始帧图像进行视频编码生成的,且包括用于生成所述边信息分量的边信息。
8.如权利要求7所述的装置,其特征在于,所述失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的重建图像;或者
所述失真图像为对重建图像采用其他预设滤波方法进行滤波后得到的,所述重建图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的。
9.如权利要求7所述的装置,其特征在于,所述边信息分量至少包括表示如下失真特征之一:
表示所述失真图像相对所述当前原始帧图像的失真程度;
表示所述失真图像相对所述当前原始帧图像的失真位置;
表示所述失真图像相对所述当前原始帧图像的失真类型。
10.如权利要求7所述的装置,其特征在于,所述第一生成模块,具体用于确定所述失真图像每个像素点的失真程度值;并基于所述失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成所述失真图像对应的边信息分量,其中,所述边信息分量包括的每个分量值与所述失真图像上相同位置的像素点相对应。
11.如权利要求10所述的装置,其特征在于,所述第一生成模块,具体用于获取所述当前原始帧图像的每个编码区域的量化参数,将所述失真图像每个像素点所在编码区域的量化参数,确定为所述失真图像每个像素点的失真程度值。
12.如权利要求10所述的装置,其特征在于,所述第一生成模块,具体用于基于所述失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值;或者
基于所述失真图像的像素值范围,对获取的所述各像素点的失真程度值进行标准化处理,得到处理后失真程度值,所述处理后失真程度值的取值范围与所述像素值范围相同;基于所述失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值。
13.一种电子设备,其特征在于,包括处理器、通信接口存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的方法。
15.一种视频解码方法,其特征在于,包括:
对接收的视频比特流进行熵解码,得到当前熵解码数据;
获得失真图像,所述失真图像为对所述当前熵解码数据进行视频解码的过程中生成的;
基于所述当前熵解码数据中包括的边信息,生成所述失真图像对应的边信息分量,所述边信息分量表示所述失真图像相对所述当前熵解码数据对应的原始帧图像的失真特征;
将所述失真图像的失真图像颜色分量以及所述边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量;
其中,所述卷积神经网络模型为基于预设训练集进行训练得到的,所述预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量。
16.如权利要求15所述的方法,其特征在于,所述失真图像为对所述当前熵解码数据进行视频解码的过程中生成的重建图像;或者
所述失真图像为对重建图像采用其他预设滤波方法进行滤波后得到的,所述重建图像为对所述当前熵解码数据进行视频解码的过程中生成的。
17.如权利要求15所述的方法,其特征在于,得到的所述去失真图像颜色分量,用于对所述视频比特流中的后续熵解码数据进行视频解码;和/或
用于生成所述原始帧图像对应的解码后图像,作为待播放帧图像。
18.如权利要求15所述的方法,其特征在于,所述边信息分量至少表示如下失真特征之一:
表示所述失真图像相对所述原始帧图像的失真程度;
表示所述失真图像相对所述原始帧图像的失真位置;
表示所述失真图像相对所述原始帧图像的失真类型。
19.如权利要求15所述的方法,其特征在于,基于所述当前熵解码数据中包括的边信息,生成所述失真图像对应的边信息分量,包括:
从所述当前熵解码数据中,获取所述失真图像每个像素点的失真程度值;
基于所述失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成所述失真图像对应的边信息分量,其中,所述边信息分量包括的每个分量值与所述失真图像上相同位置的像素点相对应。
20.如权利要求19所述的方法,其特征在于,从所述当前熵解码数据中,获取所述失真图像每个像素点的失真程度值,包括:
从所述当前熵解码数据中,获取所述当前熵解码数据对应的原始帧图像的每个编码区域的量化参数,将所述失真图像每个像素点所在编码区域的量化参数,确定为所述失真图像每个像素点的失真程度值。
21.如权利要求19所述的方法,其特征在于,基于所述失真图像各像素点的位置,使用获取的所述各像素点的失真程度值,生成所述失真图像对应的边信息分量,包括:
基于所述失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值;或者
基于所述失真图像的像素值范围,对获取的所述各像素点的失真程度值进行标准化处理,得到处理后失真程度值,所述处理后失真程度值的取值范围与所述像素值范围相同;基于所述失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值。
22.一种视频解码装置,其特征在于,包括:
熵解码模块,用于对接收的视频比特流进行熵解码,得到当前熵解码数据;
第二图像获得模块,用于获得失真图像,所述失真图像为对所述当前熵解码数据进行视频解码的过程中生成的;
第二生成模块,用于基于所述当前熵解码数据中包括的边信息,生成所述失真图像对应的边信息分量,所述边信息分量表示所述失真图像相对所述当前熵解码数据对应的原始帧图像的失真特征;
第二滤波处理模块,用于将所述失真图像的失真图像颜色分量以及所述边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量,其中,所述卷积神经网络模型为基于预设训练集进行训练得到的,所述预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量。
23.如权利要求22所述的装置,其特征在于,所述失真图像为对所述当前熵解码数据进行视频解码的过程中生成的重建图像;或者
所述失真图像为对重建图像采用其他预设滤波方法进行滤波后得到的,所述重建图像为对所述当前熵解码数据进行视频解码的过程中生成的。
24.如权利要求22所述的装置,其特征在于,得到的所述去失真图像颜色分量,用于对所述视频比特流中的后续熵解码数据进行视频解码;和/或
用于生成所述原始帧图像对应的解码后图像,作为待播放帧图像。
25.如权利要求22所述的装置,其特征在于,所述边信息分量至少表示如下失真特征之一:
表示所述失真图像相对所述原始帧图像的失真程度;
表示所述失真图像相对所述原始帧图像的失真位置;
表示所述失真图像相对所述原始帧图像的失真类型。
26.如权利要求22所述的装置,其特征在于,所述第二生成模块,具体用于从所述当前熵解码数据中,获取所述失真图像每个像素点的失真程度值;并基于所述失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成所述失真图像对应的边信息分量,其中,所述边信息分量包括的每个分量值与所述失真图像上相同位置的像素点相对应。
27.如权利要求26所述的装置,其特征在于,所述第二生成模块,具体用于从所述当前熵解码数据中,获取所述当前熵解码数据对应的原始帧图像的每个编码区域的量化参数,将所述失真图像每个像素点所在编码区域的量化参数,确定为所述失真图像每个像素点的失真程度值。
28.如权利要求26所述的装置,其特征在于,所述第二生成模块,具体用于基于所述失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值;或者
基于所述失真图像的像素值范围,对获取的所述各像素点的失真程度值进行标准化处理,得到处理后失真程度值,所述处理后失真程度值的取值范围与所述像素值范围相同;基于所述失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值。
29.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求15-21任一所述的方法。
30.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求15-21任一所述的方法。

说明书全文

一种视频编码方法、解码方法、装置及电子设备

技术领域

[0001] 本发明涉及视频编解码技术领域以及图像处理技术领域,特别是涉及一种视频编码方法,以及一种视频解码方法,及相关装置和电子设备。

背景技术

[0002] 在视频编码系统中,原始视频数据被进行多种处理,如:预测、变换、量化、重建、滤波等,在这种处理过程中,已处理的视频数据相对原始视频数据可能已经发生像素偏移,导致视觉障碍或假象;此外,在大多数视频编码系统采用的基于的混合编码框架下,由于相邻的编码块采用不同的编码参数(如不同的变换量化过程、不同的预测方式、不同参考图像等),各块引入的误差大小及其分布特性相互独立,相邻块边界会产生不连续性,产生块效应。这些失真不但影响重建图像的主客观质量,若重建图像作为后续编码像素的参考图像,还会影响后续编码像素的预测准确性,影响最终视频比特流的大小。
[0003] 因此,视频编解码系统中,往往会在重建模块之后加入去失真滤波模块,如图1所示。
[0004] 然而,传统的去失真滤波器通常是人为地去归纳失真图像的特征,人为地设计滤波器结构,以实验和经验为基础配置滤波器系数,例如视频编码标准H.264标准、H.265标准中采用的去块滤波器(DF,Deblocking Filter)等;也有一类去失真滤波器,它们基于局部图像区域的一些统计信息,自适应地配置滤波器结构、滤波器系数等,如H.265标准里使用的样点自适应补偿技术(SAO,Sample Adaptive Offset)、视频编解码里使用的自适应环路滤波技术(ALF,Adaptive loop Filter)等,这类自适应滤波器复杂度较高,且编码端需要将依赖于局部统计信息的滤波器相关参数写入码流中以保证编解码端的一致性,这无疑增加了编码比特数。
[0005] 近年来,深度学习理论迅速发展,与传统依赖先验知识的特征提取算法不同,深度神经网络可在训练数据驱动下自适应地构建特征描述,具有更高的灵活性和普适性。
[0006] 深度学习在许多高层次的计算机视觉问题上已经取得很大的成功,如图像分类、目标检测和目标分割等。2015年业界已经提出了基于卷积神经网络的端到端的图像超分辨率重建算法(SRCNN,Super Resolution Convolutional Neural Network),该网络相对于当时超分辨率重建领域的最领先技术展现了明显的优势,深度学习开始在低层次计算机视觉问题上显示出巨大的潜;又如,受卷积神经网络在超分辨率恢复中的应用启发,业界内提出使用训练得到的多层卷积神经网络ARCNN(Artifacts Reduction Convolutional Neural Network)对JPEG编码后图像进行后处理滤波以去除图像失真,相对传统的滤波方法获得了明显的主、客观质量提升。
[0007] 目前,业界内还提出使用训练得到的卷积神经网络VRCNN(Variable-Filter-size Residue-learning Convolutional Neural Network)替代传统的去块滤波技术和自适应样点补偿技术,对内编码后的图像进行后处理滤波,实验结果表明相对于上述传统的环内滤波方法,卷积神经网络使得重建图像主、客观质量获得了大幅提升。
[0008] 基于卷积神经网络的端到端的图像去失真算法,避免了图像预处理、人工设计滤波器系数等过程,通过数据驱动自动学习图像失真特征及补偿方法,使用更简便、泛化性更佳、性能提升更明显,特别适用于糅合了多种失真的图像/视频压缩领域。

发明内容

[0009] 本发明实施例的目的在于提供一种视频编码方法、解码方法、装置及电子设备,以实现在视频编解码过程中,使用一种不同于现有技术的卷积神经网络模型对失真图像进行去失真处理。具体技术方案如下:
[0010] 本发明实施例提供一种视频编码方法,包括:
[0011] 获得失真图像,所述失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的;
[0012] 生成所述失真图像对应的边信息分量,所述边信息分量表示所述失真图像相对所述当前原始帧图像的失真特征;
[0013] 将所述失真图像的失真图像颜色分量以及所述边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量,其中,所述卷积神经网络模型为基于预设训练集进行训练得到的,所述预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量;
[0014] 对待熵编码数据进行熵编码,得到编码后的视频比特流,所述待熵编码数据为对所述当前原始帧图像进行视频编码生成的,且包括用于生成所述边信息分量的边信息。
[0015] 进一步的,所述失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的重建图像;或者
[0016] 所述失真图像为对重建图像采用其他预设滤波方法进行滤波后得到的,所述重建图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的。
[0017] 进一步的,所述边信息分量至少包括表示如下失真特征之一:
[0018] 表示所述失真图像相对所述当前原始帧图像的失真程度;
[0019] 表示所述失真图像相对所述当前原始帧图像的失真位置
[0020] 表示所述失真图像相对所述当前原始帧图像的失真类型。
[0021] 进一步的,生成所述失真图像对应的边信息分量,包括:
[0022] 确定所述失真图像每个像素点的失真程度值;
[0023] 基于所述失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成所述失真图像对应的边信息分量,其中,所述边信息分量包括的每个分量值与所述失真图像上相同位置的像素点相对应。
[0024] 进一步的,确定所述失真图像每个像素点的失真程度值,包括:
[0025] 获取所述当前原始帧图像的每个编码区域的量化参数,将所述失真图像每个像素点所在编码区域的量化参数,确定为所述失真图像每个像素点的失真程度值。
[0026] 进一步的,基于所述失真图像各像素点的位置,使用获取的所述各像素点的失真程度值,生成所述失真图像对应的边信息分量,包括:
[0027] 基于所述失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值;或者
[0028] 基于所述失真图像的像素值范围,对获取的所述各像素点的失真程度值进行标准化处理,得到处理后失真程度值,所述处理后失真程度值的取值范围与所述像素值范围相同;基于所述失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值。
[0029] 本发明实施例还提供一种视频编码装置,包括:
[0030] 第一图像获得模块,用于获得失真图像,所述失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的;
[0031] 第一生成模块,用于生成所述失真图像对应的边信息分量,所述边信息分量表示所述失真图像相对所述当前原始帧图像的失真特征;
[0032] 第一滤波处理模块,用于将所述失真图像的失真图像颜色分量以及所述边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量,其中,所述卷积神经网络模型为基于预设训练集进行训练得到的,所述预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量;
[0033] 熵编码模块,用于对待熵编码数据进行熵编码,得到编码后的视频比特流,所述待熵编码数据为对所述当前原始帧图像进行视频编码生成的,且包括用于生成所述边信息分量的边信息。
[0034] 进一步的,所述失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的重建图像;或者
[0035] 所述失真图像为对重建图像采用其他预设滤波方法进行滤波后得到的,所述重建图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的。
[0036] 进一步的,所述边信息分量至少包括表示如下失真特征之一:
[0037] 表示所述失真图像相对所述当前原始帧图像的失真程度;
[0038] 表示所述失真图像相对所述当前原始帧图像的失真位置;
[0039] 表示所述失真图像相对所述当前原始帧图像的失真类型。
[0040] 进一步的,所述第一生成模块,具体用于确定所述失真图像每个像素点的失真程度值;并基于所述失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成所述失真图像对应的边信息分量,其中,所述边信息分量包括的每个分量值与所述失真图像上相同位置的像素点相对应。
[0041] 进一步的,所述第一生成模块,具体用于获取所述当前原始帧图像的每个编码区域的量化参数,将所述失真图像每个像素点所在编码区域的量化参数,确定为所述失真图像每个像素点的失真程度值。
[0042] 进一步的,所述第一生成模块,具体用于基于所述失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值;或者
[0043] 基于所述失真图像的像素值范围,对获取的所述各像素点的失真程度值进行标准化处理,得到处理后失真程度值,所述处理后失真程度值的取值范围与所述像素值范围相同;基于所述失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值。
[0044] 本发明实施例还提供一种电子设备,包括处理器、通信接口存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
[0045] 存储器,用于存放计算机程序
[0046] 处理器,用于执行存储器上所存放的程序时,实现上述任一视频编码方法步骤。
[0047] 本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一视频编码方法步骤。
[0048] 本发明实施例提供的视频编码方法中,所使用的卷积神经网络模型为基于预设训练集进行训练得到的,预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量,边信息分量能够表示失真图像相对原始样本图像的失真特征;在进行视频编码的过程中,针对当前原始帧图像进行视频编码的过程中生成的失真图像,首先生成失真图像对应的边信息分量,然后将失真图像的失真图像颜色分量以及边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量。从而实现了在视频编码过程中,使用一种不同于现有技术的卷积神经网络模型对失真图像进行去失真处理。
[0049] 本发明实施例提供一种视频解码方法,包括:
[0050] 对接收的视频比特流进行熵解码,得到当前熵解码数据;
[0051] 获得失真图像,所述失真图像为对所述当前熵解码数据进行视频解码的过程中生成的;
[0052] 基于所述当前熵解码数据中包括的边信息,生成所述失真图像对应的边信息分量,所述边信息分量表示所述失真图像相对所述当前熵解码数据对应的原始帧图像的失真特征;
[0053] 将所述失真图像的失真图像颜色分量以及所述边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量;
[0054] 其中,所述卷积神经网络模型为基于预设训练集进行训练得到的,所述预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量。
[0055] 进一步的,所述失真图像为对所述当前熵解码数据进行视频解码的过程中生成的重建图像;或者
[0056] 所述失真图像为对重建图像采用其他预设滤波方法进行滤波后得到的,所述重建图像为对所述当前熵解码数据进行视频解码的过程中生成的。
[0057] 进一步的,得到的所述去失真图像颜色分量,用于对所述视频比特流中的后续熵解码数据进行视频解码;和/或
[0058] 用于生成所述原始帧图像对应的解码后图像,作为待播放帧图像。
[0059] 进一步的,所述边信息分量至少表示如下失真特征之一:
[0060] 表示所述失真图像相对所述原始帧图像的失真程度;
[0061] 表示所述失真图像相对所述原始帧图像的失真位置;
[0062] 表示所述失真图像相对所述原始帧图像的失真类型。
[0063] 进一步的,基于所述当前熵解码数据中包括的边信息,生成所述失真图像对应的边信息分量,包括:
[0064] 从所述当前熵解码数据中,获取所述失真图像每个像素点的失真程度值;
[0065] 基于所述失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成所述失真图像对应的边信息分量,其中,所述边信息分量包括的每个分量值与所述失真图像上相同位置的像素点相对应。
[0066] 进一步的,从所述当前熵解码数据中,获取所述失真图像每个像素点的失真程度值,包括:
[0067] 从所述当前熵解码数据中,获取所述当前熵解码数据对应的原始帧图像的每个编码区域的量化参数,将所述失真图像每个像素点所在编码区域的量化参数,确定为所述失真图像每个像素点的失真程度值。
[0068] 进一步的,基于所述失真图像各像素点的位置,使用获取的所述各像素点的失真程度值,生成所述失真图像对应的边信息分量,包括:
[0069] 基于所述失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值;或者
[0070] 基于所述失真图像的像素值范围,对获取的所述各像素点的失真程度值进行标准化处理,得到处理后失真程度值,所述处理后失真程度值的取值范围与所述像素值范围相同;基于所述失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值。
[0071] 本发明实施例还提供一种视频解码装置,包括:
[0072] 熵解码模块,用于对接收的视频比特流进行熵解码,得到当前熵解码数据;
[0073] 第二图像获得模块,用于获得失真图像,所述失真图像为对所述当前熵解码数据进行视频解码的过程中生成的;
[0074] 第二生成模块,用于基于所述当前熵解码数据中包括的边信息,生成所述失真图像对应的边信息分量,所述边信息分量表示所述失真图像相对所述当前熵解码数据对应的原始帧图像的失真特征;
[0075] 第二滤波处理模块,用于将所述失真图像的失真图像颜色分量以及所述边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量,其中,所述卷积神经网络模型为基于预设训练集进行训练得到的,所述预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量。
[0076] 进一步的,所述失真图像为对所述当前熵解码数据进行视频解码的过程中生成的重建图像;或者
[0077] 所述失真图像为对重建图像采用其他预设滤波方法进行滤波后得到的,所述重建图像为对所述当前熵解码数据进行视频解码的过程中生成的。
[0078] 进一步的,得到的所述去失真图像颜色分量,用于对所述视频比特流中的后续熵解码数据进行视频解码;和/或
[0079] 用于生成所述原始帧图像对应的解码后图像,作为待播放帧图像。
[0080] 进一步的,所述边信息分量至少表示如下失真特征之一:
[0081] 表示所述失真图像相对所述原始帧图像的失真程度;
[0082] 表示所述失真图像相对所述原始帧图像的失真位置;
[0083] 表示所述失真图像相对所述原始帧图像的失真类型。
[0084] 进一步的,所述第二生成模块,具体用于从所述当前熵解码数据中,获取所述失真图像每个像素点的失真程度值;并基于所述失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成所述失真图像对应的边信息分量,其中,所述边信息分量包括的每个分量值与所述失真图像上相同位置的像素点相对应。
[0085] 进一步的,所述第二生成模块,具体用于从所述当前熵解码数据中,获取所述当前熵解码数据对应的原始帧图像的每个编码区域的量化参数,将所述失真图像每个像素点所在编码区域的量化参数,确定为所述失真图像每个像素点的失真程度值。
[0086] 进一步的,所述第二生成模块,具体用于基于所述失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值;或者
[0087] 基于所述失真图像的像素值范围,对获取的所述各像素点的失真程度值进行标准化处理,得到处理后失真程度值,所述处理后失真程度值的取值范围与所述像素值范围相同;基于所述失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值。
[0088] 本发明实施例还提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
[0089] 存储器,用于存放计算机程序;
[0090] 处理器,用于执行存储器上所存放的程序时,实现上述任一视频解码方法步骤。
[0091] 本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一视频解码方法步骤。
[0092] 本发明实施例提供的视频解码方法中,所使用的卷积神经网络模型为基于预设训练集进行训练得到的,预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量,边信息分量能够表示失真图像相对原始样本图像的失真特征;在进行视频解码的过程中,从接收的视频比特流中得到当前熵解码数据,并针对当前熵解码数据进行视频解码的过程中生成的失真图像,首先生成失真图像对应的边信息分量,然后将失真图像的失真图像颜色分量以及边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量。从而实现了在视频解码过程中,使用一种不同于现有技术的卷积神经网络模型对失真图像进行去失真处理。
[0093] 当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。附图说明
[0094] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0095] 图1为现有视频编码标准中视频编码系统的结构示意图;
[0096] 图2为本发明实施例提供的卷积神经网络模型的结构示意图;
[0097] 图3为本发明实施例提供的去失真滤波处理流程的数据流示意图;
[0098] 图4为本发明实施例中获得失真图像的失真图像颜色分量的示意图;
[0099] 图5A为本发明实施例中边信息分量的示意图之一;
[0100] 图5B为本发明实施例中边信息分量的示意图之二;
[0101] 图6为本发明实施例提供的视频编码方法的流程图
[0102] 图7为本发明实施例提供的视频编码方法的流程图;
[0103] 图8A为本发明实施例中视频编码系统的结构示意图之一;
[0104] 图8B为本发明实施例中视频编码系统的结构示意图之二;
[0105] 图9为本发明实施例提供的视频解码方法的流程图;
[0106] 图10为本发明实施例提供的视频解码方法的流程图;
[0107] 图11A为本发明实施例中视频解码系统的结构示意图之一;
[0108] 图11B为本发明实施例中视频解码系统的结构示意图之二;
[0109] 图11C为本发明实施例中视频解码系统的结构示意图之三;
[0110] 图12为本发明实施例提供的卷积神经网络模型训练方法的流程图;
[0111] 图13为本发明实施例提供的视频编码装置的结构示意图;
[0112] 图14为本发明实施例提供的电子设备的结构示意图;
[0113] 图15为本发明实施例提供的视频解码装置的结构示意图;
[0114] 图16为本发明实施例提供的电子设备的结构示意图。

具体实施方式

[0115] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0116] 针对在视频编码过程中,如何使用卷积神经网络对失真图像进行去失真处理的问题,本发明实施例提供一种视频编码解决方案,该方案中,针对在对待编码视频中的当前原始帧图像进行视频编码的过程中生成的失真图像,生成对应的能够表示该失真图像相对当前原始帧图像的失真特征的边信息分量,并将生成的边信息分量与该失真图像的失真图像颜色分量,共同作为预先建立的卷积神经网络模型的输入,在经过该卷积神经网络模型进行卷积滤波处理之后,输出去失真图像颜色分量,用于生成去失真图像,该去失真图像可以作为参考图像,用于对该当前原始帧图像的后续帧图像进行视频编码。
[0117] 相应的,在视频解码过程中,本发明实施例还提供了一种视频解码解决方案,该方案中,在对接收的视频比特流进行熵解码,得到当前熵解码数据之后,针对在对当前熵解码数据进行视频解码的过程中生成的失真图像,基于当前熵解码数据中包括的边信息,生成对应的表示该失真图像相对当前熵解码数据对应的原始帧图像的失真特征的边信息分量,并将生成的边信息分量与该失真图像的失真图像颜色分量,共同作为预先建立的卷积神经网络模型的输入,在经过该卷积神经网络模型进行卷积滤波处理之后,输出去失真图像颜色分量,用于生成去失真图像,该去失真图像可以作为参考图像,用于对该当前熵解码数据的后续熵解码数据进行视频解码,也可以作为当前熵解码数据对应的原始帧图像对应的待播放帧图像,用于视频播放。
[0118] 并且,在上述视频编码解决方案以及视频解码解决方案中,卷积神经网络模型为基于预设训练集进行训练得到的,且该预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量,基于初始化的网络参数,按照预设网络结构进行多次迭代训练获得。
[0119] 进一步的,训练集可以包括一个原始样本图像,针对该原始样本图像进行上述视频编解码中的图像处理,得到失真特征不同的多个失真图像,进而得到多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量;
[0120] 训练集也可以包括多个原始样本图像,分别针对每个原始样本图像进行上述视频编解码中的图像处理,得到失真特征不同的多个失真图像,进而得到多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量。
[0121] 在进行卷积神经网络模型的训练,以及使用训练的卷积神经网络模型对失真图像进行去失真滤波时,均将表示失真图像相对原始图像的失真特征的边信息分量作为模型的输入,即引入了能够表示失真图像的失真特征的信息,并通过针对各种边信息分量进行模型训练以及实际应用的试验,确定出在使用一些特定的边信息分量时,能够训练出具备更强泛化能力的卷积神经网络模型,即在平均意义上,对大量的具有差异性的失真图像的去失真能力会更强,进而能够对失真图像进行更好的去失真处理,得到更接近原始图像颜色分量的去失真图像颜色分量。
[0122] 虽然目前已经存在多种基于卷积神经网络模型进行图像去失真处理的方法,但当前公开的大多数基于卷积神经网络的图像去失真滤波技术中,若使用单一预训练网络对不同失真程度的图像进行后处理滤波,在某些失真程度的图像上会存在质量提升有限或质量损失的问题,说明网络的泛化能力存在一定问题。
[0123] 为了解决该问题,现有技术提出对不同失真程度的图像分别训练一套网络参数,在实际使用时根据当前应用中图像的失真程度加载相应的一套网络参数。然而,大量的参数浪费了存储空间,应用中参数的频繁加载更是一种不必要的计算资源浪费。
[0124] 因此,在一种确定的视频编解码过程下,发明一种单一的,能适应不同失真程度图像的后处理滤波的卷积神经网络,具有重要的价值。
[0125] 针对现有技术中仅采用一套网络参数的卷积神经网络,无法应对不同失真程度的失真图像的去失真滤波问题,进一步的,本发明实施例提出的上述解决方案中,可以生成表示失真图像相对原始图像的失真程度的边信息分量,预设训练集中可以包括多个不同失真程度的失真图像,则在进行卷积神经网络模型的训练,以及使用训练的卷积神经网络模型对失真图像进行去失真滤波时,即引入了能够准确表示失真图像的失真程度的信息,从而能够训练出适应于各种不同失真程度的失真图像的卷积神经网络模型,进而能够针对不同失真程度的失真图像,仅使用一套网络参数即可以获得较佳的去失真效果。
[0126] 图2为实现上述解决方案的卷积神经网络模型的结构示意图,包括:边信息分量生成模块21,卷积神经网络22,网络训练模块23;
[0127] 其中,卷积神经网络22可以包括如下三层结构:
[0128] 输入层处理单元221,用于接收卷积神经网络的输入,本方案中包括失真图像的失真图像颜色分量,以及失真图像的边信息分量;并对输入的数据进行第一层的卷积滤波处理;
[0129] 隐含层处理单元222,对输入层处理单元221的输出数据,进行至少一层的卷积滤波处理;
[0130] 输出层处理单元223,对隐含层处理单元222的输出数据,进行最后一层的卷积滤波处理,输出结果作为去失真图像颜色分量,用于生成去失真图像。
[0131] 图3为实现上述解决方案中的去失真滤波处理流程的数据流的示意图,其中,失真图像的失真图像颜色分量,以及失真图像的边信息分量作为输入数据,输入到预先训练的卷积神经网络模型中,卷积神经网络模型可以由预设结构的卷积神经网络和配置的网络参数集进行表示,输入数据经过输入层、隐含层和输出的卷积滤波处理之后,得到去失真图像数据。
[0132] 本发明实施例提供的上述解决方案中,作为卷积神经网络模型的输入数据,根据实际需要,可以包括一种或多种边信息分量,也可以包括一种或多种失真图像颜色分量,例如,至少包括R颜色分量、G颜色分量和B颜色分量之一,相应的,包括一种或多种去失真图像颜色分量。
[0133] 例如,在进行视频编解码的过程中,可能仅针对全部颜色分量中的一种颜色分量存在失真情况,则可以在去失真处理时,仅将失真图像的该颜色分量作为输入数据,如两种颜色分量存在失真情况,则将失真图像的该两种颜色分量均作为输入数据,相应的,均输出对应的去失真图像颜色分量。
[0134] 一个图像的每个像素点的存储数据,包括该像素点的所有颜色分量的值,本发明实施例中,在获得失真图像的失真图像颜色分量时,可以根据需要,从每个像素点的存储数据中,提取出需要的一种或多种颜色分量的值,从而得到失真图像的失真图像颜色分量。
[0135] 如图4所示,以RGB颜色空间为例,从中提取出每个像素点的R颜色分量的值,从而得到失真图像的R颜色分量。
[0136] 对于边信息分量,其表示失真图像相对原始图像的失真特征,是一种由图像处理过程确定的失真特征的表达。
[0137] 在实际应用中,上述失真特征可以至少包括如下失真特征之一:
[0138] 失真程度、失真位置,失真类型:
[0139] 首先,边信息分量可以表示失真图像相对原始图像的失真程度。
[0140] 其次,边信息分量也可以表示失真图像相对原始图像的失真位置,例如在主流的视频编解码应用中,图像通常被划分为多个不重叠且不固定大小的编码单元,编码单元分别进行预测编码及不同程度的量化处理,编码单元之间的失真通常不具有一致性,在编码单元的边界处通常会产生像素突变,因此,编码单元的边界坐标可以作为一种先验的表征失真位置的边信息。
[0141] 再次,边信息分量也可以表示失真图像相对原始图像的失真类型,例如在视频编解码应用中,图像中不同编码单元可能采用不同预测模式,不同预测模式会影响残差数据的分布,从而影响失真图像的特征,因此,编码单元的预测模式可以作为一种表征失真类型的边信息。
[0142] 本发明实施例提供的上述解决方案中,边信息分量可以为上述一种或多种的组合,也可以为上述一种的多个边信息分量,例如,在视频编解码过程中,经过图像处理后,可能通过一种物理含义的参量表示失真图像的失真程度,也可能通过不同物理含义的两种参量表示失真图像的失真程度,相应的,即可以根据实际需要,将一种或多种均表示失真程度的边信息分量作为输入数据。
[0143] 如图5A所示,边信息分量的矩阵结构与失真图像颜色分量的矩阵结构相同,其中,坐标[0,0]、[0,1]表示失真位置,矩阵的元素值1表示失真程度,即边信息分量同时能表示失真程度与失真位置。
[0144] 又如图5B所示,坐标[0,0]、[0,1]、[2,0]、[2,4]表示失真位置,矩阵的元素值1、2表示失真类型,即边信息分量同时能表示失真类型与失真位置。
[0145] 并且,本发明实施例提供的上述解决方案中,可以同时包括图5A和图5B分别所示意的两个边信息分量。
[0146] 进一步的,根据方案的实际应用情况和需要,当失真图像颜色分量包括多种时,边信息分量可以包括分别与每种失真图像颜色分量对应的边信息分量。
[0147] 在本发明实施例提供的上述解决方案中,提出了一种视频编码方法,如图6所示,具体包括如下处理步骤:
[0148] 步骤61、获得失真图像,失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的。
[0149] 步骤62、生成失真图像对应的边信息分量,其中,边信息分量表示失真图像相对当前原始帧图像的失真特征。
[0150] 边信息分量,表示失真图像相对当前原始帧图像的失真特征,是一种由图像处理过程确定的失真特征的表达。
[0151] 步骤63、将失真图像的失真图像颜色分量以及生成的边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量;
[0152] 其中,卷积神经网络模型为基于预设训练集进行训练得到的,预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量;
[0153] 步骤64、对待熵编码数据进行熵编码,得到编码后的视频比特流,待熵编码数据为对当前原始帧图像进行视频编码生成的,且包括用于生成边信息分量的边信息。
[0154] 下面结合附图,以边信息分量表示失真图像相对原始图像的失真程度为例,对上述视频编码方法进行详细描述。
[0155] 图7所示为本发明实施例提供的一种视频编码方法的流程图,具体包括如下处理步骤:
[0156] 步骤71、获得失真图像,该失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的。
[0157] 如图8A所示,在基于视频编码系统,对待编码视频进行视频编码的过程中,针对当前原始帧图像进行视频编码时,将对其进行预测、变换、量化等处理,并且,为了得到用于对后续帧图像进行视频编码的参考图像,还可以进行反量化、反变换、重建和去失真滤波的处理。
[0158] 本步骤中的失真图像,如图8A所示,可以是该过程中经过重建处理后生成的重建图像;也可以如图8B所示,是对重建图像采用其他预设滤波方法进行滤波后得到的,例如,其他预设滤波方法可以是DF滤波方法。
[0159] 步骤72、针对待处理的失真图像,确定失真图像每个像素点的失真程度值。
[0160] 在实际应用中,对当前原始帧图像进行不同方式的视频编码之后,表示失真程度的物理参量也可能不同,本步骤中,可以采用如下方式确定出对应的能够准确表示像素点失真程度的失真程度值:
[0161] 针对通过视频编码得到的上述失真图像,每个编码区域的量化参数都是已知的,即可以获取每个编码区域的量化参数,将失真图像每个像素点所在编码区域的量化参数,确定为失真图像每个像素点的失真程度值。
[0162] 步骤73、基于失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成失真图像对应的边信息分量,其中,边信息分量包括的每个分量值与失真图像上相同位置的像素点相对应。
[0163] 由于边信息分量包括的每个分量值与失真图像上相同位置的像素点相对应,则边信息分量与失真图像的失真图像颜色分量的结构相同,即表示边信息分量的矩阵与表示失真图像颜色分量的矩阵是同型的。
[0164] 本步骤中,可以基于失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为失真图像对应的边信息分量中该像素点相同位置的分量值,即直接将每个像素点的失真程度值,确定为该像素点对应的分量值。
[0165] 当失真图像的像素值范围与像素点的失真程度值的取值范围不同时,也可以基于失真图像的像素值范围,对获取的各像素点的失真程度值进行标准化处理,得到处理后失真程度值,处理后失真程度值的取值范围与像素值范围相同;
[0166] 然后基于失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为失真图像对应的边信息分量中该像素点相同位置的分量值。
[0167] 本步骤中,可以采用如下公式对像素点的失真程度值进行标准化处理:
[0168]
[0169] 其中,norm(x)为标准化处理后得到的处理后失真程度值,x为像素点的失真程度值,失真图像的像素值范围为[PIEXLMIN,PIXELMAX],像素点的失真程度值的取值范围为[QPMIN,QPMAX]。
[0170] 通过上述步骤72和步骤73,即生成了失真图像的边信息分量,生成边信息分量的过程,也可以理解为生成了失真图像对应的边信息引导图,该边信息引导图通过其边信息分量表示失真图像的失真程度,且该边信息引导图与失真图像是等高等宽的。
[0171] 本发明实施例中,以卷积神经网络模型包括输入层、隐含层和输出层的结构为例,对方案进行描述。
[0172] 步骤74、将失真图像的失真图像颜色分量以及生成的边信息分量,作为预先建立的卷积神经网络模型的输入数据,由输入层进行第一层的卷积滤波处理,具体可以如下:
[0173] 在卷积神经网络模型中,输入数据可以是通过各自的通道输入到网络中,本步骤中,可以将cy通道的失真图像颜色分量Y与cm通道的边信息分量M,在通道的维度上进行合并,共同组成cy+cm通道的输入数据I,并采用如下公式对输入数据I进行多维卷积滤波和非线性映射,产生n1个以稀疏形式表示的图像块:
[0174] F1(I)=g(W1*I+B1);
[0175] 其中,F1(I)为输入层的输出,I为输入层中卷积层的输入,*为卷积操作,W1为输入层的卷积层滤波器组的权重系数,B1为输入层的卷积层滤波器组的偏移系数,g()为非线性映射函数。
[0176] 其中,W1对应于n1个卷积滤波器,即有n1个卷积滤波器作用于输入层的卷积层的输入,输出n1个图像块;每个卷积滤波器的卷积核的大小为c1×f1×f1,其中c1为输入通道数,f1为每个卷积核在空间上的大小。
[0177] 在一个具体的实施例中,该输入层的参数可以为:c1=2,f1=5,n1=64,使用ReLU(Rectified linear unit)函数作为g(),它的函数表达式为:
[0178] g(x)=max(0,x);
[0179] 则该实施例中输入层卷积处理表达式为:
[0180] F1(I)=max(0,W1*I+B1);
[0181] 步骤75、隐含层对输入层输出的稀疏表示的图像块F1(I)进行进一步的高维映射。
[0182] 本发明实施例中,不对隐含层中包含的卷积层层数、卷积层连接方式、卷积层属性等作限定,可以采用目前已知的各种结构,但隐含层中包含至少1个卷积层。
[0183] 例如,隐含层包含N-1(N≥2)层卷积层,隐含层处理由下式表示:
[0184] Fi(I)=g(Wi*Fi-1(I)+Bi),i∈{2,3,…,N};
[0185] 其中,Fi(I)表示卷积神经网络中第i层卷积层的输出,*为卷积操作,Wi为第i层卷积层滤波器组的权重系数,Bi为卷积层滤波器组的偏移系数,g()为非线性映射函数。
[0186] 其中,Wi对应于ni个卷积滤波器,即有ni个卷积滤波器作用于第i层卷积层的输入,输出ni个图像块;每个卷积滤波器的卷积核的大小为ci×fi×fi,其中ci为输入通道数,fi为每个卷积核在空间上的大小。
[0187] 在一个具体的实施例中,该隐含层可以包括1个卷积层,该卷积层的卷积滤波器参数为:c2=64,f2=1,n2=32,使用ReLU(Rectified linear unit)函数作为g(),则该实施例中隐含层的卷积处理表达式为:
[0188] F2(I)=max(0,W2*F1(I)+B2);
[0189] 步骤76、输出层对隐含层输出的高维图像块FN(I)进行聚合,输出去失真图像颜色分量。
[0190] 本发明实施例中不对输出层的结构作限定,输出层可以是Residual Learning结构,也可以是Direct Learning结构,或者其他的结构。
[0191] 采用Residual Learning结构的处理如下:
[0192] 对隐含层的输出进行卷积操作获取补偿残差,再与输入的失真图像颜色分量相加,得到去失真图像颜色分量,即得到去失真图像。输出层处理可由下式表示:
[0193] F(I)=WN+1*FN(I)+BN+1+Y;
[0194] 其中,F(I)为输出层输出,FN(I)为隐含层的输出,*为卷积操作,WN+1为输出层的卷积层滤波器组的权重系数,BN+1为输出层的卷积层滤波器组的偏移系数,Y为未经过卷积滤波处理、欲进行去失真处理的失真图像颜色分量。
[0195] 其中,WN+1对应于nN+1个卷积滤波器,即有nN+1个卷积滤波器作用于第N+1层卷积层的输入,输出nN+1个图像块,nN+1为输出的去失真图像颜色分量个数,一般与输入的失真图像颜色分量的个数相等,如果只输出一种去失真图像颜色分量,则nN+1一般取值为1;每个卷积滤波器的卷积核的大小为cN+1×fN+1×fN+1,其中cN+1为输入通道数,fN+1为每个卷积核在空间上的大小。
[0196] 采用Direct Learning结构的处理如下:
[0197] 对隐含层的输出进行卷积操作后直接输出去失真图像颜色分量,即得到去失真图像。输出层处理可由下式表示:
[0198] F(I)=WN+1*FN(I)+BN+1;
[0199] 其中,F(I)为输出层输出,FN(I)为隐含层的输出,*为卷积操作,WN+1为输出层的卷积层滤波器组的权重系数,BN+1为输出层的卷积层滤波器组的偏移系数。
[0200] 其中,WN+1对应于nN+1个卷积滤波器,即有nN+1个卷积滤波器作用于第N+1层卷积层的输入,输出nN+1个图像块,nN+1为输出的去失真图像颜色分量个数,一般与输入的失真图像颜色分量的个数相等,如果只输出一种去失真图像颜色分量,则nN+1一般取值为1;每个卷积滤波器的卷积核的大小为cN+1×fN+1×fN+1,其中cN+1为输入通道数,fN+1为每个卷积核在空间上的大小。
[0201] 在一个具体的实施例中,该输出层采用Residual Learning结构,输出层包括1个卷积层,该输出层的卷积滤波器参数为:c3=32,f3=3,n3=1,则该实施例中输出层的卷积处理表达式为:
[0202] F(I)=W3*F3(I)+B3+Y。
[0203] 本发明实施例中,在需要将视频编码后得到的数据传输至解码端时,还可以包括如下步骤77。
[0204] 步骤77、对待熵编码数据进行熵编码,得到编码后的视频比特流。
[0205] 其中,待熵编码数据为对当前原始帧图像进行视频编码生成的,且包括用于生成边信息分量的边信息。
[0206] 如果用于生成边信息分量的边信息,为现有视频编解码标准中,视频比特流中携带的信息,则相比现有视频编解码标准中生成的视频比特流,本发明实施例中,不会增加额外的比特数据。
[0207] 例如,当使用失真图像每个像素点所在编码区域的量化参数作为边信息时,由于在现有视频编解码标准中生成的视频比特流即携带有该量化参数,所以,本步骤中,按照现有视频编解码标准生成视频比特流即可。
[0208] 如果用于生成边信息分量的边信息,在现有视频编解码标准中生成的视频比特流中不存在,则可以将该边信息作为视频解码所需要的一种信息,添加进待熵编码数据,并对添加有该边信息的待熵编码数据进行熵编码,得到编码后的视频比特流,从而使得解码端可以从该视频比特流中获取该边信息,用于解码端的视频解码处理。
[0209] 相应的,本发明实施例还提供了一种视频解码方法,如图9所示,可以包括如下步骤:
[0210] 步骤91、对接收的视频比特流进行熵解码,得到当前熵解码数据。
[0211] 步骤92、获得失真图像,该失真图像为对当前熵解码数据进行视频解码的过程中生成的。
[0212] 步骤93、基于当前熵解码数据中包括的边信息,生成失真图像对应的边信息分量,边信息分量表示失真图像相对当前熵解码数据对应的原始帧图像的失真特征。
[0213] 步骤94、将失真图像的失真图像颜色分量以及边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量;
[0214] 其中,卷积神经网络模型为基于预设训练集进行训练得到的,预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量。
[0215] 下面结合附图,以边信息分量表示失真图像相对当前熵解码数据对应的原始帧图像的失真程度为例,对上述视频解码方法进行详细描述。
[0216] 图10所示为本发明实施例提供的一种视频解码方法的流程图,具体包括如下处理步骤:
[0217] 步骤101、解码端对接收的视频比特流进行熵解码,得到当前熵解码数据。
[0218] 本步骤中,得到的当前熵解码数据与原始视频中的一帧图像相对应,基于当前熵解码数据,进行进一步的解码处理,可以得到该帧图像对应的解码后图像,为便于技术方案的描述,将该帧图像称作当前熵解码数据对应的原始帧图像。
[0219] 步骤102、获得失真图像,该失真图像为对当前熵解码数据进行视频解码的过程中生成的。
[0220] 如图11A所示,对视频比特流进行熵解码得到的当前熵解码数据中,包括残差数据,对当前熵解码数据进行视频解码的过程,包括对该残差数据的反量化、反变换、重建和去失真滤波的处理。
[0221] 本步骤中的失真图像,如图11A所示,可以是该过程中经过重建处理后生成的重建图像;也可以如图11B所示,是对重建图像采用其他预设滤波方法进行滤波后得到的,例如,其他预设滤波方法可以是DF滤波方法。
[0222] 步骤103、从当前熵解码数据中,获取失真图像的边信息,具体可以为获取失真图像的每个像素点的失真程度值。
[0223] 在实际应用中,对当前熵解码数据进行不同方式的视频解码之后,表示失真程度的物理参量也可能不同,本步骤中,可以采用如下方式确定出对应的能够准确表示像素点失真程度的失真程度值:
[0224] 针对通过视频解码得到的上述失真图像,从当前熵解码数据中,获取当前熵解码数据对应的原始帧图像的每个编码区域的量化参数,将失真图像每个像素点所在编码区域的量化参数,确定为该像素点的失真程度值。
[0225] 步骤104、基于失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成失真图像对应的边信息分量,其中,边信息分量包括的每个分量值与失真图像上相同位置的像素点相对应。
[0226] 由于边信息分量包括的每个分量值与失真图像上相同位置的像素点相对应,则边信息分量与失真图像的失真图像颜色分量的结构相同,即表示边信息分量的矩阵与表示失真图像颜色分量的矩阵是同型的。
[0227] 本步骤中,可以基于失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为失真图像对应的边信息分量中该像素点相同位置的分量值,即直接将每个像素点的失真程度值,确定为该像素点对应的分量值。
[0228] 当失真图像的像素值范围与像素点的失真程度值的取值范围不同时,也可以基于失真图像的像素值范围,对获取的各像素点的失真程度值进行标准化处理,得到处理后失真程度值,处理后失真程度值的取值范围与像素值范围相同;
[0229] 然后基于失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为失真图像对应的边信息分量中该像素点相同位置的分量值。
[0230] 本步骤中,可以采用如下公式对像素点的失真程度值进行标准化处理:
[0231]
[0232] 其中,norm(x)为标准化处理后得到的处理后失真程度值,x为像素点的失真程度值,失真图像的像素值范围为[PIEXLMIN,PIXELMAX],像素点的失真程度值的取值范围为[QPMIN,QPMAX]。
[0233] 通过上述步骤103和步骤104,即生成了失真图像的边信息分量,生成边信息分量的过程,也可以理解为生成了失真图像对应的边信息引导图,该边信息引导图通过其边信息分量表示失真图像的失真程度,且该边信息引导图与失真图像是等高等宽的。
[0234] 本发明实施例中,以卷积神经网络模型包括输入层、隐含层和输出层的结构为例,对方案进行描述。
[0235] 步骤105、将失真图像的失真图像颜色分量以及生成的边信息分量,作为预先建立的卷积神经网络模型的输入数据,由输入层进行第一层的卷积滤波处理。
[0236] 本步骤可以与上述图7中的步骤74相同,在此不再进行详细描述。
[0237] 步骤106、隐含层对输入层输出的稀疏表示的图像块F1(I)进行进一步的高维映射。
[0238] 本步骤可以与上述图7中的步骤75相同,在此不再进行详细描述。
[0239] 步骤107、输出层对隐含层输出的高维图像块FN(I)进行聚合,输出去失真图像颜色分量。
[0240] 本步骤可以与上述图7中的步骤76相同,在此不再进行详细描述。
[0241] 本发明实施例提供的上述视频解码方法中,得到的去失真图像颜色分量,如图11A和图11B所示,可以用于对视频比特流中的后续熵解码数据进行视频解码;如图11C所示,也可以用于生成当前熵解码数据对应的该原始帧图像对应的解码后图像,作为待播放帧图像。
[0242] 在本发明实施例提供的上述解决方案中,在视频编码和视频解码的过程中,均使用了预先建立的卷积神经网络模型对失真图像进行去失真滤波处理。视频编码和视频解码所使用的卷积神经网络模型可以相同。
[0243] 下面,对本发明实施例提供的上述卷积神经网络模型的训练流程进行详细描述。
[0244] 本发明实施例还提出了一种卷积神经网络模型训练方法,如图12所示,具体包括如下处理步骤:
[0245] 步骤121、获取预设训练集,预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量,其中,失真图像对应的边信息分量表示该失真图像相对原始样本图像的失真特征。该多个失真图像的失真特征不同。
[0246] 本步骤中,可以预先对原始样本图像(即未失真的自然图像),进行不同失真程度的一种图像处理,得到各自对应的失真图像,并按照上述去失真方法中的步骤,针对每个失真图像,生成对应的边信息分量,从而将每个原始样本图像、对应的失真图像以及对应的边信息分量组成图像对,由这些图像对组成预设训练集Ω。
[0247] 进一步的,训练集可以包括一个原始样本图像,针对该原始样本图像进行上述图像处理,得到失真特征不同的多个失真图像,以及每个失真图像对应的边信息分量;
[0248] 训练集也可以包括多个原始样本图像,分别针对每个原始样本图像进行上述图像处理,得到失真特征不同的多个失真图像,以及每个失真图像对应的边信息分量。
[0249] 步骤122、针对预设结构的卷积神经网络CNN,初始化该卷积神经网络CNN的网络参数集中的参数,初始化的参数集可以由Θ1表示,初始化的参数可以根据实际需要和经验进行设置。
[0250] 本步骤中,还可以对训练相关的高层参数如学习率、梯度下降算法等进行合理的设置,具体可以采用现有技术中的各种方式,在此不再进行详细描述。
[0251] 步骤123、进行前向计算,具体如下:
[0252] 将预设训练集中的每个失真图像的失真图像颜色分量以及对应的边信息分量,输入预设结构的卷积神经网络进行卷积滤波处理,得到该失真图像对应的去失真图像颜色分量。
[0253] 本步骤中,具体可以为对预设训练集Ω进行参数集为Θi的卷积神经网络CNN的前向计算,获取卷积神经网络的输出F(Y),即每个失真图像对应的去失真图像颜色分量。
[0254] 第一次进入本步骤处理时,当前参数集为Θ1,后续再次进入本步骤处理时,当前参数集Θi为对上一次使用的参数集Θi-1进行调整后得到的,详见后续描述。
[0255] 步骤124、基于多个原始样本图像的原始图像颜色分量和得到的去失真图像颜色分量,确定去失真图像的损失值。
[0256] 具体可以使用均方误差(MSE)公式作为损失函数,得到损失值L(Θi),详见如下公式:
[0257]
[0258] 其中,H表示单次训练中从预设训练集中选取的图像对个数,Ih表示第h个失真图像对应的由边信息分量和失真图像颜色分量合并后的输入数据,F(Ih|Θi)表示针对第h个失真图像,卷积神经网络CNN在参数集Θi下前向计算得到的去失真图像颜色分量,Xh表示第h个失真图像对应的原始图像颜色分量,i为当前已进行前向计算的次数计数。
[0259] 步骤125、基于损失值确定采用当前参数集的该预设结构的卷积神经网络是否收敛,如果不收敛,进入步骤126,如果收敛,进入步骤127。
[0260] 具体的,可以当损失值小于预设损失值阈值时,确定收敛;也可以当本次计算得到损失值与上一次计算得到的损失值之差,小于预设变化阈值时,确定收敛,本发明在此不做限定。
[0261] 步骤126,对当前参数集中的参数进行调整,得到调整后的参数集,然后进入步骤123,用于下一次前向计算。
[0262] 具体可以利用反向传播算法对当前参数集中的参数进行调整。
[0263] 步骤127、将当前参数集作为输出的最终参数集Θfinal,并将采用最终参数集Θfinal的该预设结构的卷积神经网络,作为训练完成的卷积神经网络模型。
[0264] 基于同一发明构思,根据本发明上述实施例提供的视频编码方法,相应地,本发明另一实施例还提供了一种视频编码装置,如图13所示,包括:
[0265] 第一图像获得模块131,用于获得失真图像,所述失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的;
[0266] 第一生成模块132,用于生成所述失真图像对应的边信息分量,所述边信息分量表示所述失真图像相对所述当前原始帧图像的失真特征;
[0267] 第一滤波处理模块133,用于将所述失真图像的失真图像颜色分量以及所述边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量,其中,所述卷积神经网络模型为基于预设训练集进行训练得到的,所述预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量;
[0268] 熵编码模块134,用于对待熵编码数据进行熵编码,得到编码后的视频比特流,所述待熵编码数据为对所述当前原始帧图像进行视频编码生成的,且包括用于生成所述边信息分量的边信息。
[0269] 进一步的,所述失真图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的重建图像;或者
[0270] 所述失真图像为对重建图像采用其他预设滤波方法进行滤波后得到的,所述重建图像为对待编码视频中的当前原始帧图像进行视频编码的过程中生成的。
[0271] 进一步的,所述边信息分量至少包括表示如下失真特征之一:
[0272] 表示所述失真图像相对所述当前原始帧图像的失真程度;
[0273] 表示所述失真图像相对所述当前原始帧图像的失真位置;
[0274] 表示所述失真图像相对所述当前原始帧图像的失真类型。
[0275] 进一步的,第一生成模块132,具体用于确定所述失真图像每个像素点的失真程度值;并基于所述失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成所述失真图像对应的边信息分量,其中,所述边信息分量包括的每个分量值与所述失真图像上相同位置的像素点相对应。
[0276] 进一步的,第一生成模块132,具体用于获取所述当前原始帧图像的每个编码区域的量化参数,将所述失真图像每个像素点所在编码区域的量化参数,确定为所述失真图像每个像素点的失真程度值。
[0277] 进一步的,第一生成模块132,具体用于基于所述失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值;或者
[0278] 基于所述失真图像的像素值范围,对获取的所述各像素点的失真程度值进行标准化处理,得到处理后失真程度值,所述处理后失真程度值的取值范围与所述像素值范围相同;基于所述失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值。
[0279] 基于同一发明构思,根据本发明上述实施例提供的视频编码方法,相应地,本发明另一实施例还提供了一种电子设备,如图14所示,包括处理器141、通信接口142、存储器143和通信总线144,其中,处理器141,通信接口142,存储器143通过通信总线144完成相互间的通信;
[0280] 存储器143,用于存放计算机程序;
[0281] 处理器141,用于执行存储器上所存放的程序时,实现上述任一视频编码方法步骤。
[0282] 基于同一发明构思,根据本发明上述实施例提供的视频编码方法,相应地,本发明另一实施例还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,该计算机程序被处理器执行时实现上述任一视频编码方法步骤。
[0283] 基于同一发明构思,根据本发明上述实施例提供的视频解码方法,相应地,本发明另一实施例还提供了一种视频解码装置,如图15所示,包括:
[0284] 熵解码模块151,用于对接收的视频比特流进行熵解码,得到当前熵解码数据;
[0285] 第二图像获得模块152,用于获得失真图像,所述失真图像为对所述当前熵解码数据进行视频解码的过程中生成的;
[0286] 第二生成模块153,用于基于所述当前熵解码数据中包括的边信息,生成所述失真图像对应的边信息分量,所述边信息分量表示所述失真图像相对所述当前熵解码数据对应的原始帧图像的失真特征;
[0287] 第二滤波处理模块154,用于将所述失真图像的失真图像颜色分量以及所述边信息分量,输入预先建立的卷积神经网络模型进行卷积滤波处理,得到去失真图像颜色分量,其中,所述卷积神经网络模型为基于预设训练集进行训练得到的,所述预设训练集包括原始样本图像,以及原始样本图像对应的多个失真图像的失真图像颜色分量,以及每个失真图像对应的边信息分量。
[0288] 进一步的,所述失真图像为对所述当前熵解码数据进行视频解码的过程中生成的重建图像;或者
[0289] 所述失真图像为对重建图像采用其他预设滤波方法进行滤波后得到的,所述重建图像为对所述当前熵解码数据进行视频解码的过程中生成的。
[0290] 进一步的,得到的所述去失真图像颜色分量,用于对所述视频比特流中的后续熵解码数据进行视频解码;和/或
[0291] 用于生成所述原始帧图像对应的解码后图像,作为待播放帧图像。
[0292] 进一步的,所述边信息分量至少表示如下失真特征之一:
[0293] 表示所述失真图像相对所述原始帧图像的失真程度;
[0294] 表示所述失真图像相对所述原始帧图像的失真位置;
[0295] 表示所述失真图像相对所述原始帧图像的失真类型。
[0296] 进一步的,第二生成模块153,具体用于从所述当前熵解码数据中,获取所述失真图像每个像素点的失真程度值;并基于所述失真图像各像素点的位置,使用获取的各像素点的失真程度值,生成所述失真图像对应的边信息分量,其中,所述边信息分量包括的每个分量值与所述失真图像上相同位置的像素点相对应。
[0297] 进一步的,第二生成模块153,具体用于从所述当前熵解码数据中,获取所述当前熵解码数据对应的原始帧图像的每个编码区域的量化参数,将所述失真图像每个像素点所在编码区域的量化参数,确定为所述失真图像每个像素点的失真程度值。
[0298] 进一步的,第二生成模块153,具体用于基于所述失真图像各像素点的位置,将获取的每个像素点的失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值;或者
[0299] 基于所述失真图像的像素值范围,对获取的所述各像素点的失真程度值进行标准化处理,得到处理后失真程度值,所述处理后失真程度值的取值范围与所述像素值范围相同;基于所述失真图像各像素点的位置,将每个像素点的处理后失真程度值,确定为所述失真图像对应的边信息分量中该像素点相同位置的分量值。
[0300] 基于同一发明构思,根据本发明上述实施例提供的视频解码方法,相应地,本发明另一实施例还提供了一种电子设备,如图16所示,包括处理器161、通信接口162、存储器163和通信总线164,其中,处理器161,通信接口162,存储器163通过通信总线164完成相互间的通信;
[0301] 存储器163,用于存放计算机程序;
[0302] 处理器161,用于执行存储器上所存放的程序时,实现上述任一视频解码方法步骤。
[0303] 基于同一发明构思,根据本发明上述实施例提供的视频解码方法,相应地,本发明另一实施例还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,该计算机程序被处理器执行时实现上述任一视频解码方法步骤。
[0304] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0305] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0306] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈