本技术涉及计算机应用,尤其涉及视频编码方法、装置、设备及存储介质。
背景技术:
1、目前,存在一类视频,不同于常规视频,该类视频是由多张电子图像制作或者转换得到的,该类视频包含的图像帧的数量较少,同时该类视频对画质要求较高,例如相册视频。相册视频指的是通过视频的形式展现图像内容的一类电子相册。用户在使用多张电子图像制作相册视频时,多张电子图像之间有着一定的先后顺序,但这种预设的先后顺序,对利用图像之间的内容相关性/相似度,进一步压缩编码以节省视频的数据量来说,并不是最好的。因此,如何在保证视频质量不变的前提下,减小视频的数据量,即降低视频的体积取值,是目前需要解决的技术问题。
技术实现思路
1、本技术实施例提供了视频编码方法、装置、设备及存储介质,能够确保在不降低视频质量的情况下,减小视频的数据量。
2、一方面,本技术实施例提供一种视频编码方法,该方法包括:
3、对目标视频进行解码处理,得到多帧图像;
4、基于所述多帧图像中帧与帧之间的相似度,确定所述多帧图像的画面组(groupof pictures,gop)的取值;
5、基于确定的所述多帧图像的gop的取值,将所述多帧图像划分为多个gop,并对各个gop所包含图像的编码顺序进行调整;
6、对调整编码顺序后的图像进行编码,得到编码后的目标视频。
7、在一个实施例中,所述对各个gop所包含图像的编码顺序进行调整,包括:
8、针对任一gop,获取所述任一gop中各帧图像的帧类型,以及所述各帧图像的参考帧;
9、基于所述各帧图像的帧类型,以及所述各帧图像的参考帧,对所述任一gop所包含图像的编码顺序进行调整。
10、在一个实施例中,所述基于所述各帧图像的帧类型,以及所述各帧图像的参考帧,对所述任一gop所包含图像的编码顺序进行调整,包括:
11、获取所述任一gop中帧类型为i帧的第一图像,以及帧类型为b帧的多个第二图像;
12、对所述第一图像的编码顺序进行调整;其中,所述第一图像的编码顺序先于所述多个第二图像的编码顺序;
13、遍历所述多个第二图像,从所述多个第二图像中确定参考帧包括所述第一图像的第二图像;
14、对所述确定的第二图像的编码顺序进行调整;其中,所述确定的第二图像的编码顺序先于所述多个第二图像中其他第二图像的编码顺序;
15、从所述其他第二图像中确定参考帧包括最近调整编码顺序的第二图像中任一第二图像的第二图像;
16、对最近确定的第二图像的编码顺序进行调整;其中,所述最近确定的第二图像的编码顺序先于所述多个第二图像中其他第二图像的编码顺序;
17、在遍历结束后,获取所述任一gop中调整编码顺序后的图像。
18、在一个实施例中,所述任一gop包括n帧图像,所述任一gop中第n帧图像的帧类型为i帧,所述任一gop中其他图像的帧类型为b帧,所述第n帧图像的编码顺序先于所述任一gop中其他图像的编码顺序,所述任一gop中第n/2帧图像的编码顺序后于所述第n帧图像的编码顺序,所述任一gop中第n/4帧图像的编码顺序后于所述第n/2帧图像的编码顺序,所述任一gop中第n/8帧图像的编码顺序后于所述第n/4帧图像的编码顺序,所述任一gop中第3n/8帧图像的编码顺序后于所述第n/8帧图像的编码顺序,所述任一gop中第3n/4帧图像的编码顺序后于所述第3n/8帧图像的编码顺序,所述任一gop中第5n/8帧图像的编码顺序后于所述第3n/4帧图像的编码顺序,所述任一gop中第7n/8帧图像的编码顺序后于所述第5n/8帧图像的编码顺序。
19、在一个实施例中,所述获取所述各帧图像的参考帧,包括:
20、基于所述各帧图像的帧类型以及参考帧确定策略,确定所述各帧图像的参考帧。
21、在一个实施例中,在所述多帧图像的gop的取值为所述确定的取值的情况下,所述多帧图像中帧与帧之间的相似度,大于在所述多帧图像的gop的取值为其他取值的情况下,所述多帧图像中帧与帧之间的相似度。
22、在一个实施例中,所述对调整编码顺序后的图像进行编码,得到编码后的目标视频,包括:
23、确定所述各个gop中各帧图像的帧类型,以及所述各帧图像的参考帧;
24、按照所述各个gop中各帧图像的调整后的编码顺序,基于所述各帧图像的帧类型,以及所述各帧图像的参考帧,对所述各帧图像进行编码,得到编码后的目标视频。
25、在一个实施例中,所述方法还包括:
26、对各帧图像进行分辨率降采样,得到降采样后的多帧图像;
27、所述基于所述多帧图像中帧与帧之间的相似度,确定所述多帧图像的画面组gop的取值,包括:
28、基于所述降采样后的多帧图像中帧与帧之间的相似度,确定所述多帧图像的gop的取值。
29、在一个实施例中,所述对各帧图像进行分辨率降采样,得到降采样后的多帧图像,包括:
30、对各帧图像的图像参数分量进行分辨率降采样,得到降采样后的多帧图像,所述图像参数分量包括如下一种或者多种:亮度分量,色度分量。
31、在一个实施例中,所述方法还包括:
32、获取所述目标视频的帧率;
33、若所述帧率小于帧率阈值,则触发执行所述对目标视频进行解码处理,得到多帧图像。
34、另一方面,本技术实施例提供了一种视频编码装置,该视频编码装置包括:
35、解码单元,用于对目标视频进行解码处理,得到多帧图像;
36、确定单元,用于基于所述多帧图像中帧与帧之间的相似度,确定所述多帧图像的gop的取值;
37、划分单元,用于基于确定的所述多帧图像的gop的取值,将所述多帧图像划分为多个gop,并对各个gop所包含图像的编码顺序进行调整;
38、编码单元,用于对调整编码顺序后的图像进行编码,得到编码后的目标视频。
39、另一方面,本技术实施例提供一种计算机设备,包括处理器、存储装置和通信接口,处理器、存储装置和通信接口相互连接,其中,存储装置用于存储支持计算机设备执行上述方法的计算机程序,计算机程序包括程序指令,处理器被配置用于调用程序指令,执行如下步骤:
40、对目标视频进行解码处理,得到多帧图像;
41、基于所述多帧图像中帧与帧之间的相似度,确定所述多帧图像的gop的取值;
42、基于确定的所述多帧图像的gop的取值,将所述多帧图像划分为多个gop,并对各个gop所包含图像的编码顺序进行调整;
43、对调整编码顺序后的图像进行编码,得到编码后的目标视频。
44、另一方面,本技术实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被处理器执行时使处理器执行上述视频编码方法。
45、另一方面,本技术实施例提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序适于由处理器加载并执行上述视频编码方法。
46、本技术实施例中,在对目标视频进行解码处理,得到多帧图像之后,基于多帧图像中帧与帧之间的相似度,确定多帧图像的gop的取值,然后基于确定的多帧图像的gop的取值,将多帧图像划分为多个gop,那么如此划分得到的每个gop所包含的图像之间的内容相关性是最高的,因此对各个gop所包含图像的编码顺序进行调整,并对调整编码顺序后的图像进行编码,得到编码后的目标视频。通过这种编码方式得到的编码后的视频的数据量会减小,同时又不会降低视频质量。也就是说,本技术实施例能够确保在不降低视频质量的情况下,减小视频的数据量。