本技术涉及图像处理、多媒体、计算机视觉及云,具体而言,本技术涉及一种视频编码方法、装置、电子设备、存储介质及程序产品。
背景技术:
1、屏幕视频是通过截取电子设备如计算机/手机等屏幕内容得到的视频,屏幕视频广泛应用于视频会议,在线教育,远程桌面等场景中。屏幕视频内容形式也比较多,有ppt演示,word文档等,它与传统的自然视频具有很多明显的区别,比如屏幕视频局部区域颜色数较少,存在大量尖锐的边界,存在大量平坦区域,存在大量重复的纹理等特性。由于屏幕视频的固有特性,国际标准组织也制定了屏幕压缩的标准叫scc,是基于hevc标准的扩展版本。scc标准相比hevc,最大的改进在于增加了适合屏幕压缩的工具,ibc及palette,能够显著提升压缩性能。
2、由于新的编码工具的加入使得编码器的复杂度呈指数级地增长,从而严重影响视频编码效率。
技术实现思路
1、鉴于以上问题,本技术提供一种视频编码方法、装置、电子设备、存储介质及程序产品,能够降低屏幕视频编码的复杂度,有效提升屏幕视频编码的速度。
2、第一方面,本技术实施例提供了一种视频编码方法,方法包括:对待编码视频中的视频帧进行划分,得到的多个待编码单元;将每个所述待编码单元输入至具有n个编码层的编码器中,其中,n为大于1的整数;所述编码器的第一个编码层从第一集合中确定对每个所述待编码单元的目标编码方式,并对各所述待编码单元采用对应的目标编码方式进行编码,得到每个所述待编码单元对应的m个编码子单元并输出,其中,m为大于或等于1的整数,所述第一集合中包括至少三种编码方式;所述编码器的第i个编码层获取第i-1个编码层输出的编码子单元作为输入至该第i个编码层的待编码单元,第i个编码层从第二集合中确定对输入至该第i个编码层的待编码单元的候选编码方式,若所述待编码单元的候选编码方式为第一编码方式,且第i-1层中与该待编码单元对应的目标编码方式也为第一编码方式,则将该第一编码方式作为所述待编码单元的目标编码方式,并利用该目标编码方式对该待编码单元进行编码,得到所述待编码单元对应的m个编码子单元,其中,i为大于1的整数,且第二集合中包括第二编码方式和所述第一编码方式;获取所述编码器的第n个编码层编码得到的各编码子单元,作为对所述待编码视频进行编码的编码结果。
3、第二方面,本技术实施例提供了一种视频编码装置,所述装置包括:待编码单元划分模块,用于对待编码视频中的视频帧就行划分,得到多个待编码单元;编码方式确认模块,在第一编码层中,用于从第一集合中确定对每个所述待编码单元的目标编码方式;在第i编码层中,用于根据第i-1层中待编码单元的目标编码方式和第i层中对应待编码单元的候选编码方式,确定第i层中对应待编码单元的目标编码方式;编码模块,用于根据所述目标编码方式对所述待编码单元进行编码,并将每个所述待编码单元进行n层编码得到各编码子单元,作为对所述待编码视频进行编码的编码结果。
4、在一种可实施方式中,编码方式确认模块包括编码代价计算模块、编码方式选择模块和编码信息获取模块。编码代价计算模块,用于计算每个编码方式对待编码单元进行编码对应的编码代价;编码方式选择模块,用于根据编码代价计算模块计算出的每种编码方式对应的编码代价,选这编码代价最低的编码方式作为待编码单元的目标编方式。编码信息获取模块,用于获取编码层信息、每个编码层中每个待编码单元信息以及每个待编码单元对应的目标编码方式信息;编码方式判断模块,用于判断当前编码层的待编码单元的候选编码方式与上一个编码层中该待编码单元对应的目标编码方式是否一致,以及判断待编码单元是否满足预设规则。
5、在一种可实施方式中,编码代价计算模块,用于第i个编码层基于所述第一编码方式和第二编码方式对输入至该第i个编码层的待编码单元进行编码代价计算,得到所述待编码单元采用第一编码方式和第二编码方式分别对应的编码代价;编码方式选择模块,用于获取所述第i个编码层将第一编码方式和第二编码方式分别对应的编码代价中编码代价最低的编码方式,作为候选编码方式。
6、在一种可实施方式中,若所述待编码单元的候选编码方式不为第一编码方式或第i-1层中与该待编码单元对应的目标编码方式不为第一编码方式,第i个编码层基于调色板模式对所述待编码单元进行编码代价计算,得到调色板模式对应的编码代价;获取所述调色板模式和所述候选编码方式分别对应的编码代价中编码代价为最低的编码方式,作为所述待编码单元的目标编码方式。
7、在一种可实施方式中,所述第一编码方式为帧内块拷贝模式,所述第二编码方式为帧内预测编码模式,所述帧内预测编码模式包括dc编码模式、planar编码模式或基于方向预测的图像编码方式。
8、在一种可实施方式中,编码代价计算模块,还用于第一个编码层基于第一集合中包括的各编码方式对输入至该第一个编码层的待编码单元进行编码代价计算,得到所述待编码单元采用每种编码方式分别对应的编码代价;编码方式选择模块,还用于获取采用每种编码方式分别对应的编码代价中编码代价最低的编码方式,作为所述待编码单元的目标编码方式。
9、在一种可实施方式中,第一编码层获取基于第一集合中包括的每种编码方式对输入至该第一个编码层的待编码单元进行编码的编码质量损失值和比特消耗值;所述第一编码层对所述待编码单元采用每种编码方式对应的编码质量损失值和比特消耗值进行加权求和,得到所述待编码单元采用每种编码方式分别对应的编码代价。
10、在一种可实施方式中,视频编码装置还包括视频获取模块,用于获取屏幕视频流;并通过待编码单元划分模块提取所述屏幕视频流中的关键帧作为待编码视频帧;对所述待编码视频帧进行划分,得到多个待编码单元。
11、在一种可实施方式中,视频编码装置还包括视频流发送模块,视频流发送模块用于基于每层编码层中对各待编码单元的编码方式确定对各待编码单元的解码方式,基于每层编码层中对各待编码单元的解码方式得到所述待编码视频帧的解码信息;将包括所述待编码视频帧进行编码的编码结果的编码视频流和所述解码信息发送至视频内容接收方,以使所述视频内容接收方基于所述解码信息对所述编码结果进行解码,得到解码后的视频内容。
12、第三方面,本技术实施例提供了一种电子设备,一个或多个处理器以及存储器;一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述方法。
13、第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有程序代码,所述程序代码可被处理器调用执行上述方法。
14、第五方面,本技术实施例提供了一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现上述方法的步骤。
15、相对于现有技术,本技术提供的视频编码方法、装置、电子设备、存储介质及程序产品,其视频编码方法在对屏幕视频的多个待编码单元进行逐层编码时,第一个编码层中从第一集合中获取目标编码方式对待编码单元进行编码;第i个编码层中从第二集合中获取候选编码方式,其中,第一集合包括至少三种编码方式,第二集合包括第二编码方式和第一编码方式;当第i个编码层中待编码单元的候选编码方式与第i-1层中该待编码单元对应的目标编码方式一致时,将候选编码方式作为当前编码层中待编码单元的目标编码方式并进行编码;由于第二集合的编码方式少于第一集合,因此在将候选编码方式作为当前编码层中待编码单元的目标编码方式时,也即是相当于跳过了对第一集合中部分编码模式的选择。从而实现了基于上一个编码层中待编码单元对应的编码方式信息,跳过当前编码层对部分编码方式的选择;在对整体编码性能的损失影响较小的情况下,降低了整体编码的复杂度,提高编码效率,减少编码过程中的数据处理量。
16、本技术的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
1.一种视频编码方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述第i个编码层从第二集合中确定对输入至该第i个编码层的待编码单元的候选编码方式,包括:
3.根据权利要求2所述的方法,其特征在于,所述第一集合中包括调色板模式以及所述第二集合中包括的所述第一编码方式和所述第二编码方式,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述第一编码方式为帧内块拷贝模式,所述第二编码方式为帧内预测编码模式,所述帧内预测编码模式包括dc编码模式、planar编码模式或基于方向预测的图像编码方式。
5.根据权利要求1所述的方法,其特征在于,所述编码器的第一个编码层从第一集合中确定对每个所述待编码单元的目标编码方式,包括:
6.根据权利要求5所述的方法,其特征在于,所述第一个编码层基于第一集合中包括的各编码方式对输入至该第一个编码层的待编码单元进行编码代价计算,得到所述待编码单元采用每种编码方式分别对应的编码代价,包括:
7.根据权利要求1所述的方法,其特征在于,所述获取对待编码视频中的视频帧进行划分,得到的多个待编码单元,包括:
8.根据权利要求1-7中任意一项所述的方法,其特征在于,所述方法还包括:
9.一种视频编码装置,其特征在于,所述装置包括:
10.一种电子设备,其特征在于,包括:
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-8中任意一项所述的方法。
12.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1-8中任意一项所述方法的步骤。
