System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及视频处理,具体涉及一种视频处理方法、装置、设备及介质。
技术介绍
1、在视频应用场景中,视频编码是必不可少的操作环节。在进行视频编码的时候操作流程比较复杂。
2、在视频编码过程中,率失真优化(rate distortion optimization,rdo)和运动估计(motion estimation,me)是其中非常重要的两个部分,占用较多的计算资源,对编码器的速度影响较大。
3、视频编码器的处理对象是视频图像的序列(sequence),视频序列是多个视频图像(frame)按照时间顺序组成的集合,编码器是按照frame进行编码,并且每一个frame会通过各种划分、决策、选择之后,最终会以各个编码单元cu开始编码。对于目前常见的视频编码器,基本处理流程如下所示,第一步,把每一个帧图划分成大小固定的最大编码块lcb(largest coding block),每一个lcb都是一个编码入口;第二步,每一个lcb会按照四叉树的方式划分成各种大小的编码单元cu(coding unit),一个lcb会有多种大小cu的组合,构成一个编码树单元ctu(coding tree unit);第三步,每一个cu又可能会被划分成不同形状的预测单元pu(prediction unit)。
4、在编码一个cu/pu时,需要用到临近参考帧中的图像块作为参考,根据相似性,通过帧间预测达到数据压缩目的,这里可能有多种参考关系。对于每一种参考关系,rdo决策通常是通过遍历比较各种可能的划分,选择代价最小的作为最
技术实现思路
1、本申请的目的在于提供一种视频处理方法、装置、设备及介质,可以实现提高视频编码速度的方案。
2、根据本申请实施例的第一方面,提供一种视频处理方法,包括:
3、将参考帧按照编码器划分的最大lcb编码块,设定为分像素内插的处理单元;
4、基于帧内的编码流程,以参考帧内各个所述lcb编码块为基本单元计算分像素插值;
5、将所述分像素插值存储到与其具有对应关系的存储空间;
6、响应于编码请求,基于参考帧确定各个lcb编码块对应的预存的所述分像素插值和依赖数据,以完成视频编码。
7、在一种实施方式中,所述基于帧内的编码流程,以参考帧内各个所述lcb编码块为基本单元计算分像素插值,包括:
8、确定在所述参考帧中完成编码的第一编码块;
9、基于所述第一编码块和所述帧内的编码流程中规定的lcb编码块的编码顺序,分别确定所述参考帧内其他lcb编码块的分像素插值。
10、在一种实施方式中,所述基于所述第一编码块和所述帧内的编码流程中规定的lcb编码块的编码顺序,分别确定所述参考帧内其他lcb编码块的分像素插值,包括:
11、根据从左到右、从上到下的编码顺序进行编码;
12、若所述第一编码块完成编码,可以启动位于所述第一编码块左上角的lcb编码块进行分像素插值计算;其中,所述lcb编码框进行所述分像素插值计算的顺序为按照从左到右、从上到下的顺序。
13、在一种实施方式中,确定所述参考帧内其他lcb编码块的分像素插值,包括:
14、在计算每一个lcb编码块行中的最后两个lcb编码块的分像素插值时,将所述行中的最后两个lcb编码块合并一起进行计算;
15、在计算每一个lcb编码块列中的最后两个lcb编码块的分像素插值时,将所述列中的最后两个lcb编码块合并一起进行计算;
16、在计算位于参考帧的右下角的最后四个lcb编码块的分像素插值时,将所述最后四个lcb编码块合并一起进行计算。
17、在一种实施方式中,若所述lcb编码块为参考帧的边界上的块,则在计算lcb编码块的分像素插值时,向远离lcb编码块边界方向多计算n个整像素行或列的分像素内插计算。
18、在一种实施方式中,计算在所述参考帧的边界上的lcb编码块的分像素插值之后,将所述参考帧的边界临近行或列中插值得到的像素复制到边界的填充区域。
19、在一种实施方式中,所述在计算lcb编码块的分像素插值时,向远离lcb编码块边界方向多计算n个整像素行或列的分像素内插计算,包括:
20、在计算位于最上面一行lcb编码模块所在行时,每个lcb编码块向下多计算第一数量个整像素行的分像素内插值;所述第一数量为至少1个;
21、在计算位于最下面一行lcb编码模块所在行时,每个lcb编码块向下少计算第二数量个整像素行的分像素内插值;所述第二数量为至少1个,且所述第二数量等于所述第一数量;
22、在计算位于最左面一列lcb编码模块所在列时,每个lcb编码块向右多计算第三数量个整像素列的分像素内插值;所述第三数量为至少1个;
23、在计算位于最右面一列lcb编码模块所在列时,每个lcb编码块向右少计算第四数量个整像素行的分像素内插值;所述第四数量为至少1个,且所述第三数量等于所述第四数量。
24、在一种实施方式中,还包括:若所述lcb编码块不是参考帧边界上的块,则在计算位于中间位置的所述lcb编码块的分像素插值时的像素的宽度和高度,与所述lcb编码块的像素的宽度和高度相等。
25、在一种实施方式中,所述将所述分像素插值存储到与其具有对应关系的存储空间,包括:
26、将所述参考帧中lcb编码块对应的分像素插值存储到存储区中;
27、按照lcb编码块中包含的分像素位置,将各个分像素插值存储到所述存储区中各个子存储区。
28、在一种实施方式中,所述将参考帧划分为包含多个子编码块的lcb编码块,包括:
29、将所述参考帧按照预设的第一像素数量划分为包含多个子编码块的lcb编码块;其中,所述子编码块中包含的第二像素数量小于所述第一像素数量。
30、根据本申请实施例的第二方面,提供一种视频处理装置,包括:
31、划分模块,用于将参考帧按照编码器划分的最大lcb编码块,设定为分像素内插的处理单元;
32、计算模块,用于基于帧内的编码流程,以参考帧内各个所述lcb编码块为基本单元计算分像素插值;
33、存储模块,用于将所述分像素插值存储到与其具有对应关系的存储空间;
34、确定模块,用于响应于编码请求,基于参考帧确定各个lcb编码块对应的预存的所述分像素插值和依赖数据,以完成视频编码。
35、根据本申请实施例的第三方面,提供一种电子设备,包括存储器与处理器,所述存储器用于存储所述处理器可执行的计算机程序;所述处理器用于执行所述存储器中的计算机程序,以实现本文档来自技高网...
【技术保护点】
1.一种视频处理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述基于帧内的编码流程,以参考帧内各个所述LCB编码块为基本单元计算分像素插值,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一编码块和所述帧内的编码流程中规定的LCB编码块的编码顺序,分别确定所述参考帧内其他LCB编码块的分像素插值,包括:
4.根据权利要求2所述的方法,其特征在于,确定所述参考帧内其他LCB编码块的分像素插值,包括:
5.根据权利要求2所述的方法,其特征在于,还包括:
6.根据权利要求5所述的方法,其特征在于,还包括:
7.根据权利要求6所述的方法,其特征在于,在计算LCB编码块的分像素插值时,向远离LCB编码块边界方向多计算N个整像素行或列的分像素内插计算,包括:
8.根据权利要求2所述的方法,其特征在于,还包括:
9.根据权利要求1所述的方法,其特征在于,所述将所述分像素插值存储到与其具有对应关系的存储空间,包括:
10.根据权利要求1所述的
11.一种视频处理装置,其特征在于,所述装置包括:
12.一种电子设备,包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由所述处理器加载并执行以实现根据权利要求1至10中任一项所述的方法。
13.一种计算机可读介质,其上存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现根据权利要求1至10中任一项所述的方法。
...【技术特征摘要】
1.一种视频处理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述基于帧内的编码流程,以参考帧内各个所述lcb编码块为基本单元计算分像素插值,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一编码块和所述帧内的编码流程中规定的lcb编码块的编码顺序,分别确定所述参考帧内其他lcb编码块的分像素插值,包括:
4.根据权利要求2所述的方法,其特征在于,确定所述参考帧内其他lcb编码块的分像素插值,包括:
5.根据权利要求2所述的方法,其特征在于,还包括:
6.根据权利要求5所述的方法,其特征在于,还包括:
7.根据权利要求6所述的方法,其特征在于,在计算lcb编码块的分像素插值时,向远离lcb编码块边界方向多计算n个整像素行或列的分像素内插计算,包括:
...【专利技术属性】
技术研发人员:况超,
申请(专利权)人:镕铭微电子济南有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。