基于AI和注意力机制的超高清视频编解码方法和装置转让专利

申请号 : CN202310197002.3

文献号 : CN116074585B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 冀亨肖枫周楚乔

申请人 : 乔品科技(深圳)有限公司

摘要 :

本申请涉及一种基于AI和注意力机制的超高清视频编解码方法、装置、设备和存储介质,可提升视频传输效率。所述视频编码方法包括:在用户账户浏览视频的过程中,获取待编码视频帧;待编码视频帧在向用户账户的视频解码端传输的参考视频帧之后;确定用户账户对待编码视频帧的账户关注区域;获取账户关注区域相对于参考视频帧中对应区域的运动偏移信息,并对运动偏移信息进行编码,得到偏移信息编码结果;向用户账户的视频解码端发送偏移信息编码结果,以触发视频解码端对偏移信息编码结果进行解码,得到运动偏移信息,并基于已解码的参考视频帧和运动偏移信息,生成待编码视频帧对应的预测视频帧。

权利要求 :

1.一种基于AI和注意力机制的超高清视频编码方法,其特征在于,所述方法包括:在用户账户浏览视频的过程中,获取待编码视频帧;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;

将所述待编码视频帧输入到视频编码模型,由所述视频编码模型基于预设的自注意力机制,确定所述用户账户对所述待编码视频帧中多个图像区域的注意力信息,并根据所述注意力信息,确定所述待编码视频帧中的账户关注区域;

获取所述账户关注区域相对于所述参考视频帧中对应区域的运动偏移信息,并对所述运动偏移信息进行编码,得到偏移信息编码结果;

向所述用户账户的视频解码端发送所述偏移信息编码结果,以触发所述视频解码端对所述偏移信息编码结果进行解码,得到所述运动偏移信息,并基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧;

在浏览所述视频时,根据当前的视频编码参数,以及所述用户账户的视频解码端当前返回的视频解码参数,获取所述视频对应的多个质量评估信息;

根据所述多个质量评估信息与所述待编码视频帧的质量评估标签的差异,确定模型损失值;

根据所述模型损失值调整所述视频编码模型的模型参数,以基于模型参数调整后的所述视频编码模型,确定所述用户账户对所述视频其他待编码视频帧的账户关注区域。

2.根据权利要求1所述的方法,其特征在于,所述用户账户的视频解码端配置有眼动仪;在所述获取待编码视频帧之后,还包括:获取所述眼动仪采集到的眼动仪数据;所述眼动仪数据包括所述用户账户浏览所述视频解码后的视频帧时,所述眼动仪采集到的所述用户账户对所述解码后的视频帧的视线注视区域;

根据所述眼动仪数据,确定所述用户账户对所述待编码视频帧的账户关注区域。

3.根据权利要求2所述的方法,其特征在于,所述对所述运动偏移信息进行编码,得到偏移信息编码结果,包括:基于所述眼动仪数据确定每个账户关注区域的重要度;

获取每个重要度对应的压缩率;所述压缩率与所述重要度呈负相关;

根据每个账户关注区域对应的压缩率,对每个账户关注区域对应的运动偏移信息进行编码,得到偏移信息编码结果。

4.根据权利要求1所述的方法,其特征在于,所述视频编码模型通过如下步骤训练得到:获取样本用户账户的眼动仪采集的样本眼动仪数据;所述样本眼动仪数据包括所述样本用户账户浏览样本视频时采集到的、所述样本用户账户对所述样本视频的样本视频帧的视线关注区域;

将所述样本视频帧的视线关注区域作为所述样本视频帧的训练标签;

基于所述训练标签和所述样本视频帧,对预设的注意力模型进行监督训练,并基于训练结果得到所述视频编码模型。

5.根据权利要求1所述的方法,其特征在于,所述质量评估信息为视频质量评估指标。

6.根据权利要求5所述的方法,其特征在于,所述视频质量评估指标包括以下至少一种:最小可觉察误差、峰值信噪比、均方误差、多尺度结构相似性指数、误码率。

7.一种基于AI和注意力机制的超高清视频解码方法,其特征在于,所述方法包括:在用户账户浏览视频的过程中,接收视频编码端发送的偏移信息编码结果;所述偏移信息编码结果在所述视频编码端确定待编码视频帧中所述用户账户的账户关注区域、并对所述账户关注区域对应的运动偏移信息进行编码后得到;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;所述运动偏移信息为所述账户关注区域相对于所述参考视频帧中对应区域的偏移信息,所述待编码视频帧中的账户关注区域是所述视频编码端将所述待编码视频帧输入到视频编码模型,由所述视频编码模型基于预设的自注意力机制确定所述用户账户对所述待编码视频帧中多个图像区域的注意力信息,并根据所述注意力信息确定的;

对所述偏移信息编码结果进行解码,得到所述运动偏移信息;

基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧;

向所述视频编码端发送视频解码参数,以在浏览所述视频时,供所述视频编码端根据所述视频解码参数和所述视频编码端当前的视频编码参数,获取所述视频对应的多个质量评估信息,根据所述多个质量评估信息与所述待编码视频帧的质量评估标签的差异,确定模型损失值;根据所述模型损失值调整所述视频编码模型的模型参数,以基于模型参数调整后的所述视频编码模型,确定所述用户账户对所述视频其他待编码视频帧的账户关注区域。

8.根据权利要求7所述的方法,其特征在于,所述方法还包括:

在用户账户浏览视频的过程中,通过眼动仪获取所述用户账户的眼动仪数据,所述眼动仪数据包括所述用户账户对所述预测视频帧的视线注视区域;

向所述视频编码端返回所述眼动仪数据,以使所述视频编码端根据所述眼动仪数据,确定所述用户账户对所述视频其他待编码视频帧的账户关注区域。

9.一种基于AI和注意力机制的超高清视频编码装置,其特征在于,所述装置包括:编码视频帧获取模块,用于在用户账户浏览视频的过程中,获取待编码视频帧;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;

关注区域确定模块,用于将所述待编码视频帧输入到视频编码模型,由所述视频编码模型基于预设的自注意力机制,确定所述用户账户对所述待编码视频帧中多个图像区域的注意力信息,并根据所述注意力信息,确定所述待编码视频帧中的账户关注区域;

编码结果获取模块,用于获取所述账户关注区域相对于所述参考视频帧中对应区域的运动偏移信息,并对所述运动偏移信息进行编码,得到偏移信息编码结果;

编码结果发送模块,用于向所述用户账户的视频解码端发送所述偏移信息编码结果,以触发所述视频解码端对所述偏移信息编码结果进行解码,得到所述运动偏移信息,并基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧;

质量评估信息获取模块,用于在浏览所述视频时,根据当前的视频编码参数,以及所述用户账户的视频解码端当前返回的视频解码参数,获取所述视频对应的多个质量评估信息;

损失值确定模块,用于根据所述多个质量评估信息与所述待编码视频帧的质量评估标签的差异,确定模型损失值;

视频编码模型优化模块,用于根据所述模型损失值调整所述视频编码模型的模型参数,以基于模型参数调整后的所述视频编码模型,确定所述用户账户对所述视频其他待编码视频帧的账户关注区域。

10.一种基于AI和注意力机制的超高清视频解码装置,其特征在于,所述装置包括:编码结果接收模块,用于在用户账户浏览视频的过程中,接收视频编码端发送的偏移信息编码结果;所述偏移信息编码结果在所述视频编码端确定待编码视频帧中所述用户账户的账户关注区域、并对所述账户关注区域对应的运动偏移信息进行编码后得到;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;所述运动偏移信息为所述账户关注区域相对于所述参考视频帧中对应区域的偏移信息;所述待编码视频帧中的账户关注区域是所述视频编码端将所述待编码视频帧输入到视频编码模型,由所述视频编码模型基于预设的自注意力机制确定所述用户账户对所述待编码视频帧中多个图像区域的注意力信息,并根据所述注意力信息确定的;

偏移信息获取模块,用于对所述偏移信息编码结果进行解码,得到所述运动偏移信息;

视频帧解码模块,用于基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧;

所述装置还用于向所述视频编码端发送视频解码参数,以在浏览所述视频时,供所述视频编码端根据所述视频解码参数和所述视频编码端当前的视频编码参数,获取所述视频对应的多个质量评估信息,根据所述多个质量评估信息与所述待编码视频帧的质量评估标签的差异,确定模型损失值;根据所述模型损失值调整所述视频编码模型的模型参数,以基于模型参数调整后的所述视频编码模型,确定所述用户账户对所述视频其他待编码视频帧的账户关注区域。

11.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法或权利要求

7至8中任一项所述的方法的步骤。

12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法或权利要求7至8中任一项所述的方法的步骤。

说明书 :

基于AI和注意力机制的超高清视频编解码方法和装置

技术领域

[0001] 本申请涉及计算机技术领域,特别是涉及一种基于AI和注意力机制的超高清视频编码方法、解码方法、装置、计算机设备和存储介质。

背景技术

[0002] 随着计算机技术发展,超高清视频因具有更高的空间和时间分辨率、更广的色域和更宽的动态范围,而愈发受到关注。其中,超高清视频数据量极大,一张4K图像原始大小为24.3MB,4K未压缩视频的带宽要求是6Gbps,一个超高清摄像头每天产生的原始视频数据大小可达63TB。
[0003] 在相关技术中,超高清视频传输多采用OTT模式分发,端到端延迟一般在10s以上,且传输过程中需要完整传输所有的视频画面,对网络带宽要求较高。可见,相关技术仍然存在视频传输效率较为低下的问题,极大地限制了超高清视频的应用。

发明内容

[0004] 基于此,有必要针对上述技术问题,提供一种能够提升视频传输效率的基于AI和注意力机制的超高清视频编码方法、解码方法、装置、计算机设备和计算机可读存储介质。
[0005] 第一方面,本申请提供了一种基于AI和注意力机制的超高清视频编码方法,所述方法包括:
[0006] 在用户账户浏览视频的过程中,获取待编码视频帧;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;
[0007] 确定所述用户账户对所述待编码视频帧的账户关注区域;
[0008] 获取所述账户关注区域相对于所述参考视频帧中对应区域的运动偏移信息,并对所述运动偏移信息进行编码,得到偏移信息编码结果;
[0009] 向所述用户账户的视频解码端发送所述偏移信息编码结果,以触发所述视频解码端对所述偏移信息编码结果进行解码,得到所述运动偏移信息,并基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0010] 在其中一个实施例中,所述用户账户的视频解码端配置有眼动仪;所述确定所述用户账户对所述待编码视频帧的账户关注区域,包括:
[0011] 获取所述眼动仪采集到的眼动仪数据;所述眼动仪数据包括所述用户账户浏览所述视频解码后的视频帧时,所述眼动仪采集到的所述用户账户对所述解码后的视频帧的视线注视区域;
[0012] 根据所述眼动仪数据,确定所述用户账户对所述待编码视频帧的账户关注区域。
[0013] 在其中一个实施例中,所述对所述运动偏移信息进行编码,得到偏移信息编码结果,包括:
[0014] 基于所述眼动仪数据确定每个账户关注区域的重要度;
[0015] 获取每个重要度对应的压缩率;所述压缩率与所述重要度呈负相关;
[0016] 根据每个账户关注区域对应的压缩率,对每个账户关注区域对应的运动偏移信息进行编码,得到偏移信息编码结果。
[0017] 在其中一个实施例中,所述确定所述用户账户对所述待编码视频帧的账户关注区域,包括:
[0018] 将所述待编码视频帧输入到视频编码模型,由所述视频编码模型基于预设的自注意力机制,确定所述用户账户对所述待编码视频帧中多个图像区域的注意力信息,并根据所述注意力信息,确定所述待编码视频帧中的账户关注区域。
[0019] 在其中一个实施例中,所述视频编码模型通过如下步骤训练得到:
[0020] 获取样本用户账户的眼动仪采集的样本眼动仪数据;所述样本眼动仪数据包括所述样本用户账户浏览样本视频时采集到的、所述样本用户账户对所述样本视频的样本视频帧的视线关注区域;
[0021] 将所述样本视频帧的视线关注区域作为所述样本视频帧的训练标签;
[0022] 基于所述训练标签和所述样本视频帧,对预设的注意力模型进行监督训练,并基于训练结果得到所述视频编码模型。
[0023] 在其中一个实施例中,在所述向所述用户账户的视频解码端发送所述偏移信息编码结果之后,还包括:
[0024] 在浏览所述视频时,根据当前的视频编码参数,以及所述用户账户的视频解码端当前返回的视频解码参数,获取所述视频对应的多个质量评估信息;
[0025] 根据所述多个质量评估信息与所述待编码视频帧的质量评估标签的差异,确定模型损失值;
[0026] 根据所述模型损失值调整所述视频编码模型的模型参数,以基于模型参数调整后的所述视频编码模型,确定所述用户账户对所述视频其他待编码视频帧的账户关注区域。
[0027] 第二方面,本申请提供了一种基于AI和注意力机制的超高清视频解码方法,所述方法包括:
[0028] 在用户账户浏览视频的过程中,接收视频编码端发送的偏移信息编码结果;所述偏移信息编码结果在所述视频编码端确定待编码视频帧中所述用户账户的账户关注区域、并对所述账户关注区域对应的运动偏移信息进行编码后得到;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;所述运动偏移信息为所述账户关注区域相对于所述参考视频帧中对应区域的偏移信息;
[0029] 对所述偏移信息编码结果进行解码,得到所述运动偏移信息;
[0030] 基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0031] 在其中一个实施例中,所述方法还包括:
[0032] 在用户账户浏览视频的过程中,通过眼动仪获取所述用户账户的眼动仪数据,所述眼动仪数据包括所述用户账户对所述预测视频帧的视线注视区域;
[0033] 向所述视频编码端返回所述眼动仪数据,以使所述视频编码端根据所述眼动仪数据,确定所述用户账户对所述视频其他待编码视频帧的账户关注区域。
[0034] 第三方面,本申请还提供了一种基于AI和注意力机制的超高清视频编码装置,所述装置包括:
[0035] 编码视频帧获取模块,用于在用户账户浏览视频的过程中,获取待编码视频帧;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;
[0036] 关注区域确定模块,用于确定所述用户账户对所述待编码视频帧的账户关注区域;
[0037] 编码结果获取模块,用于获取所述账户关注区域相对于所述参考视频帧中对应区域的运动偏移信息,并对所述运动偏移信息进行编码,得到偏移信息编码结果;
[0038] 编码结果发送模块,用于向所述用户账户的视频解码端发送所述偏移信息编码结果,以触发所述视频解码端对所述偏移信息编码结果进行解码,得到所述运动偏移信息,并基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0039] 第四方面,本申请还提供了一种基于AI和注意力机制的超高清视频解码装置,所述装置包括:
[0040] 编码结果接收模块,用于在用户账户浏览视频的过程中,接收视频编码端发送的偏移信息编码结果;所述偏移信息编码结果在所述视频编码端确定待编码视频帧中所述用户账户的账户关注区域、并对所述账户关注区域对应的运动偏移信息进行编码后得到;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;所述运动偏移信息为所述账户关注区域相对于所述参考视频帧中对应区域的偏移信息;
[0041] 偏移信息获取模块,用于对所述偏移信息编码结果进行解码,得到所述运动偏移信息;
[0042] 视频帧解码模块,用于基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0043] 第五方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的任一种基于AI和注意力机制的超高清视频编码方法或任一种基于AI和注意力机制的超高清视频解码方法。
[0044] 第六方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的任一种基于AI和注意力机制的超高清视频编码方法或任一种基于AI和注意力机制的超高清视频解码方法。
[0045] 第七方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述的任一种基于AI和注意力机制的超高清视频编码方法或任一种基于AI和注意力机制的超高清视频解码方法。
[0046] 上述基于AI和注意力机制的超高清视频编码方法、解码方法、装置、计算机设备、存储介质和计算机程序产品,在用户账户浏览视频的过程中,视频编码端可以获取待编码视频帧,该待编码视频帧在向用户账户的视频解码端传输的参考视频帧之后;然后,可以确定用户账户对待编码视频帧的账户关注区域,获取账户关注区域相对于参考视频帧中对应区域的运动偏移信息,并对运动偏移信息进行编码,得到偏移信息编码结果,进而可以向用户账户的视频解码端发送偏移信息编码结果,以触发视频解码端对偏移信息编码结果进行解码,得到运动偏移信息,并基于已解码的参考视频帧和运动偏移信息,生成待编码视频帧对应的预测视频帧。在本申请中,通过确定用户账户对待编码视频帧的账户关注区域,并对账户关注区域的运动偏移信息编码后发送到视频解码端,由视频解码端生成对应的预测视频帧,一方面,可以避免对整个待编码视频帧编码,显著提升视频压缩率、编码效率和传输效率,另一方面,通过性地对账户关注区域的运动偏移信息进行编码,能够针对性地对用户感知的区域进行传输,减少用户关注的图像区域所对应的视频数据在视频传输过程中的损失,提升视频质量,从而能够有效提升视频传输效率。

附图说明

[0047] 图1为一个实施例中一种基于AI和注意力机制的超高清视频编解码方法的应用环境图;
[0048] 图2为一个实施例中一种基于AI和注意力机制的超高清视频编码方法的流程示意图;
[0049] 图3为一个实施例中一种确定账户关注区域的步骤的流程示意图;
[0050] 图4为一个实施例中一种全局优化的步骤的流程示意图;
[0051] 图5为一个实施例中一种基于AI和注意力机制的超高清视频解码方法的流程示意图;
[0052] 图6为一个实施例中一种基于AI和注意力机制的超高清视频编解码方法的流程示意图;
[0053] 图7为一个实施例中一种基于AI和注意力机制的超高清视频编码装置的结构框图;
[0054] 图8为一个实施例中一种基于AI和注意力机制的超高清视频解码装置的结构框图;
[0055] 图9为一个实施例中一种计算机设备的内部结构图;
[0056] 图10为一个实施例中另一种计算机设备的内部结构图。

具体实施方式

[0057] 为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0058] 本申请实施例提供的基于AI和注意力机制的超高清视频编解码方法,可以应用于如图1所示的应用环境中,在该应用环境中,视频编码端可以通过网络与用户账户的视频解码端进行通信。示例性地,视频编码端可以用独立的服务器或者是多个服务器组成的服务器集群来实现,视频编码端可以具有数据存储系统,该数据存储系统中可以存储有视频编码端需要处理的视频帧;视频解码端可以是终端,例如可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、头戴设备等。
[0059] 在一个实施例中,如图2所示,提供了一种基于AI和注意力机制的超高清视频编码方法,以该方法应用于图1中的视频编码端为例进行说明,包括以下步骤:
[0060] S201,在用户账户浏览视频的过程中,获取待编码视频帧;待编码视频帧在向用户账户的视频解码端传输的参考视频帧之后。
[0061] 在实际应用中,在用户账户浏览视频的过程中,可以确定被浏览的视频对应的视频帧序列,并从视频帧序列中确定出参考视频帧和待编码视频帧,其中,视频对应的视频帧序列可以是实时采集的,例如直播视频流中由多个视频帧构成的视频帧,也可以是预先存储或录制的,例如预先获取的视频文件中的视频帧。
[0062] 具体而言,在获取到视频对应的多个视频帧后,可以从多个视频帧中确定参考视频帧,参考视频帧也可以称为关键帧,可以是用于编码以及解码后续其他视频帧的基础,在一种示例中,可以按照预设的视频帧间隔确定参考视频帧,例如可以每隔N(N大于等于1)个视频帧确定一参考视频帧。进而,可以将参考视频帧之后的一个或多个视频帧确定为待编码视频帧,如可以将当前参考视频帧与下一个参考视频帧之间的,一个或多个视频帧确定为当前参考视频帧对应的待编码视频帧。
[0063] 此外,在一种可选的实施例中,参考视频帧可以在待编码视频帧编码前,向用户账户的视频解码端发送,也可以在待编码视频帧的编码过程中,向视频解码端发送。
[0064] S202,确定用户账户对待编码视频帧的账户关注区域。
[0065] 作为一示例,账户关注区域可采用点或面的形式存在,当账户关注区域为一个或多个点时,该账户关注区域可以称为待编码视频帧中的关键点。
[0066] 实际应用中,不同用户账户针对同一视频帧的关注内容可能存在差异,同一用户账户对同一视频中的不同视频帧的关注内容也可能存在差异,例如随着视频播放,视频中的场景发生变化,用户账户关注的内容也发生变化。
[0067] 在本步骤中,在获取到待编码视频帧后,可以确定出用户账户对待编码视频帧中的关注内容,例如可以包括用户账户关注的图像内容或用户账户注视的图像内容,从而得到待编码视频帧的账户关注区域。
[0068] S203,获取账户关注区域相对于参考视频帧中对应区域的运动偏移信息,并对运动偏移信息进行编码,得到偏移信息编码结果。
[0069] 作为一示例,运动偏移信息可以表征账户关注区域在不同视频帧之间相对位移,示例性地,运动偏移信息可以是账户关注区域的相对位移,也可以是基于相对位移得到的特征信息,例如可以基于账户关注区域的相对位移确定对应的运动场,此处所指的运动场可以是反映账户关注区域相关像素点偏移情况的特征图。
[0070] 在确定出账户关注区域后,由于账户关注区域是用户账户重点关注(例如关注度高于阈值或关注度高于视频帧中的其他图像内容)的内容,本申请中可以对用户账户的账户关注区域进行传输。
[0071] 具体地,在本步骤中,可以获取账户关注区域相对于在此之前的视频帧(即参考视频帧)中对应区域的运动偏移信息,进而可以对运动偏移信息进行编码,将编码结果作为偏移信息编码结果。其中,参考视频帧中对应区域可以是参考视频帧中的账户关注区域。
[0072] S204,向用户账户的视频解码端发送偏移信息编码结果,以触发视频解码端对偏移信息编码结果进行解码,得到运动偏移信息,并基于已解码的参考视频帧和运动偏移信息,生成待编码视频帧对应的预测视频帧。
[0073] 在获取到运动偏移信息对应的偏移信息编码结果后,则可以向用户账户的视频解码端发送偏移信息编码结果。视频解码端在接收到偏移信息编码结果后,可以对偏移信息编码结果进行解码,得到解码后的运动偏移信息。此外,视频解码端还可以解码出参考视频帧。在一种可能的实施例中,偏移信息编码结果以及由视频编码端编码后的参考视频帧可以通过异步方式传输到视频解码端,若视频解码端先解码后的运动偏移信息,可以等待参考视频帧的获取和解码。
[0074] 进而,视频解码端在解码出参考视频帧后,由于已解码得到的运动偏移信息可以反映出当前待解码的视频帧中账户关注区域,相对于参考视频帧中对应区域的运动偏移信息,因此,视频解码端可以结合已解码的参考视频帧和运动偏移信息,生成待编码视频帧对应的预测视频帧。
[0075] 在一种实施例中,视频解码端中可以部署有视频解码模型,该视频解码模型中可以包括图像生成模块,图像生成模块可以是对生成器进行监督训练后得到的,则视频解码端可以利用该生成器以及已解码的参考视频帧和运动偏移信息,获取待编码视频帧对应的预测视频帧。
[0076] 在本实施例中,在用户账户浏览视频的过程中,视频编码端可以获取待编码视频帧,该待编码视频帧在向用户账户的视频解码端传输的参考视频帧之后;然后,可以确定用户账户对待编码视频帧的账户关注区域,获取账户关注区域相对于参考视频帧中对应区域的运动偏移信息,并对运动偏移信息进行编码,得到偏移信息编码结果,进而可以向用户账户的视频解码端发送偏移信息编码结果,以触发视频解码端对偏移信息编码结果进行解码,得到运动偏移信息,并基于已解码的参考视频帧和运动偏移信息,生成待编码视频帧对应的预测视频帧。在本申请中,通过确定用户账户对待编码视频帧的账户关注区域,并对账户关注区域的运动偏移信息编码后发送到视频解码端,由视频解码端生成对应的预测视频帧,一方面,可以避免对整个待编码视频帧编码,显著提升视频压缩率、编码效率和传输效率,另一方面,通过性地对账户关注区域的运动偏移信息进行编码,能够针对性地对用户感知的区域进行传输,减少用户关注的图像区域所对应的视频数据在视频传输过程中的损失,提升视频质量,从而能够有效提升视频传输效率。
[0077] 可以理解,通过本申请的方案,可以显著降低超高清视频传输,实现端到端1s内8K分辨率,且可以规模化分发。
[0078] 在一个实施例中,用户账户的视频解码端配置有眼动仪;如图3所示,S202确定用户账户对待编码视频帧的账户关注区域,可以包括如下步骤:
[0079] S301,获取眼动仪采集到的眼动仪数据;眼动仪数据包括用户账户浏览视频解码后的视频帧时,眼动仪采集到的用户账户对解码后的视频帧的视线注视区域。
[0080] 具体实现中,用户账户的视频编码端可以配置有眼动仪,在用户浏览视频解码后的视频帧(包括由视频解码端解码后得到的参考视频帧以及预测视频帧)时,可以通过眼动仪采集用户账户对解码后的视频帧的注视情况,得到眼动仪数据,其中,眼动仪数据可以包括用户账户对解码后的视频帧的视线注视区域。
[0081] 其中,眼动仪是一种能够跟踪测量眼球位置以及眼球运动信息的设备,在心理学、认知语言学等领域被使用。在实际应用中,眼动仪可以检测用户的视线现凝视之处,通过进行视觉注意力追踪确定图像中用户关注的点或区域。
[0082] 具体而言,眼动仪提供的红外光(如近红外光)被导向眼睛的中心,即瞳孔,在瞳孔和角膜(眼睛的最外面的光学元件)中引起可检测的反射,这些反射,即角膜和瞳孔之间的矢量关系,可以由内嵌于VR眼镜中的红外摄影机跟踪,这是角膜反射的光学跟踪,称为瞳孔中心角膜反射(pupil center corneal reflection,PCCR)。相较于来自可见光谱的光可能产生不受控制的镜面反射,红外光被允许在瞳孔和虹膜之间进行精确区分:当红外光直接进入瞳孔时,它只是从虹膜上“反弹”。此外,由于红外光对人类不可见,因此在跟踪眼睛时不会导致参与者受伤或分心,不会影响用户正常观看图像或视频。
[0083] 眼动仪利用近红外光源,使用户眼睛的角膜和瞳孔熵(也可以称为注视熵)产生对应的反射图像,然后可以使用两个图像传感器采集眼睛对近红外光源产生反射时所形成的该反射图像,进而可以通过图像处理算法和一个三维眼球模型精确地计算出眼睛在空间中的位置和视线位置。
[0084] 在眼动仪工作过程中,在一种实施例中,可以对以下至少一种信息进行采集,作为眼动仪数据:凝视点(Gaze Point)、注视点(Fixation)、感兴趣区域(Area of Interest,AOI)、热图(Heatmaps)、固定顺序(Fixation sequences)、首次注视时间(Time to FirstFixation, TTFF)。
[0085] 凝视点:构成眼动仪的基本测量单位。
[0086] 注视点:如果凝视点持续一段时间,他就会称为“一段时间”,我们的眼镜被锁定在一个特定的物体上,注视可以理解为是由若干个连续的凝视组成。
[0087] 感兴趣区域:为了将分析集中在预设刺激(例如用户当前浏览的图像或视频帧)上的指定区域,可以定义该指定区域定义为感兴趣区域。
[0088] 热图:热图是固定位置随时间变化的可视化,作为预设刺激的叠加。
[0089] 固定顺序:通过详细说明固定发生的顺序和方向,可以确定图像中首先看到的、引起用户注意的内容,以及查看刺激的方式。
[0090] 首次注释时间:刺激开始和观察到目标区域之间的时间,提供用户首次看到特定感兴趣区域(如用户关注的目标感兴趣区域)的时间信息。
[0091] S302,根据眼动仪数据,确定用户账户对待编码视频帧的账户关注区域。
[0092] 在接收到视频编码端返回的眼动仪数据后,由于视频帧的帧间内容具有一定的关联性,而眼动仪数据可以反映用户账户对已解码视频帧实时关注的内容,进而视频编码端可以结合眼动仪数据,预测用户账户对待编码视频帧的账户关注区域。
[0093] 在本实施例中,视频编码端可以根据实时采集的眼动仪数据,准确识别出不同用户或不同时刻下的账户关注区域,有效提升账户关注区域的识别准确性和针对性,避免选择错误的账户关注区域进行编码,提高待编码视频帧的编码效率和视频质量。
[0094] 在一个实施例中,S203对运动偏移信息进行编码,得到偏移信息编码结果,可以包括如下步骤:
[0095] 基于眼动仪数据确定每个账户关注区域的重要度;获取每个重要度对应的压缩率;根据每个账户关注区域对应的压缩率,对每个账户关注区域对应的运动偏移信息进行编码,得到偏移信息编码结果。
[0096] 其中,压缩率与账户关注区域的重要度呈负相关。
[0097] 实际应用中,可以根据眼动仪数据确定每个账户关注区域的重要度,并获取重要度对应的压缩率;针对每个账户关注区域,可以将重要度对应的压缩率,作为该账户关注区域对应的压缩率,并采用该压缩率对账户关注区域对应的运动偏移信息进行编码压缩,得到偏移信息结果。
[0098] 在一种实施例中,在根据眼动仪数据确定每个账户关注区域的重要度时,可以根据账户关注区域的密度确定,例如针对同一待编码的图像区域,若在该图像区域内同时存在多个账户关注区域(可以是同一用户账户或多个用户账户的账户关注区域),则该图像区域对应的运动偏移信息可以使用更低的压缩率。
[0099] 此外,确定账户关注区域重要度的其他因素包括但不限于:用户账户头部的运动速度、用户账户观测的顺序等眼动仪可以直接追踪或间接计算的指标(眼动仪数据)。
[0100] 在本实施例中,可以基于眼动仪数据确定每个账户关注区域的重要度,并根据重要度对应的压缩率,对每个账户关注区域对应的运动偏移信息进行编码,实现对待编码视频帧中不同账户关注区域的分级压缩机制,令用户关注程度越高的账户关注区域,其对应的运动偏移信息的信息丢失越少,使用户感知到视频质量的提升。
[0101] 在一个实施例中,S202确定用户账户对待编码视频帧的账户关注区域,可以包括如下步骤:
[0102] 将待编码视频帧输入到视频编码模型,由视频编码模型基于预设的自注意力机制,确定用户账户对待编码视频帧中多个图像区域的注意力信息,并根据注意力信息,确定待编码视频帧中的账户关注区域。
[0103] 具体实现中,被用户浏览的图像或视频会具有视觉显著性(Visual Attention Mechanism,VA,也可以称为视觉注意机制)。视觉显著性是指面对一个场景时,人类自动地对感兴趣区域进行处理而选择性地忽略不感兴趣区域,其中,用户感兴趣的区域可以被称之为显著性区域。视觉显著性包括从下而上和从上往下两种机制:从下而上也可以认为是数据驱动,即图像本身对人的吸引,从上而下则是在人意识控制下对图像进行注意。
[0104] 在本实施例中,可以基于从下而上的视觉显著性,即从下而上的注意力机制,训练视频编码模型,从而后续可以利用这种注意力机制对图像中不同区域的编码参数进行选择性的增强或调整。
[0105] 具体地,在获取到待编码视频帧后,可以将待编码视频帧输入到训练好的视频编码模型,由视频编码模型基于预设的自注意力机制,确定用户账户对待编码视频帧中多个图像区域的注意力信息,并根据注意力信息,确定待编码视频帧中的账户关注区域。
[0106] 在一个可选的实施例中,视频编码模型中可以包括账户关注区域识别模块以及图像压缩模块。其中,账户关注区域识别模块可以基于物体检测公开数据集训练视频编码模型,物体检测公开数据集提供了有效的主物体标注,为模型提供了群体关注主体在图像中是哪些,有效分离画面中主要物品和背景,便于后续利用图像压缩模块进行压缩时,使主要物体的像素尽可能保留,而背景像素则可以进一步压缩。
[0107] 图像压缩模块可以会用预设的图像压缩算法对账户关注区域或者账户关注区域对应的运动偏移信息进行压缩或编码。例如,在一种可选的实施例中,视频编码端中的图像压缩模块可以将一张输入图像(如待编码图像中的账户关注区域)对应的图像特征y通过离散化高斯混合模型从像素转换到多个特征图,将特征图通过熵编码传输到解码端,解码端基于特征图进行解析,再重构初图像。
[0108] 其中,离散化高斯混合模型作为一个概率模型,可用于对潜在标识进行熵估计,这样可以对图像特征y提供多个最可能的均值,而每一个混合的方差可以更小,达到的效果是实现更准确的概率模型,节约编码图像特征y所需要的比特数。
[0109] 在一示例中,在进行熵估计时,使用的熵估计模型的参数可以如下所示:
[0110]
[0111] 其中,z可以表征图像特征y的空间依赖性,ha和hs表示辅助自编码器中的分析和合成变换, 和 为优化参数; 是针对 的条件估计分布,为对z的估计量。
[0112] 此处的熵估计模型是服务于损失函数中的码率估计的。根据香农定理,编码一个码字需要的最小比特数为该信息的熵,所以熵估计模型其实也可以认为是码率估计模块。
[0113] 在损失函数中,对码率进行估算的码率计算公式可以为‑sum(log2p),即需要已知每一个变量对应的概率模型。同时,如果该概率模型在y处取得很大的概率,则表明编码y需要的码字很少。常见的参数化概率模型是高斯分布,使用均值和方差两个变量就可以对应一个完整的概率分布,也是在hyperprior和其变形结构中常用的分布类型。在一些情况中,在图像的边缘或复杂区域,y是可能存在多个最可能的值的,那么使用单个高斯就不足以准确描述变量的分布,因此可以使用离散化高斯混合模型进行更准确的估计。
[0114] 进而,在获取到概率模型后,可以在推理的时候基于概率模型用算术编码或区间编码等熵编码方式将y压缩为码流。
[0115] 此外,离散化高斯混合模型还可以结合注意力机制,用于提高网络对于非零数值的反馈,即复制区域,同时不引入过多的训练复杂度。其中,注意力机制中可以包括两种处理方式。具体而言,可以获取输入图像对应的注意力图,并将输入图像与注意力图相乘,得到图像中各个像素点的相乘结果,若相乘结果大于阈值,则对应像素点属于显著性区域,对应的像素点和像素值会被保留;若相乘结果小于阈值,则对应像素点属于非显著性区域,相乘后得到的像素值相较于相乘前会变得更小,一方面,可以使非显著性区域的特征变得更稀疏,有利于压缩另一方面,也可以使图像压缩模块更加关注难以压缩的区域。
[0116] 当然,本领域技术人员也可以根据实际情况选择其他的图像压缩算法,对图像压缩模块进行配置,例如基于Transformer的注意力机制压缩模型。
[0117] 在本实施例中,可以由视频编码模型基于预设的自注意力机制识别待编码视频帧中的账户关注区域,可以实现账户关注区域快速准确的预测。
[0118] 可以理解的是,本申请中确定账户关注区域的方式可以是以下至少一种:通过视频编码模型确定,基于眼动仪数据确定;本领域技术人员可以根据实际选择。
[0119] 在一个实施例中,视频编码模型通过如下步骤训练得到:
[0120] 获取样本用户账户的眼动仪采集的样本眼动仪数据;将样本视频帧的视线关注区域作为样本视频帧的训练标签;基于训练标签和样本视频帧,对预设的注意力模型进行监督训练,并基于训练结果得到视频编码模型。
[0121] 其中,样本眼动仪数据包括样本用户账户浏览样本视频时采集到的、样本用户账户对样本视频的样本视频帧的视线关注区域。
[0122] 实际应用中,眼动仪的眼动追踪可以量化用户账户的视觉注意力,为视频编码模型的训练(例如视频编码模型中的账户关注区域识别模块)提供标注数据。基于此,在本实施例中,可以获取样本用户账户浏览样本视频时,由样本用户账户配置的眼动仪所采集到的眼动仪数据,作为样本眼动仪数据。其中,样本眼动仪数据除了可以包括前文提到的眼动仪数据以外,也可以包括但不限于:用户账户在屏幕熵或希纳是事件中具体看了什么;当样本用户账户注意某些视觉元素时每次固定持续多长时间;样本用户账户最关注的内容是什么;视觉元素固定的浏览顺序。
[0123] 进而,可以根据样本眼动仪数据确定出样本用户账户对样本视频的样本视频帧的视线关注区域,并且可以将样本视频帧的视线关注区域为样本视频帧的训练标签,并基于训练标签和样本视频帧,对预设的注意力模型进行监督训练,得到视频编码模型。
[0124] 在一些可选的实施例中,针对不同的用户账户,可以对用户账户的眼动仪数据进行预先采集,作为该用户账户的样本眼动仪数据,并利用该样本眼动仪数据训练注意力模型,从而可以得到与该用户账户适配的视频编码模型,为后续个性化地准确识别出账户关注区域提供基础。
[0125] 在本实施例中,可以结合眼动仪数据训练视频编码模型,有效提高视频编码模型后续识别账户关注区域的准确性。
[0126] 在一个实施例中,在步骤S204之后,所述方法还可以包括如下步骤:
[0127] 在浏览视频时,根据当前的视频编码参数,以及用户账户的视频解码端当前返回的视频解码参数,获取视频对应的多个质量评估信息;根据多个质量评估信息与待编码视频帧的质量评估标签的差异,确定模型损失值;根据模型损失值调整视频编码模型的模型参数,以基于模型参数调整后的视频编码模型,确定用户账户对视频其他待编码视频帧的账户关注区域。
[0128] 具体地,在用户账户浏览视频的过程中,可以获取当前的视频编码参数以及视频解码端当前返回的视频解码参数,并结合视频编码参数和视频解码参数,确定用户当前浏览的视频的质量评估信息,在一示例中,质量评估信息可以是视频帧级别的质量评估信息,当然,也可以是针对整个视频的质量评估信息。进而,可以根据多个质量评估信息与待编码视频帧的质量评估标签的差异,确定模型损失值。在另外一些可选的实施例中,除了结合视频编码参数和视频编码参数确定质量评估信息,还可以进一步结合视频传输参数,确定质量评估信息。
[0129] 在得到模型损失值后,可以根据模型损失值,动态地调整视频编码模型的模型参数,以基于模型参数调整后的视频编码模型,确定用户账户对视频其他待编码视频帧的账户关注区域以及对待编码视频帧的运动偏移信息等待编码信息进行压缩。其中,其他待编码视频帧为当前待编码视频帧之后的待编码视频帧。
[0130] 可以理解,相较于传统视频评估基于预设的模型以及静态的视频集进行评估和优化,本实施例的方案可以基于端到端的方案,进行高效的、大数据量的视频参数采集,实时地基于视频编码、传输和解码过程中涉及到的参数,动态优化视频编码模型,有效优化视频编码模型的处理效果,提升最终视频质量。
[0131] 此外,除了可以对视频编码端的视频编码模型进行优化,还可以对视频解码端的视频解码模型进行优化,实现一种动态的、全局的视频质量评估与优化机制,例如,可以如图4所示,获取视频编解码和传输过程中涉及到的多个参数组,并根据多个参数组确定多个视频质量评估信息,并根据预先构造的损失函数确定对应的模型损失值,然后根据模型损失值对视频编码模型和视频解码模型进行全局优化。
[0132] 在一个实施例中,可以通过如下步骤调整视频解码端部署的视频解码模型的模型参数:
[0133] 在浏览视频时,根据当前的视频解码参数,以及视频编码端当前返回的视频编码参数,获取视频对应的多个质量评估信息;根据多个质量评估信息与待编码视频帧的质量评估标签的差异,确定视频解码模型的模型损失值;根据视频解码模型的模型损失值调整视频解码模型的模型参数,以基于模型参数调整后的视频解码模型生成其他待编码视频帧对应的预测视频帧。
[0134] 其中,质量评估信息可以是视频质量评估指标;在一个可选的实施例中,视频质量评估指标可以包括以下至少一种:最小可觉察误差、峰值信噪比、均方误差、多尺度结构相似性指数、误码率、BD‑BR、BD‑PSNR、BD‑rate。以下对视频质量评估指标进行介绍。
[0135] 最小可觉察误差 JND(Just Noticeable Distortion):人类视觉系统(HVS)是一切解压后视频信号的最终接收器,因此对视频编码考虑了人是否能查觉的因素后,可以容许视频中存在更多的噪声而不影响其主观质量。传统的保真度法则MSE、PSNR并不能准确地反映内容的主观质量。由于人类对像素空间和时间上的敏感度和掩蔽特性,人们无法感知在JND阈值以下的变化,显然,不可查觉的变化也就不需要再编码来浪费成本了。
[0136] 目前对于JND/PVC的研究主要集中在以数据驱动、多通道建模和自上而下的估计上,常见的JND/PVC方法主要有时域和频域两种,其利用了人眼对于亮度、纹理掩蔽特性,某点像素低于对应的JND阈值,在计算中排除在外或者使用较大的量化值,这个变化人眼感觉不到,所以在提高压缩率的同时保存了主观质量。
[0137] 峰值信噪比、均方误差、多尺度结构相似性指数、误码率、BD‑BR、BD‑PSNR、BD‑rate为客观评估指标,具体含义如下所示:
[0138] 1、PSNR(Peak Signal to Noise Ratio)峰值信噪比:峰值信噪比是一个表示信号最大可能功率和影响它的表示精度的破坏性噪声功率的比值的工程术语。
[0139]
[0140] 其中,MSE为均方误差,MAXI是图像中最大的可能的像素值,例如若使用8位像素,MAXI为255。
[0141] 2、MSE(Mean Squared Error)均方误差:表示m×n大小的当前图像I和m×n大小的参考图像K的均方误差。图像压缩中典型的信噪比在20~40dB之间,越高越好。
[0142]
[0143] 其中,i、j为像素点坐标。
[0144] 3、MS‑SSIM(Multi‑Scale Structural Similarity)多尺度结构相似性指数,也是一种全参考的图像质量评价指标,它分别从亮度、对比度、结构三方面度量图像相似性。SSIM取值范围[0,1],值越大,表示图像失真越小。
[0145]
[0146] 4、Error误码率:标识目标比特率与实际比特率的比值。
[0147] 5、BD‑BR(Bjontegaard delta bit rate)可以称为第一码率信息,表示了在同样的客观质量下,两种方法的码率节省情况(Rate/distortion curves 画一条水平线)。该值为负则表示优化后算法的编码性能得到了提高。
[0148] 6、BD‑PSNR(Bjontegaard delta peak signal‑to‑noise rate)可以称为第二码率信息,表示了在给定的同等码率下,两种方法的PSNR‑Y的差异(Rate/distortioncurves 画一条垂直线)。
[0149] 7、BD‑rate可以称为第三码率信息,是两种算法对应的两条RD曲线的差值的均值,具体需要通过对测试的几个(一般是4个)点进行曲线拟合,再做差值,最后取平均。BD‑rate为负值时,表示相同PSNR条件下,码率减少,性能提高。
[0150] 此外,针对主观质量评估,可以基于VMAF(视频多评估方法融合)进行,VMAF含多指标优劣势对比,可用来解决传统指标不能反映多种场景、多种特征的视频情况,适用于衡量大规模环境中流播视频质量的观感。
[0151] 在一个实施例中,如图5所示,提供了一种基于AI和注意力机制的超高清视频解码方法,以该方法应用于图1中的视频解码端为例进行说明,包括以下步骤:
[0152] S501,在用户账户浏览视频的过程中,接收视频编码端发送的偏移信息编码结果;偏移信息编码结果在视频编码端确定待编码视频帧中用户账户的账户关注区域、并对账户关注区域对应的运动偏移信息进行编码后得到;待编码视频帧在向用户账户的视频解码端传输的参考视频帧之后;运动偏移信息为账户关注区域相对于参考视频帧中对应区域的偏移信息。
[0153] 在实际应用中,在用户账户浏览视频的过程中,视频编码端可以确定被浏览的视频对应的视频帧序列,并从视频帧序列中确定出参考视频帧和待编码视频帧。
[0154] 由于不同用户账户针对同一视频帧的关注内容可能存在差异,同一用户账户对同一视频中的不同视频帧的关注内容也可能存在差异,在视频编码端获取到待编码视频帧后,可以确定出用户账户对待编码视频帧中的关注内容,例如可以包括用户账户关注的图像内容或用户账户注视的图像内容,从而得到待编码视频帧的账户关注区域。
[0155] 然后,视频编码端可以获取账户关注区域相对于参考视频帧中对应区域的运动偏移信息,对运动偏移信息进行编码,将编码结果作为偏移信息编码结果,并将偏移信息编码结果发送到视频解码端。
[0156] S502,对偏移信息编码结果进行解码,得到运动偏移信息。
[0157] S503,基于已解码的参考视频帧和运动偏移信息,生成待编码视频帧对应的预测视频帧。
[0158] 在接收到偏移信息编码结果后,视频解码端可以对偏移信息编码结果进行解码,得到解码后的运动偏移信息;此外,视频解码端还可以解码出参考视频帧。由于已解码得到的运动偏移信息可以反映出当前待解码的视频帧中账户关注区域,相对于参考视频帧中对应区域的运动偏移信息,因此,视频解码端可以结合已解码的参考视频帧和运动偏移信息,生成待编码视频帧对应的预测视频帧。
[0159] 在本实施例中,在用户账户浏览视频的过程中,视频解码端可以接收视频编码端发送的偏移信息编码结果,其中,偏移信息编码结果在视频编码端确定待编码视频帧中用户账户的账户关注区域、并对账户关注区域对应的运动偏移信息进行编码后得到,且待编码视频帧在向用户账户的视频解码端传输的参考视频帧之后,运动偏移信息为账户关注区域相对于参考视频帧中对应区域的偏移信息;然后,视频解码端可以对偏移信息编码结果进行解码,得到运动偏移信息,并基于已解码的参考视频帧和运动偏移信息,生成待编码视频帧对应的预测视频帧。在本申请中,通过确定用户账户对待编码视频帧的账户关注区域,并对账户关注区域的运动偏移信息编码后发送到视频解码端,由视频解码端生成对应的预测视频帧,一方面,可以避免对整个待编码视频帧编码和解码,显著提升视频编解码效率和传输效率,另一方面,通过性地对账户关注区域的运动偏移信息进行编码,能够针对性地对用户感知的区域进行传输,减少用户关注的图像区域所对应的视频数据在视频传输过程中的损失,提升视频质量,从而能够有效提升视频传输效率。
[0160] 在一个实施例中,在S403之后,所述方法还包括:
[0161] 在用户账户浏览视频的过程中,通过眼动仪获取用户账户的眼动仪数据;向视频编码端返回眼动仪数据,以使视频编码端根据眼动仪数据,确定用户账户对视频其他待编码视频帧的账户关注区域。
[0162] 其中,眼动仪数据包括用户账户对预测视频帧的视线注视区域。
[0163] 具体实现中,视频解码端在获取预测视频帧后,可以向用户账户展示预测视频帧,并通过视频解码端配置的眼动仪,采集用户账户在浏览预测视频帧或其他解码后的视频帧时的眼动仪数据。进而,视频解码端可以向视频编码端返回眼动仪数据,使视频编码端根据当前的眼动仪数据,动态地预测并确定出用户账户对视频其他待编码视频帧的账户关注区域。
[0164] 在本实施例中,视频解码端可以根据实时采集的眼动仪数据,并向视频编码端提供眼动仪数据,使视频编码端可以准确识别出不同用户或不同时刻下的账户关注区域,有效提升账户关注区域的识别准确性和针对性,避免选择错误的账户关注区域进行编码,提高待编码视频帧的编码效率和视频质量。
[0165] 在一种可选的实施例中,视频编码端可以结合传统编码方式和AI图像分类及显著性ROI的感知编码方式,对参考视频帧(也可以称为关键帧)进行编码;其次,可以基于AI视觉编码传输接下来的图像,在视频编码端对参考视频帧之后的待编码视频帧中提取每一帧的关键点,并传输到视频解码端。
[0166] 具体而言,视频编码端可以从视频帧序列中提取参考视频帧,然后可以根据AI图像分类及显著性ROI的感知编码方式,识别出参考视频帧中引起用户视觉注意的物体区域以及用户不太关注(例如关注度低于阈值)的背景区域,并基于传统编码如HEVC、AV1、H.266等编码方式编码一帧图像,在编码过程中可以对物体区域和背景区域采用不同的编码参数。例如,可以引起用户注意的物体区域的压缩率可以更低、码率可以更高,从而减少用户注意的物体区域对应视频数据在编码、传输和解码过程中的失真程度;而用户不太关注的背景区域的压缩率可以更高、码率可以更低,减少冗余视频数据的数据量,提升视频数据的编码效率。与传统方式不同,由于本申请采用了基于关键点的编解码方式,在进行AI图像分类和识别时,只需要针对参考视频帧进行识别,且识别的是当前参考视频帧的整体画面,而不是基于块状划分的局部图像,这进一步提升了处理的性能和效果。
[0167] 针对在参考视频帧之后的待编码视频帧,视频编码端可以基于眼动仪和AI视觉的关键点识别机制,识别待编码视频帧中的关键点,并获取关键点的编码结果。
[0168] 在将参考视频帧和关键点的编码结果传输到视频解码端后,视频解码端可以首先对参考视频帧的编码结果以及关键点的编码结果进行解码,得到解码后的参考视频帧和解码后的关键点信息。然后,视频编码端可以识别参考视频帧中的关键点信息,并将参考视频帧中的关键点信息以及解码后的关键点信息一起输入到离散化高斯混合模型中,得到参考视频帧中的关键点信息以及解码后的关键点信息在特征域上的稀疏运动场。其中,稀疏运动场的稀疏表示模型,可以用数学公式描述为X‑Da,其中设 为单一原始信号,为过完备字典, 为稀疏表示结果。对于字典的每一个原始,称为原子(Atom),记为,进一步为了让该式的α满足稀疏性,可以加上L0范数的稀疏性约束,最终得到的稀疏表示模型可以如以下公式所示:
[0169]
[0170] 在满足目标条件的情况下,L0范数的优化问题有唯一解,但该问题依旧是多项式复杂程度非确定性问题(Non‑deterministic Polynomial, NP),在一些情况下,L0范数的优化问题与L1范数的优化问题有相同的解,即满足下式:
[0171]
[0172] 在获取到参考视频帧中的关键点信息和解码后的关键点信息各自对应的稀疏运动场后,视频解码端可以将两幅稀疏运动场输入到密集变换模型(Dense motion Net)中,通过更加复杂的运动模型对稀疏运动场进行处理得到密集运动场,并同时得到一张遮挡图,然后,可以将参考视频帧、密集运动场和遮挡图再一起输入到生成器中,由生成器输出待编码视频帧的预测视频帧。
[0173] 在上述过程中,密集变换模型中的kp2gaussian函数可以将关键点转化为一个区域,涵盖了关键点以及其周围的区域,同时用来计算原图(参考视频帧)与驱动图(待解码视频帧)在与预设高斯坐标系对齐情况下,两者的变化。
[0174] 在一示例中,可以通过如下公式表示关键点与邻域的变化:
[0175]
[0176] 该公式对应的框架包括运动估计模块和图像生成模块。其中,R(pk)表示图像R中的第k个关键点p,其他图像X、S、D的关键点用z表示。
[0177] 运动估计模块的目的是预测从一个驱动视频中的帧DϵR3xHxW(例如待解码视频帧)3xHxW
到源帧SϵR (例如参考视频帧)的稠密运动场,稠密运动场随后用于将从D计算出的特征
2 2
图与D中的目标姿态对齐,其中,稠密运动场可以通过函数TS←D:R→R 建模,该函数将D中每个像素位置映射到S中相应的位置。TS←D通常称为反向光流,在一示例中,反向光流可以通过双线性采样以一种可微的方式有效实现。同时,这里假设存在一个抽象的参考框架R。独立地估计两个转换:从R到S(TS←R)和从R到D(TD←R),在一示例中,可以使用R的关键点附近的一阶泰勒展开来计算TX←R。
[0178] 稀疏(离散)的关键点动作特征实现公式细节如下:
[0179]
[0180] 其中,
[0181]
[0182] 利用上述公式,可以使用关键点的变化来标识图像转化。预测的时候输入的是原始影像(例如参考视频帧)和驱动视频,而具体计算是将驱动视频编程若干帧,这里有两种处理策略,第一种是绝对的,即直接计算TS1←Dt(pk),以生成影像St。第二种是相对的,借助D1(驱动视频的第一帧)做过渡。在第二种方式中,一般在驱动视频的第一帧和原始影像位置基本一致(如位置相同或位置差距在阈值范围内)的情况下进行,通过该方式,可以只传播驱动视频的运动信息,而不包含物体属性信息(因为第一帧位置已经基本对齐了,避免候选每次处理受关键点位置偏差的影响)。
[0183] 然后,可以通过对稀疏运动场进行上采样,生成关键点周围的图像。针对遮挡图,可以使用一个沙漏模型和一个CNN网络来预估,沙漏模型结构与Keypoint Detector模型类似,将热力图以及,与目标图像对齐之后的稀疏变形图进行叠加作为输入,来进行K+1个遮挡的训练,其中,热力图表示关键点移动发生的位置。
[0184]
[0185] 在传输参考视频帧和编码结果时,由于可以使用异步传输机制,即通过中心网直接将关键点的编码结果先传输到视频解码端,在此基础上,本申请还可以对提前传输的关键点数据进行预解码,提前生成对应的预测视频帧,实现更流畅、更快速的解码。
[0186] 为了使本领域技术人员能够更好地理解上述步骤,以下通过一个例子对本申请实施例加以示例性说明,但应当理解的是,本申请实施例并不限于此。
[0187] 如图6所示,在实际应用中,在用户账户浏览视频的过程中,可以由采集端获取原始的视频流,视频流中可以包括多个视频帧。在一种示例中,可以由各类摄像头实时采集原始的视频流,例如视频直播过程中由摄像设备采集到的实时画面;在另一种示例中,也可以由采集端获取预先录制生成的视频流,例如将预先存储的视频文件转换为视频流。
[0188] 在采集端获取到包括多个视频帧的视频流后,可以将多个视频帧发送到视频编码端,示例性地,视频编码端可以是由以下至少一种运行设备构成:集成编码芯片的终端、基于软件的编码服务(如云服务或服务器)。在视频编码端获取到多个视频帧后,视频编码端可以基于AI视觉的关键点识别机制以及眼动仪数据,识别视频帧中的关键点,得到账户关注区域。进而,视频编码端针对识别得到的关键点,可以进行AI视觉编码,并获取相应的编码结果。
[0189] 然后,可以基于超低延迟传输机制,向视频编码端传输针对参考视频帧和关键点等视频数据的编码结果,在一示例中,整体传输可以采用基于UDP(用户数据报协议,User Datagram Protocol)的传输协议,如SRT协议或WebRTC协议;传输的方式支持高速Wi‑Fi、有线、微波、5G/4G等多种方式,具体可以依据实际应用场景灵活选择。
[0190] 在一些可能的情况中,为了使视频解码端可以生成正确的预测视频帧,视频编码端对参考视频帧(也可以称为关键视频帧)使用的压缩率较低,参考视频帧需要传输的数据量较大,为保证传输的稳定性,可以采用基于边缘和云端结合的传输链路进行传输。此外,在传输参考视频帧和编码结果时,可以创新性地使用异步传输机制,换句话说,可以预先处理出多个待编码视频帧的关键点并获取对应的编码结果后,可以通过中心网直接将关键点的编码结果先传输到视频解码端,无需等待参考视频帧的视频数据传输完成,能够有效降低视频数据传输过程中的数据峰值,充分利用宽带资源。
[0191] 视频解码端可以是集成解码芯片的终端或者定制化播放器,在视频解码端获取到视频编码端提供的编码结果后,可以对编码结果进行解码,并基于解码得到的关键点信息以及预先解码得到的参考视频帧,进行视频帧解码,将通过生成器预测得到的预测视频帧作为视频帧结果结果。
[0192] 并且,在用户浏览视频的过程中,终端或云端服务(例如视频编码端和视频解码端)还可以基于多维度的指标动态地确定视频质量评估结果,并基于视频质量评估结果动态调调整视频编码、传输和解码过程中的参数,例如视频编码端可以根据视频质量评估结果确定视频编码模型的模型损失值,并动态调整视频编码模型的模型参数和/或其他编码参数,视频解码端也可以根据视频质量评估结果确定视频解码模型的模型损失值,并动态调整视频解码模型的模型参数和/或其他解码参数。
[0193] 应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0194] 基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的基于AI和注意力机制的超高清视频编码方法的基于AI和注意力机制的超高清视频编码装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个基于AI和注意力机制的超高清视频编码装置实施例中的具体限定可以参见上文中对于基于AI和注意力机制的超高清视频编码方法的限定,在此不再赘述。
[0195] 在一个实施例中,如图7所示,提供了一种基于AI和注意力机制的超高清视频编码装置,包括:
[0196] 编码视频帧获取模块701,用于在用户账户浏览视频的过程中,获取待编码视频帧;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;
[0197] 关注区域确定模块702,用于确定所述用户账户对所述待编码视频帧的账户关注区域;
[0198] 编码结果获取模块703,用于获取所述账户关注区域相对于所述参考视频帧中对应区域的运动偏移信息,并对所述运动偏移信息进行编码,得到偏移信息编码结果;
[0199] 编码结果发送模块704,用于向所述用户账户的视频解码端发送所述偏移信息编码结果,以触发所述视频解码端对所述偏移信息编码结果进行解码,得到所述运动偏移信息,并基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0200] 在一个实施例中,所述用户账户的视频解码端配置有眼动仪;所述关注区域确定模块702,用于:
[0201] 获取所述眼动仪采集到的眼动仪数据;所述眼动仪数据包括所述用户账户浏览所述视频解码后的视频帧时,所述眼动仪采集到的所述用户账户对所述解码后的视频帧的视线注视区域;
[0202] 根据所述眼动仪数据,确定所述用户账户对所述待编码视频帧的账户关注区域。
[0203] 在一个实施例中,所述编码结果获取模块703,用于:
[0204] 基于所述眼动仪数据确定每个账户关注区域的重要度;
[0205] 获取每个重要度对应的压缩率;所述压缩率与所述重要度呈负相关;
[0206] 根据每个账户关注区域对应的压缩率,对每个账户关注区域对应的运动偏移信息进行编码,得到偏移信息编码结果。
[0207] 在一个实施例中,所述关注区域确定模块702,用于:
[0208] 将所述待编码视频帧输入到视频编码模型,由所述视频编码模型基于预设的自注意力机制,确定所述用户账户对所述待编码视频帧中多个图像区域的注意力信息,并根据所述注意力信息,确定所述待编码视频帧中的账户关注区域。
[0209] 在一个实施例中,所述装置还包括:
[0210] 样本数据获取模块,用于获取样本用户账户的眼动仪采集的样本眼动仪数据;所述样本眼动仪数据包括所述样本用户账户浏览样本视频时采集到的、所述样本用户账户对所述样本视频的样本视频帧的视线关注区域;
[0211] 标签获取模块,用于将所述样本视频帧的视线关注区域作为所述样本视频帧的训练标签;
[0212] 模型训练模块,用于基于所述训练标签和所述样本视频帧,对预设的注意力模型进行监督训练,并基于训练结果得到所述视频编码模型。
[0213] 在一个实施例中,所述装置还包括:
[0214] 质量评估信息获取模块,用于在浏览所述视频时,根据当前的视频编码参数,以及所述用户账户的视频解码端当前返回的视频解码参数,获取所述视频对应的多个质量评估信息;
[0215] 损失值确定模块,用于根据所述多个质量评估信息与所述待编码视频帧的质量评估标签的差异,确定模型损失值;
[0216] 视频编码模型优化模块,用于根据所述模型损失值调整所述视频编码模型的模型参数,以基于模型参数调整后的所述视频编码模型,确定所述用户账户对所述视频其他待编码视频帧的账户关注区域。
[0217] 基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的基于AI和注意力机制的超高清视频解码方法的基于AI和注意力机制的超高清视频解码装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个基于AI和注意力机制的超高清视频解码装置实施例中的具体限定可以参见上文中对于基于AI和注意力机制的超高清视频解码方法的限定,在此不再赘述 。
[0218] 在一个实施例中,如图8所示,提供了一种基于AI和注意力机制的超高清视频解码装置,所述装置包括:
[0219] 编码结果接收模块801,用于在用户账户浏览视频的过程中,接收视频编码端发送的偏移信息编码结果;所述偏移信息编码结果在所述视频编码端确定待编码视频帧中所述用户账户的账户关注区域、并对所述账户关注区域对应的运动偏移信息进行编码后得到;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;所述运动偏移信息为所述账户关注区域相对于所述参考视频帧中对应区域的偏移信息;
[0220] 偏移信息获取模块802,用于对所述偏移信息编码结果进行解码,得到所述运动偏移信息;
[0221] 视频帧解码模块803,用于基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0222] 在一个实施例中,所述装置还包括:
[0223] 眼动仪数据采集模块,用于在用户账户浏览视频的过程中,通过眼动仪获取所述用户账户的眼动仪数据,所述眼动仪数据包括所述用户账户对所述预测视频帧的视线注视区域;
[0224] 眼动仪数据传输模块,用于向所述视频编码端返回所述眼动仪数据,以使所述视频编码端根据所述眼动仪数据,确定所述用户账户对所述视频其他待编码视频帧的账户关注区域。
[0225] 上述视频编码装置和视频解码装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0226] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储视频数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于AI和注意力机制的超高清视频编码方法。
[0227] 在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种基于AI和注意力机制的超高清视频解码方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0228] 本领域技术人员可以理解,图9和图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0229] 在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0230] 在用户账户浏览视频的过程中,获取待编码视频帧;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;
[0231] 确定所述用户账户对所述待编码视频帧的账户关注区域;
[0232] 获取所述账户关注区域相对于所述参考视频帧中对应区域的运动偏移信息,并对所述运动偏移信息进行编码,得到偏移信息编码结果;
[0233] 向所述用户账户的视频解码端发送所述偏移信息编码结果,以触发所述视频解码端对所述偏移信息编码结果进行解码,得到所述运动偏移信息,并基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0234] 在一个实施例中,处理器执行计算机程序时还实现上述其他实施例中的步骤。
[0235] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0236] 在用户账户浏览视频的过程中,获取待编码视频帧;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;
[0237] 确定所述用户账户对所述待编码视频帧的账户关注区域;
[0238] 获取所述账户关注区域相对于所述参考视频帧中对应区域的运动偏移信息,并对所述运动偏移信息进行编码,得到偏移信息编码结果;
[0239] 向所述用户账户的视频解码端发送所述偏移信息编码结果,以触发所述视频解码端对所述偏移信息编码结果进行解码,得到所述运动偏移信息,并基于已解码的所述 参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0240] 在一个实施例中,计算机程序被处理器执行时还实现上述其他实施例中的步骤。
[0241] 在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
[0242] 在用户账户浏览视频的过程中,获取待编码视频帧;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;
[0243] 确定所述用户账户对所述待编码视频帧的账户关注区域;
[0244] 获取所述账户关注区域相对于所述参考视频帧中对应区域的运动偏移信息,并对所述运动偏移信息进行编码,得到偏移信息编码结果;
[0245] 向所述用户账户的视频解码端发送所述偏移信息编码结果,以触发所述视频解码端对所述偏移信息编码结果进行解码,得到所述运动偏移信息,并基于已解码的所述 参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0246] 在一个实施例中,计算机程序被处理器执行时还实现上述其他实施例中的步骤。
[0247] 在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0248] 在用户账户浏览视频的过程中,接收视频编码端发送的偏移信息编码结果;所述偏移信息编码结果在所述视频编码端确定待编码视频帧中所述用户账户的账户关注区域、并对所述账户关注区域对应的运动偏移信息进行编码后得到;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;所述运动偏移信息为所述账户关注区域相对于所述参考视频帧中对应区域的偏移信息;
[0249] 对所述偏移信息编码结果进行解码,得到所述运动偏移信息;
[0250] 基于已解码的所述参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0251] 在一个实施例中,处理器执行计算机程序时还实现上述其他实施例中的步骤。
[0252] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0253] 在用户账户浏览视频的过程中,接收视频编码端发送的偏移信息编码结果;所述偏移信息编码结果在所述视频编码端确定待编码视频帧中所述用户账户的账户关注区域、并对所述账户关注区域对应的运动偏移信息进行编码后得到;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;所述运动偏移信息为所述账户关注区域相对于所述参考视频帧中对应区域的偏移信息;
[0254] 对所述偏移信息编码结果进行解码,得到所述运动偏移信息;
[0255] 基于已解码的所述 参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0256] 在一个实施例中,计算机程序被处理器执行时还实现上述其他实施例中的步骤。
[0257] 在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
[0258] 在用户账户浏览视频的过程中,接收视频编码端发送的偏移信息编码结果;所述偏移信息编码结果在所述视频编码端确定待编码视频帧中所述用户账户的账户关注区域、并对所述账户关注区域对应的运动偏移信息进行编码后得到;所述待编码视频帧在向所述用户账户的视频解码端传输的参考视频帧之后;所述运动偏移信息为所述账户关注区域相对于所述参考视频帧中对应区域的偏移信息;
[0259] 对所述偏移信息编码结果进行解码,得到所述运动偏移信息;
[0260] 基于已解码的所述 参考视频帧和所述运动偏移信息,生成所述待编码视频帧对应的预测视频帧。
[0261] 在一个实施例中,计算机程序被处理器执行时还实现上述其他实施例中的步骤。
[0262] 需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
[0263] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read‑Only Memory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random AccessMemory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0264] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0265] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。