CN117478881A - 视频信息处理方法、系统、设备和存储介质 - Google Patents
视频信息处理方法、系统、设备和存储介质 Download PDFInfo
- Publication number
- CN117478881A CN117478881A CN202311467208.XA CN202311467208A CN117478881A CN 117478881 A CN117478881 A CN 117478881A CN 202311467208 A CN202311467208 A CN 202311467208A CN 117478881 A CN117478881 A CN 117478881A
- Authority
- CN
- China
- Prior art keywords
- frame
- video frame
- coding
- original video
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 39
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 238000012545 processing Methods 0.000 claims abstract description 259
- 238000013139 quantization Methods 0.000 claims abstract description 141
- 238000000034 method Methods 0.000 claims abstract description 98
- 238000005070 sampling Methods 0.000 claims abstract description 90
- 238000004458 analytical method Methods 0.000 claims abstract description 87
- 230000005540 biological transmission Effects 0.000 claims description 19
- 239000013598 vector Substances 0.000 claims description 14
- 230000008569 process Effects 0.000 abstract description 40
- 238000004364 calculation method Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 8
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 6
- 238000011161 development Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
- H04N19/139—Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请提供一种视频信息处理方法、系统、设备和存储介质,方法包括:获取待处理的原始视频帧,所述原始视频帧划分有多个处理单元;按照预设采样比率对所述原始视频帧进行降采样,得到降采样图像,其中所述预设采样比率大于半采样对应的采样比率;根据所述降采样图像,确定所述原始视频帧的编码复杂度和所述多个处理单元中各个处理单元对应的量化参数偏移量;根据所述编码复杂度和当前带宽资源,确定所述原始视频帧的帧级量化参数;根据所述量化参数偏移量和所述帧级量化参数,确定对应编码块的目标量化参数。本申请实现了降低视频帧预分析过程复杂度,提高预分析过程的速度,进而提高视频编码速度。
Description
技术领域
本申请涉及信息处理技术领域,尤其涉及一种视频信息处理方法、系统、设备和存储介质。
背景技术
视频编码,就是指通过压缩技术,将原始视频格式的文件转换成另一种视频格式文件的方式。视频编码技术主要是通过消除视频信号中的冗余实现对视频的压缩。
随着互联网技术的发展,高清直播变得越来越普及,但带来的问题是更高的带宽成本和更差的播放流畅度。为了解决这些挑战,更高效先进的视频编码标准开始逐步应用到直播业务中,但计算复杂度也是倍增。为了满足实时处理要求,需要对视频编码器的复杂度进行优化。
常用的视频编码器往往包含预分析模块,预分析模块通过在编码前对视频块之间的时空依赖关系进行定量分析,从而最优决策后续编码参数,能够在编码标准的基础上进一步提高压缩效率。然而,现有的预分析过程的耗时占整个编码耗时的比例很高,成为实时编码发展的瓶颈。
发明内容
本申请实施例的主要目的在于提供一种视频信息处理方法、系统、设备和存储介质,实现了对原始视频帧采用更高采样比率的降采样后再进行预分析的预测和计算,从而降低视频帧预分析过程复杂度,提高预分析过程的速度,进而提高视频编码速度。
第一方面,本申请实施例提供一种视频信息处理方法,包括:获取待处理的原始视频帧,所述原始视频帧划分有多个处理单元;按照预设采样比率对所述原始视频帧进行降采样,得到降采样图像,其中所述预设采样比率大于半采样对应的采样比率;根据所述降采样图像,确定所述原始视频帧的编码复杂度和所述多个处理单元中各个处理单元对应的量化参数偏移量;根据所述编码复杂度和当前带宽资源,确定所述原始视频帧的帧级量化参数;根据所述量化参数偏移量和所述帧级量化参数,确定对应编码块的目标量化参数。
于一实施例中,根据所述降采样图像,确定所述原始视频帧的所述多个处理单元中各个处理单元对应的量化参数偏移量,包括:根据所述降采样图像对所述多个处理单元进行帧间预测处理,得到所述多个处理单元的运动矢量;根据所述运动矢量,分别计算所述多个处理单元对应的传播代价,根据所述传播代价确定所述多个处理单元对应的量化参数偏移量。
于一实施例中,所述根据所述降采样图像,确定所述原始视频帧的编码复杂度,包括:根据所述降采样图像对所述多个处理单元进行帧间预测处理,得到所述多个处理单元的帧间编码代价;根据所述降采样图像对所述多个处理单元进行帧内预测处理,得到所述多个处理单元的帧内编码代价;根据所述帧间编码代价和所述帧内编码代价,确定所述多个处理单元适用的目标编码代价,所述编码复杂度包括所述多个处理单元的所述目标编码代价。
于一实施例中,所述根据所述帧间编码代价和所述帧内编码代价,确定所述多个处理单元适用的目标编码代价,包括:针对当前处理单元,将所述帧间编码代价和所述帧内编码代价中最小值确定为所述当前处理单元的目标编码代价。
于一实施例中,所述根据所述编码复杂度和当前带宽资源,确定所述原始视频帧的帧级量化参数,包括:根据所述多个处理单元的目标编码代价和当前带宽资源,确定与所述原始视频帧匹配的传输码率;根据所述传输码率确定所述原始视频帧的帧级量化参数。
于一实施例中,所述根据所述量化参数偏移量和所述帧级量化参数,确定对应编码块的目标量化参数,包括:根据各个所述处理单元对应的所述量化参数偏移量,在所述帧级量化参数的基础上分别调整对应编码块的量化参数,确定对应编码块的目标量化参数。
于一实施例中,所述预设采样比率为4:1;所述按照预设采样比率对所述原始视频帧进行降采样,得到降采样图像,包括:分别对所述原始视频帧在宽度方向和高度方向进行4:1降采样,得到所述降采样图像。
于一实施例中,所述处理单元的宽为32像素、高为32像素。
于一实施例中,在所述确定对应编码块的目标量化参数之后,还包括:根据所述原始视频帧中多个编码块对应的所述目标量化参数,对所述原始视频帧进行编码处理,得到编码后视频帧。
第二方面,本申请实施例提供一种视频信息处理方法,所述方法包括:响应于直播请求,接收待处理的直播视频帧;将所述直播视频帧划分为多个处理单元;按照预设采样比率对所述直播视频帧进行降采样,得到降采样图像,其中所述预设采样比率大于半采样对应的采样比率;根据所述降采样图像,确定所述直播视频帧的编码复杂度和所述多个处理单元中各个处理单元对应的量化参数偏移量;根据所述编码复杂度和当前带宽资源,确定所述直播视频帧的帧级量化参数;根据所述量化参数偏移量和所述帧级量化参数,确定对应编码块的目标量化参数;根据所述直播视频帧中多个编码块对应的所述目标量化参数,对所述直播视频帧进行编码处理,得到编码后视频帧;将编码后视频帧传输至接收终端。
第三方面,本申请实施例提供一种视频信息处理装置,包括:
获取模块,用于获取待处理的原始视频帧,所述原始视频帧划分有多个处理单元;
采样模块,用于按照预设采样比率对所述原始视频帧进行降采样,得到降采样图像,其中所述预设采样比率大于半采样对应的采样比率;
第一确定模块,用于根据所述降采样图像,确定所述原始视频帧的编码复杂度和所述多个处理单元中各个处理单元对应的量化参数偏移量;
第二确定模块,用于根据所述编码复杂度和当前带宽资源,确定所述原始视频帧的帧级量化参数;
第三确定模块,用于根据所述量化参数偏移量和所述帧级量化参数,确定对应编码块的目标量化参数。
于一实施例中,第一确定模块,用于根据所述降采样图像对所述多个处理单元进行帧间预测处理,得到所述多个处理单元的运动矢量;根据所述运动矢量,分别计算所述多个处理单元对应的传播代价,根据所述传播代价确定所述多个处理单元对应的量化参数偏移量。
于一实施例中,第一确定模块,用于根据所述降采样图像对所述多个处理单元进行帧间预测处理,得到所述多个处理单元的帧间编码代价;根据所述降采样图像对所述多个处理单元进行帧内预测处理,得到所述多个处理单元的帧内编码代价;根据所述帧间编码代价和所述帧内编码代价,确定所述多个处理单元适用的目标编码代价,所述编码复杂度包括所述多个处理单元的所述目标编码代价。
于一实施例中,第一确定模块,具体用于针对当前处理单元,将所述帧间编码代价和所述帧内编码代价中最小值确定为所述当前处理单元的目标编码代价。
于一实施例中,所述第二确定模块,用于根据所述多个处理单元的目标编码代价和当前带宽资源,确定与所述原始视频帧匹配的传输码率;根据所述传输码率确定所述原始视频帧的帧级量化参数。
于一实施例中,所述第三确定模块,用于根据各个所述处理单元对应的所述量化参数偏移量,在所述帧级量化参数的基础上分别调整对应编码块的量化参数,确定对应编码块的目标量化参数。
于一实施例中,所述预设采样比率为4:1;所述采样模块,用于分别对所述原始视频帧在宽度方向和高度方向进行4:1降采样,得到所述降采样图像。
于一实施例中,所述处理单元的宽为32像素、高为32像素。
于一实施例中,还包括:编码模块,用于在所述确定对应编码块的目标量化参数之后,根据所述原始视频帧中多个编码块对应的所述目标量化参数,对所述原始视频帧进行编码处理,得到编码后视频帧。
第四方面,本申请实施例提供一种视频信息处理系统,包括:预分析模块、码率控制模块和编码器;其中:所述预分析模块,用于获取待处理的原始视频帧,所述原始视频帧划分有多个处理单元;按照预设采样比率对所述原始视频帧进行降采样,得到降采样图像,其中所述预设采样比率大于半采样对应的采样比率;根据所述降采样图像,确定所述原始视频帧的编码复杂度和所述多个处理单元中各个处理单元对应的量化参数偏移量;根据所述编码复杂度和当前带宽资源,确定所述原始视频帧的帧级量化参数;所述码率控制模块,连接所述预分析模块,用于根据所述量化参数偏移量和所述帧级量化参数,确定对应编码块的目标量化参数;所述编码器,分别连接所述预分析模块和所述码率控制模块,用于根据所述原始视频帧中多个编码块对应的所述目标量化参数,对所述原始视频帧进行编码处理,得到编码后视频帧。
第五方面,本申请实施例提供一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述电子设备执行上述任一方面所述的方法。
第六方面,本申请实施例提供一种云设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述云设备执行上述任一方面所述的方法。
第七方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述任一方面所述的方法。
第八方面,本申请实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述任一方面所述的方法。
本申请实施例提供的视频信息处理方法、系统、设备和存储介质,对于待处理的原始视频帧,首先按照大于2:1的采样比率进行降采样,减少降采样图像中包含的像素数量,然后基于降采样图像进行预分析,预分析输出原始视频帧的编码复杂度和各个处理单元的量化参数偏移量,进一步根据编码复杂度和带宽资源确定该原始视频帧的帧级量化参数,然后结合各个处理单元的量化参数偏移量和该原始视频帧的帧级量化参数,确定编码阶段对应编码块的目标量化参数。如此采用更高采样比率的降采样后再进行预分析的预测和计算,减少降采样图像中包含的像素数量,从而降低视频帧预分析过程的复杂度,提高预分析过程的速度,进而提高视频编码速度。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种电子设备的结构示意图;
图2为本申请实施例提供的一种视频信息处理方案的应用场景示意图;
图3为本申请实施例提供的一种直播视频信息处理的应用场景示意图;
图4为本申请实施例提供的一种视频信息处理系统示意图;
图5为本申请实施例提供的一种视频信息处理系统原理示意图;
图6为本申请实施例提供的一种视频信息处理方法的流程示意图;
图7为本申请实施例提供的一种预分析过程示意图;
图8为本申请实施例提供的一种视频信息处理方法的流程示意图;
图9为本申请实施例提供的一种视频信息处理装置的结构示意图;
图10为本申请实施例提供的一种云设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。
本文中术语“和/或”,用于描述关联对象的关联关系,具体表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
为了更加清楚的描述本申请的技术内容,首先对本申请实施例涉及的术语释义如下:
视频帧:构成视频的基本单元,视频即为多个视频帧构成的帧序列。视频帧例如又称作图像帧,当对视频帧进行视频编码时,可以将进行编码的视频帧称作编码帧。
视频帧可以包括I帧、B帧和P帧等帧类型。其中的I帧为帧内编码帧,是一种自带全部信息的独立帧,无需参考其它图像帧便可独立进行解码。P帧为帧间编码帧,P帧又称为帧间预测帧或前向预测帧,可采用帧内预测编码和帧间预测编码,可前向参考预测编码。B帧也为帧间编码帧,B采用帧内预测编码和帧间预测编码,可前向、后向、双向参考预测编码。
H.265:High Efficiency Video Coding,高效率视频编码。
CU:Coding Unit,编码单元,用于编码的块单元,又称编码块,尺寸可变。大的CU块自上而下按照四叉树递归可以划分为更小CU块。比如H.265的CU块可以是64x64、32x32、16x16、8x8。以32×32的CU块为例,表示对应的CU块的宽为32像素、高为32像素,即32×32像素,为了简便,本申请实施例中将32×32像素简写为32×32,而对于其它尺寸的描述也是类似的。
SATD:Sum of Absolute Transformed Difference,对预测残差进行哈达玛变换后的系数绝对值和,可用于估算编码失真或衡量编码复杂度。
MV:motion vector,运动矢量。
QP:Quantization Parameter,量化参数。
Cu-tree:根据当前块被后续帧参考的程度来调整QP值。如果当前块被后续帧的参考越多,则其重要性越高,应当减少QP,提高该块的编码质量。反之,则增大该块的QP。
Intra:帧内预测。
Inter:帧间预测。
YUV,是一种颜色编码方法,“Y”表示明亮度,也就是灰阶值,“U”和“V”表示的则是色度。
如图1所示,本实施例提供一种电子设备1,包括:至少一个处理器11和存储器12,图1中以一个处理器为例。处理器11和存储器12通过总线10连接。存储器12存储有可被处理器11执行的指令,指令被处理器11执行,以使电子设备1可执行下述的实施例中方法的全部或部分流程,以实现对原始视频帧采用更高采样比率的降采样后再进行预分析的预测和计算,从而降低视频帧预分析过程复杂度,提高预分析过程的速度,进而提高视频编码速度。
于一实施例中,电子设备1可以是手机、平板电脑、笔记本电脑、台式计算机或者多个计算机组成的大型运算系统。
图2为本申请实施例提供的一种视频信息处理方案的应用场景系统200的示意图。如图2所示,该系统包括:服务器210和终端220,其中:
服务器210可以是提供视频信息处理服务的数据平台,比如可以是电商直播平台,实际场景中,一个电商直播平台可能有多个服务器210,图2中以1个服务器210为例。
终端220可以是用户登录电商直播平台时使用的电脑、手机、平板等设备,终端220也可以有多个,图2中以2个终端220为例进行示意。
终端220与服务器210之间可以通过互联网进行信息传输,以使终端220可以访问服务器210上的数据。上述终端220和/或者服务器210均可以由电子设备1来实现。
本申请实施例的视频信息处理方案可以部署在服务器210上,也可以部署在终端220上,或者部分部署在服务器210上,部分部署在终端220上。实际场景中可以基于实际需求选择,本实施例不做限定。
当视频信息处理方案全部或者部分部署在服务器210上时,可以对终端220开放调用接口,以对终端220提供算法支持。
本申请实施例提供的方法可由电子设备1执行相应的软件代码实现,通过和服务器进行数据交互来实现。其中,电子设备1可以为本地终端设备。当该方法运行于服务器时,该方法则可以基于云交互系统来实现与执行,其中,云交互系统包括服务器和客户端设备。
在一种可能的实施方式中,本发明实施例提供的方法,通过终端设备提供图形用户界面,其中,终端设备可以是前述提到的本地终端设备,也可以是前述提到的云交互系统中的客户端设备。
本申请实施例的视频信息处理方式可以应用于任意需要人机交互的场景中。
视频编码,就是指通过压缩技术,将原始视频格式的文件转换成另一种视频格式文件的方式。视频编码技术主要是通过消除视频信号中的冗余实现对视频的压缩。
随着互联网技术的发展,高清直播变得越来越普及,但带来的问题是更高的带宽成本和更差的播放流畅度。为了解决这些挑战,更高效先进的视频编码标准开始逐步应用到直播业务中,但计算复杂度也是倍增。为了满足实时处理要求,需要对视频编码器的复杂度进行优化。
常用的视频编码器往往包含预分析模块,预分析模块通过在编码前对视频块之间的时空依赖关系进行定量分析,从而最优决策后续编码参数,能够在编码标准的基础上进一步提高压缩效率。然而,现有的预分析过程的耗时占整个编码耗时的比例很高,成为实时编码发展的瓶颈。
如图3所示,为本申请实施例提供的一种直播视频信息处理的应用场景示意图,以电商场景为例,电商直播平台中,直播用户可以通过直播终端221拍摄相关场景以得到直播视频,假设本申请实施例提供的视频信息处理方法部署在终端上,可以通过本申请实施例提供的视频信息处理方法对该直播视频进行编码以得到直播视频流,再将该直播视频流发送给电商直播平台的服务器210,直播服务器210可以将该直播视频流转发给观看终端222,观看终端222可以为一个或多个,观看终端222在接收到直播服务器210转发的直播视频流之后,可以采用对应的解码方式对该直播视频流进行解码以获得直播视频,进而便于用户观看直播。
在此过程中,相关的视频编码预分析方案为:预分析在视频帧的1/2分辨率上(半采样图像,即采样比率为2:1的降采样图像上)进行,且选择16x16块(在原始分辨率上)作为基本处理单元,映射到降采样图则是8x8块作为基本处理单元。
上述方案的缺点:降采样比率较低,基本处理单元尺寸太小,视频帧总的处理单元数太多,预分析的计算复杂度较高。
为了解决上述问题,本申请实施例提供一种视频信息处理方案,对于待处理的原始视频帧,首先按照大于2:1的采样比率进行降采样,减少降采样图像中包含的像素数量,然后基于降采样图像进行预分析,预分析输出原始视频帧的编码复杂度和各个处理单元的量化参数偏移量,进一步根据编码复杂度和带宽资源确定该原始视频帧的帧级量化参数,然后结合各个处理单元的量化参数偏移量和该原始视频帧的帧级量化参数,确定对应编码块的目标量化参数。如此采用更高采样比率的降采样后再进行预分析的预测和计算,减少降采样图像中包含的像素数量,从而降低视频帧预分析过程的复杂度,提高预分析过程的速度,进而提高视频编码速度。
如图4所示,为本申请实施例提供的一种视频信息处理系统400示意图,该系统包括:预分析模块、码率控制模块和编码器。其中:
预分析模块,用于获取待处理的原始视频帧,原始视频帧划分有多个处理单元。按照预设采样比率对原始视频帧进行降采样,得到降采样图像,其中预设采样比率大于半采样对应的采样比率。根据降采样图像,确定原始视频帧的编码复杂度和多个处理单元中各个处理单元对应的量化参数偏移量。根据编码复杂度和当前带宽资源,确定原始视频帧的帧级量化参数。
码率控制模块,连接预分析模块,用于根据量化参数偏移量和帧级量化参数,确定对应处理单元的目标量化参数。
编码器,分别连接预分析模块和码率控制模块,用于根据多个处理单元对应的目标量化参数,对原始视频帧进行编码处理,得到编码后视频帧。
于一实施例中,如图5所示,假设原始视频帧被划分为多个尺寸为32x32的处理单元,预设采样比率为4:1,当待处理的原始视频帧(假设为YUV frames)输入预分析模块后,首先对原始视频帧进行4:1的降采样,预分析模块基于32x32处理单元的4:1降采样块进行预分析过程,比如进行intra/inter预测,通过直接或间接的方式来决策编码器参数。一方面预分析模块会输出编码帧的编码复杂度(可以通过帧级别的Frame satdcost来表示)给码率控制模块,码率控制模块再根据网络带宽和buffer(缓冲器)缓冲情况计算出该原始视频帧的Frame QP(帧级QP),作为该帧的基础QP。另一方面,预分析模块输出当前原始视频帧的帧类型(Frame type)、是否插入I帧、每个处理单元的QP偏移等来直接控制编码器,FrameQP和各个处理单元的QP偏移结合一起能确定最终每个处理单元的目标QP,编码器基于目标QP对每个处理单元进行编码处理,输出编码后的比特流(Bit-stream)。本实施例中,预分析模块的intra/inter预测均在4:1降采样的图像上进行,并且基于原始32x32的处理单元(降采样后的8x8块)来计算各种编码所需的参量。
与前述相关技术中的半采样方式相比,采用了更大的降采样比率:预分析在4:1降采样图像上进行,降采样像素数目减少75%。
采用更大的处理单元尺寸:采用32x32的处理单元作为基本处理单元,相比基于16x16的处理单元,总的处理单元数要减少75%。
相比基于16x16的处理单元的2:1降采样方案,降采样后的基本处理单元保持8x8不变,但总处理单元减少75%,处理复杂度可以降低75%,处理效率提升4倍。
下面结合附图,对本申请的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
请参看图6,其为本申请一实施例的视频信息处理方法,该方法可由图1所示的电子设备1来执行,并可以应用于图2-图5中所示的视频信息处理的应用场景中,以实现对原始视频帧采用更高采样比率的降采样后再进行预分析的预测和计算,从而降低视频帧预分析过程复杂度,提高预分析过程的速度,进而提高视频编码速度。本实施例以终端220为执行端为例,该方法包括如下步骤:
步骤601:获取待处理的原始视频帧,原始视频帧划分有多个处理单元。
在本步骤中,原始视频帧可以是直播过程中直播终端221拍摄得到的直播视频,也可以是在线视频通话中通话终端拍摄的视频。原始视频帧可以是包括多个视频帧的视频帧序列,在视频处理时,可以分别对每个视频帧进行处理。处理单元是指视频帧最小的基本处理单元,可用于预分析阶段,也可以用于编码阶段,比如处理单元可以与编码阶段的编码块(CU块)尺寸相同,也可以尺寸不同。
于一实施例中,步骤601具体可以包括:响应于视频处理请求,获取待处理的原始视频帧。
在本实施例中,原始视频帧的获取可以由用户主动触发,比如可以是直播场景中用户触发直播请求后直播设备拍摄到的实时视频流,提高交互体验。
另一方面,原始视频帧也可以是用户主动上传的已存在的视频流。
步骤602:按照预设采样比率对原始视频帧进行降采样,得到降采样图像,其中预设采样比率大于半采样对应的采样比率。
在本步骤中,采样比率可以是指原始视频帧与降采样后得到的降采样图像之间的像素比例。比如以32×32的处理单元作为基本处理单元为例,映射到采样比率为4:1的降采样图像是8×8的块。本申请实施例中预设采样比率大于半采样对应的采样比率,即预设采样比率大于2:1,比如预设采样比率可以为4:1、8:1。由于相关技术中采用半采样的方式,降采样图像的像素数量较多,预分析过程复杂耗时,因此采用大于2:1的预设采样比率对原始视频帧进行降采样,可以减少降采样图像中的像素数量,进而在基于降采样图像预分析时,减少预分析的数据计算量,提高预分析的速度。
于一实施例中,预设采样比率为4:1。步骤602具体可以包括:分别对原始视频帧在宽度方向和高度方向进行4:1降采样,得到降采样图像。
在本实施例中,可以对输入的原始YUV帧在水平和垂直方向上分别进行4:1的降采样,即对原始视频帧在宽度方向和高度方向分别进行4:1降采样,得到的降采样图像中,像素数目降为了原始视频帧的1/16,像素数目极大的降低了,Inter预测和intra预测都在降采样图像的低分辨率YUV视频帧上进行,大大降低预分析过程的数据计算量,提高预分析速度。
在可选地实施例中,假设原始视频帧是原始YUV帧,预分析降采样可以是在原始YUV帧的亮度Y上面进行的,因为亮度已经包含了大部分的关键信息,于UV可以没有做处理,以节省运算资源。
于一实施例中,处理单元的尺寸可以是大于16x16,比如当预设采样比率为4:1时,处理单元尺寸可以为:宽为32像素、高为32像素。
在本实施例中,预分析可以选择32x32的处理单元(在原始分辨率上)作为基本的处理单元,映射到降采样图,则是基于8x8块来进行intra或inter预测。如此,相比于相关技术中采用16x16块作为基本处理单元,本申请实施例采用更大的块尺寸,总的处理单元数可以减少75%,大大降低视频帧预分析的数据量,提高预分析速度。
于一实施例中,预设采样比率与处理单元的尺寸还可以有如下组合:
预设采样比率4:1,64x64基本处理单元,降采样之后为16x16块。
预设采样比率8:1,64x64基本处理单元,降采样之后是8x8块。
预设采样比率8:1,128x128基本处理单元,降采样之后是16x16块。
实际场景中,预设采样比率和多个处理单元的尺寸信息可以基于原始视频帧的预设复杂度参数确定,可以根据实际需求选择合适的这方案。
步骤603:根据降采样图像,确定原始视频帧的编码复杂度和多个处理单元中各个处理单元对应的量化参数偏移量。
在本步骤中,预分析模块可以根据降采样图像预测原始视频帧的编码复杂度,编码复杂度可以表征原始视频帧的编码消耗或者编码成本。编码复杂度可以采用Framesatdcost(帧级别的损失代价)来表示。每个处理单元的QP偏移(即量化参数偏移量),用于表征对应处理单元相对于该原始视频帧的基础QP的偏移量,用于调节对应处理单元的QP参数。QP参数调节,主要是来调节图像的细节,最终达到调节画面质量的作用。QP值和比特率成反比,QP值越小画面质量越高。反之QP值越大,画面质量越低。实际场景中,一帧图像中不同处理单元的图像信息可能是不同的,因此对应的图像复杂度也是不一样的,有些处理单元可能被之后的视频帧引用,因此对图像质量要求更高,这样的处理单元的目标QP应该调小,而一些未被引用的处理单元,如果包含的图像信息也比较少,则可以调大对应的目标QP。
根据降采样图像对原始视频帧的每个处理单元进行预分析,确定每个处理单元的QP偏移(即量化参数偏移量)。用于微调每个处理单元的图像质量。
于一实施例中,步骤603中根据降采样图像,确定原始视频帧的多个处理单元中各个处理单元对应的量化参数偏移量,具体可以包括:根据降采样图像对多个处理单元进行帧间预测处理,得到多个处理单元的运动矢量。根据运动矢量,分别计算多个处理单元对应的传播代价,根据传播代价确定多个处理单元对应的量化参数偏移量。
在本实施例中,帧间预测(inter预测)是利用时间相关性,探索相邻视频帧之间的相关性,通过在时间上已经重建的视频帧对当前的视频帧进行预测,即利用当前视频帧之前的已经重建完成的其它视频帧对当前视频帧进行预测。可以利用当前处理单元周边已编码重建的其它处理单元确定参考帧,通过运动估计(motion estimation,ME),利用参考帧对当前处理单元进行预测编码,以消除视频的时间冗余信息的一种手段。
如图7所示,为本申请实施例提供的一种预分析过程示意图,原始YUV视频帧在经过4:1降采样后,得到低分辨率亮度帧,假设原始视频帧被划分的处理单元尺寸为32x32,映射到降采样图像上,基本处理单元为8x8的降采样块(即基于8x8块尺寸),通过帧间预测得到8x8降采样块的低分辨率运动矢量MV之后,再根据该MV进行传播代价计算,并根据传播代价、结合帧间代价和帧内代价进行CU-tree的计算,确定多个处理单元对应的CU-tree QP偏移。CU-tree通过预估当前处理单元在帧间预测中被未来帧所参考的信息多少,来调整当前处理单元的QP值,如果当前处理单元贡献给后续帧的信息越多,应当提高该区域的编码质量,减少QP。反之,则增大该区域的QP值。
于一实施例中,可以根据原始YUV视频帧的原始32x32像素亮度块进行方差计算,根据方差计算结果进一步进行空域自适应量化处理,得到原始32x32像素亮度块的基本QP偏移,针对每个处理单元,将对应的CU-tree QP偏移与基本QP偏移相加,可以得到对应处理单元的最终QP偏移输出,以提高处理单元的最终QP偏移的准确度。
也即是说,CU-tree的计算相对于原始视频帧的图像,是基于32x32的处理单元来进行的,QP偏移也是以32x32处理单元为基本处理单位,因此,与相关技术中2:1降采样的方案相比,总的处理单元数减少为原来的1/4,大大降低预分析过程的数据计算量,提高预分析速度。
于一实施例中,步骤603中根据降采样图像,确定原始视频帧的编码复杂度具体可以包括:根据降采样图像对多个处理单元进行帧间预测处理,得到多个处理单元的帧间编码代价。根据降采样图像对多个处理单元进行帧内预测处理,得到多个处理单元的帧内编码代价。根据帧间编码代价和帧内编码代价,确定多个处理单元适用的目标编码代价,编码复杂度包括多个处理单元的目标编码代价。
在本实施例中,如图7所示,通过帧间预测不仅可以得到8x8降采样块的运动矢量MV,还可以得到每个处理单元的帧间编码代价,帧间编码代价可以采用Inter SATD(帧间SATD)表征,可以根据帧间预测的结果,分别对每个处理单元进行帧间预测satd代价计算,得到帧间编码代价(即图7中的帧间代价)。
另一方面,可以根据降采样图像对多个处理单元进行帧内预测处理,得到多个处理单元的帧内编码代价。帧内预测是利用空间相关性,探索视频帧内部的相关性,编码过程对视频帧逐块进行,编码端也会对各个处理单元逐块进行重建。帧内预测可以直接利用视频帧中当前处理单元相邻的已编码重建块进行预测。由于视频帧序列图像在空间上存在很强的相关性,例如在一帧图像帧中包含一张相同纹理的桌面,在该视频帧被分成的多个处理单元中,有关桌面的处理单元可能显示的信息相同或者类似,对这些空间相关性程度高的处理单元。可以采用帧内预测编码技术进行编码。
如图7所示,原始YUV视频帧在经过4:1降采样后,得到低分辨率亮度帧,假设原始视频帧被划分的处理单元尺寸为32x32,映射到降采样图像上,基本处理单元为8x8的降采样块(即基于8x8块尺寸),通过对每个8x8降采样块进行帧内预测,再根据帧内预测结果,分别对每个处理单元进行帧内预测satd代价计算,采用帧内预测satd代价表征帧内编码代价(即图7中的帧内代价)。
如此,为了准确预测当前视频帧的编码复杂度,需要为当前视频帧选取最合适的编码方式,通过帧间预测和帧内预测可以从时间和空间上分别评估每个处理单元适用的目标编码代价,进而采用每个处理单元的目标编码代价来表征当前视频帧的编码复杂度,提高结果的准确性。
于一实施例中,步骤603中根据帧间编码代价和帧内编码代价,确定多个处理单元适用的目标编码代价,具体可以包括:针对当前处理单元,将帧间编码代价和帧内编码代价中最小值确定为当前处理单元的目标编码代价。
在本实施例中,为了准确预测当前视频帧的编码复杂度,需要为当前视频帧选取最合适的编码方式,通过帧间预测和帧内预测可以从时间和空间上分别对每个处理单元的编码代价进行评估,针对当前处理单元,将其对应的帧间编码代价和帧内编码代价中最小值确定为当前处理单元的目标编码代价。如此,确保当前帧视频的编码代价最小,降低当前视频帧的编码复杂度,进而提高后续的编码速度。
步骤604:根据编码复杂度和当前带宽资源,确定原始视频帧的帧级量化参数。
在本步骤中,当前带宽资源确定了原始视频帧可使用的传输码率资源,根据原始视频帧的编码复杂度可以确定原始视频帧对传世码率资源的事迹需求,实际场景中,可以通过码率控制模块,综合当前带宽资源和原始视频帧的具体编码复杂度确定原始视频帧的帧级量化参数Frame QP,作为当前原始视频帧的基本量化参数,充分利用已有的传输资源。
于一实施例中,步骤604具体可以包括:根据多个处理单元的目标编码代价和当前带宽资源,确定与原始视频帧匹配的传输码率。根据传输码率确定原始视频帧的帧级量化参数。
在本实施例中,可以基于当前视频帧中每个处理单元的目标编码代价和当前允许的带宽资源,确定当前帧的码率,进而确定帧级QP。如图7中所示,可以根据当前视频帧的每个处理单元的帧间预测satd代价计算结果和对应处理单元的帧内预测satd代价计算结果,进行整帧satd代价计算,得到当前视频帧对应的Frame satdcost(帧级编码代价),用来表征当前视频帧的编码复杂度。其中,相比相关技术中2:1降采样的方案,因为总的处理单元数减少为原来的1/4,总的Frame satdcost也会减少为原来1/4左右,对于Frame satdcost需要进行4倍的放大,以能保证结果的准确性。
根据Frame satdcost和当前带宽资源确定与原始视频帧匹配的传输码率。实际场景中,QP参数用于量化视频帧,它会引起视频图像的失真,它也直接决定着残差数据的大小,即很大程度影响最终编码后码流的大小。在确定了传输码率的情况下,当前视频帧的复杂度越大时,Frame QP(帧级量化参数)就相对越小,因此可以先确定当前视频帧的传输码率,再根据传输码率确定当前视频帧的Frame QP。
步骤605:根据量化参数偏移量和帧级量化参数,确定对应编码块的目标量化参数。
在本步骤中,编码块是指编码器对图像进行编码时所使用的编码单元,视频编码过程中可以以编码树单元(Coding Tree Unit,CTU)为单位进行编码,因此,在进行编码过程中可以将视频序列中的视频帧划分成均匀等大小的CTU,进一步地,还可以将CTU按照四叉树结构划分成更小的编码块(Coding Unit,CU),便于更好地对不同的空间特性编码方式(帧间或帧内)能够做出调整,在CU级决定是采用帧内预测编码(利用空间相关性)还是帧间预测编码(利用时间相关性)。
基于各个处理单元的QP偏移和当前视频帧的帧级QP微调对应编码块的目标QP,进而确定当前视频帧最终的量化参数,提高量化参数的准确性。
于一实施例中,步骤605具体可以包括:根据各个处理单元对应的量化参数偏移量,在帧级量化参数的基础上分别调整对应编码块的量化参数,确定对应编码块的目标量化参数。
在本实施例中,QP参数调节,主要是来调节图像的细节,最终达到调节画面质量的作用。QP值和比特率成反比,QP值越小画面质量越高。反之QP值越大,画面质量越低。实际场景中,一帧图像中不同CU块的图像信息可能是不同的,比如一帧图像中包含纹理不同的物体,对应CU块的图像复杂度也不同,有些CU块可能被之后的视频帧引用,因此对图像质量要求更高,这样的CU块可以根据前述步骤确定的对应处理单元的QP偏移,在当前视频帧的Frame QP基础上调小对应的目标QP,进而保证该CU块的图像质量。而一些未被引用的CU块,如果包含的图像信息也比较少,则根据前述步骤确定的对应处理单元的QP偏移,在当前视频帧的Frame QP基础上调大对应的目标QP,降低该CU块占用的资源,提高当前视频帧的编码效率。
本实施例中,CU块对应的处理单元可以是指该CU块所包含的一个或多个处理单元。实际场景中,编码器里面的编码块可以是四叉树可变尺寸的CU块,尺寸从64x64到8x8都可以。而本申请中在预分析阶段的处理单元大小可以是固定的,比如预分析阶段的处理单元尺寸为32x32,计算QP偏移也是以32x32为基本处理单元。因此预分析阶段的基本处理单元大小与编码阶段的基本编码单元(CU块)大小可能相同,也可能不同。以预分析阶段的处理单元尺寸为32x32为例,到了编码器中,由于编码块(CU块)的尺寸可能是不固定的,编码器对于小于等于32x32的编码块,直接使用该编码块所属的32x32的处理单元对应的QPoffset(QP偏移)来调节该编码块的QP值。对于尺寸大于32x32的较大编码块,比如一个较大编码块可能包括多个尺寸为32x32的子块,则编码器可以取该较大编码块包括的所有32x32子块的QP偏移做一个平均,将平均值作为该较大编码块的QP偏移来调节该较大编码块的QP值。
步骤606:根据原始视频帧中多个编码块对应的目标量化参数,对原始视频帧进行编码处理,得到编码后视频帧。
在本步骤中,视频编码过程中可以以编码树单元CTU为单位进行编码,因此,在进行编码过程中可以将原始视频序列中的原始视频帧划分成均匀等大小的CTU,进一步地,还可以将CTU按照四叉树结构划分成多个更小的编码块(CU块),根据步骤605中微调后的各个CU块的目标QP,对当前视频帧进行编码处理,得到编码后视频帧,将编码后视频帧在网络中进行传输。以电商直播场景为例,用户出发直播请求后,直播设备拍摄目标场景的原始视频流,经过本申请实施例的处理,得到编码后视频流,将编码后视频流传输给观看终端。如此采用更高采样比率的降采样后再进行预分析的预测和计算,从而降低视频帧预分析过程复杂度,提高预分析过程的速度,进而提高视频编码速度,进而提高直播视频的流畅度,提高用户体验。
上述视频信息处理方法,对于待处理的原始视频帧,首先按照大于2:1的采样比率进行降采样,减少降采样图像中包含的像素数量,然后基于降采样图像进行预分析,预分析输出原始视频帧的编码复杂度和各个处理单元的量化参数偏移量,进一步根据编码复杂度和带宽资源确定该原始视频帧的帧级量化参数,然后结合各个处理单元的量化参数偏移量和该原始视频帧的帧级量化参数,确定对应编码块的目标量化参数。如此采用更高采样比率的降采样后再进行预分析的预测和计算,减少降采样图像中包含的像素数量,从而降低视频帧预分析过程的复杂度,提高预分析过程的速度,进而提高视频编码速度。
以使用4:1降采样,采用32x32的处理单元作为基本处理单元为例,本申请实施例的方案,至少具备如下优点:相比于相关技术中的基于16x16块的2:1降采样方案,降采样后的基本处理单元保持8x8不变,但总处理单元减少75%,处理复杂度可以降低75%,处理效率提升4倍。
请参看图8,其为本申请一实施例的视频信息处理方法,该方法可由图1所示的电子设备1来执行,并可以应用于图2-图5中所示的视频信息处理的应用场景中,以实现对原始视频帧采用更高采样比率的降采样后再进行预分析的预测和计算,从而降低视频帧预分析过程复杂度,提高预分析过程的速度,进而提高视频编码速度。本实施例以终端220为执行端为例,与前述实施例相比,本实施例以直播场景为例,该方法包括如下步骤:
步骤801:响应于直播请求,接收待处理的直播视频帧。
在本步骤中,在直播场景中,用户可以通过直播设备触发直播请求,比如用户通过手机登录电商直播平台,并触发直播请求。响应于该直播请求,直播设备拍摄特定场景中的直播视频流。
步骤802:将直播视频帧划分为多个处理单元。
在本步骤中,在对直播视频流进行编码分析之前,首先将每个直播视频帧划分成多个处理单元,便于分块对直播视频帧进行精细化的编码分析,提高效率。处理单元换分方式可以参见前述实施例的描述。
步骤803:按照预设采样比率对直播视频帧进行降采样,得到降采样图像,其中预设采样比率大于半采样对应的采样比率。详细参见前述实施例对步骤602的相关描述。
步骤804:根据降采样图像,确定直播视频帧的编码复杂度和多个处理单元中各个处理单元对应的量化参数偏移量。详细参见前述实施例对步骤603的相关描述。
步骤805:根据编码复杂度和当前带宽资源,确定直播视频帧的帧级量化参数。详细参见前述实施例对步骤604的相关描述。
步骤806:根据量化参数偏移量和帧级量化参数,确定对应编码块的目标量化参数。详细参见前述实施例对步骤605的相关描述。
步骤807:根据直播视频帧中多个编码块对应的目标量化参数,对直播视频帧进行编码处理,得到编码后视频帧。详细参见前述实施例对步骤606的相关描述。
步骤808:将编码后视频帧传输至接收终端。
在本步骤中,在直播场景中,如果观看用户要收看该直播视频,可以将编码后视频帧传输至观看用户的接收终端,无需传输原始的直播视频流,节省传输资源。
上述方法的各个步骤,详细可以参阅前述有关实施例的相关描述,此处不再赘述。
请参看图9,其为本申请一实施例的视频信息处理装置900,该装置可应用于图1所示的电子设备1。并可以应用于图2-图5中所示的视频信息处理的应用场景中,以实现对原始视频帧采用更高采样比率的降采样后再进行预分析的预测和计算,从而降低视频帧预分析过程复杂度,提高预分析过程的速度,进而提高视频编码速度。该装置包括:获取模块901、采样模块902、第一确定模块903、第二确定模块904和第三确定模块905,各个模块的功能原理如下:
获取模块901,用于获取待处理的原始视频帧,原始视频帧划分有多个处理单元。
采样模块902,用于按照预设采样比率对原始视频帧进行降采样,得到降采样图像,其中预设采样比率大于半采样对应的采样比率。
第一确定模块903,用于根据降采样图像,确定原始视频帧的编码复杂度和多个处理单元中各个处理单元对应的量化参数偏移量。
第二确定模块904,用于根据编码复杂度和当前带宽资源,确定原始视频帧的帧级量化参数。
第三确定模块905,用于根据量化参数偏移量和帧级量化参数,确定对应编码块的目标量化参数。
于一实施例中,第一确定模块903,用于根据降采样图像对多个处理单元进行帧间预测处理,得到多个处理单元的运动矢量。根据运动矢量,分别计算多个处理单元对应的传播代价,根据传播代价确定多个处理单元对应的量化参数偏移量。
于一实施例中,第一确定模块903,用于根据降采样图像对多个处理单元进行帧间预测处理,得到多个处理单元的帧间编码代价。根据降采样图像对多个处理单元进行帧内预测处理,得到多个处理单元的帧内编码代价。根据帧间编码代价和帧内编码代价,确定多个处理单元适用的目标编码代价,编码复杂度包括多个处理单元的目标编码代价。
于一实施例中,第一确定模块903,具体用于针对当前处理单元,将帧间编码代价和帧内编码代价中最小值确定为当前处理单元的目标编码代价。
于一实施例中,第二确定模块904,用于根据多个处理单元的目标编码代价和当前带宽资源,确定与原始视频帧匹配的传输码率。根据传输码率确定原始视频帧的帧级量化参数。
于一实施例中,第三确定模块905,用于根据各个处理单元对应的量化参数偏移量,在帧级量化参数的基础上分别调整对应编码块的量化参数,确定对应编码块的目标量化参数。
于一实施例中,预设采样比率为4:1。采样模块902,用于分别对原始视频帧在宽度方向和高度方向进行4:1降采样,得到降采样图像。
于一实施例中,处理单元的宽为32像素、高为32像素。
于一实施例中,还包括:编码模块,用于在确定对应编码块的目标量化参数之后,根据原始视频帧中多个编码块对应的目标量化参数,对原始视频帧进行编码处理,得到编码后视频帧。
上述视频信息处理装置900的详细描述,请参见上述实施例中相关方法步骤的描述,其实现原理和技术效果类似,本实施例此处不再赘述。
图10为本申请示例性实施例提供的一种云设备100的结构示意图。该云设备100可以用于运行上述任一实施例所提供的方法。如图10所示,该云设备100可以包括:存储器1004和至少一个处理器1005,图10中以一个处理器为例。
存储器1004,用于存储计算机程序,并可被配置为存储其它各种数据以支持在云设备100上的操作。该存储器1004可以是对象存储(Object Storage Service,OSS)。
存储器1004可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器1005,与存储器1004耦合,用于执行存储器1004中的计算机程序,以用于实现上述任一方法实施例所提供的方案,具体功能和所能实现的技术效果此处不再赘述。
进一步地,如图10,该云设备还包括:防火墙1001、负载均衡器1002、通信组件1006、电源组件1003等其它组件。图10中仅示意性给出部分组件,并不意味着云设备只包括图10所示组件。
于一实施例中,上述图10中的通信组件1006被配置为便于通信组件1006所在设备和其他设备之间有线或无线方式的通信。通信组件1006所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G、LTE(Long Term Evolution,长期演进,简称LTE)、5G等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件1006经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件1006还包括近场通信(Near Field Communication,简称NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(Radio Frequency Identification,简称RFID)技术,红外数据协会(Infrared Data Association,简称IrDA)技术,超宽带(Ultra Wide Band,简称UWB)技术,蓝牙(bluetooth,简称BT)技术和其他技术来实现。
于一实施例中,上述图10的电源组件1003,为电源组件1003所在设备的各种组件提供电力。电源组件1003可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现前述任一实施例的方法。
本申请实施例还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现前述任一实施例的方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例方法的部分步骤。
应理解,上述处理器可以是中央处理单元(Central Processing Unit,简称CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。存储器可能包含高速RAM(Random Access Memory,随机存取存储器)存储器,也可能还包括非易失性存储NVM(Nonvolatile memory,简称NVM),例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random-Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable read only memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable read-only memory,简称PROM),只读存储器(Read-OnlyMemory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例的方法。
本申请的技术方案中,所涉及的用户数据等信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (14)
1.一种视频信息处理方法,其特征在于,所述方法包括:
获取待处理的原始视频帧,所述原始视频帧划分有多个处理单元;
按照预设采样比率对所述原始视频帧进行降采样,得到降采样图像,其中所述预设采样比率大于半采样对应的采样比率;
根据所述降采样图像,确定所述原始视频帧的编码复杂度和所述多个处理单元中各个处理单元对应的量化参数偏移量;
根据所述编码复杂度和当前带宽资源,确定所述原始视频帧的帧级量化参数;
根据所述量化参数偏移量和所述帧级量化参数,确定对应编码块的目标量化参数。
2.根据权利要求1所述的方法,其特征在于,根据所述降采样图像,确定所述原始视频帧的所述多个处理单元中各个处理单元对应的量化参数偏移量,包括:
根据所述降采样图像对所述多个处理单元进行帧间预测处理,得到所述多个处理单元的运动矢量;
根据所述运动矢量,分别计算所述多个处理单元对应的传播代价,根据所述传播代价确定所述多个处理单元对应的量化参数偏移量。
3.根据权利要求1所述的方法,其特征在于,所述根据所述降采样图像,确定所述原始视频帧的编码复杂度,包括:
根据所述降采样图像对所述多个处理单元进行帧间预测处理,得到所述多个处理单元的帧间编码代价;
根据所述降采样图像对所述多个处理单元进行帧内预测处理,得到所述多个处理单元的帧内编码代价;
根据所述帧间编码代价和所述帧内编码代价,确定所述多个处理单元适用的目标编码代价,所述编码复杂度包括所述多个处理单元的所述目标编码代价。
4.根据权利要求3所述的方法,其特征在于,所述根据所述帧间编码代价和所述帧内编码代价,确定所述多个处理单元适用的目标编码代价,包括:
针对当前处理单元,将所述帧间编码代价和所述帧内编码代价中最小值确定为所述当前处理单元的目标编码代价。
5.根据权利要求3所述的方法,其特征在于,所述根据所述编码复杂度和当前带宽资源,确定所述原始视频帧的帧级量化参数,包括:
根据所述多个处理单元的目标编码代价和当前带宽资源,确定与所述原始视频帧匹配的传输码率;
根据所述传输码率确定所述原始视频帧的帧级量化参数。
6.根据权利要求1所述的方法,其特征在于,所述根据所述量化参数偏移量和所述帧级量化参数,确定对应编码块的目标量化参数,包括:
根据各个所述处理单元对应的所述量化参数偏移量,在所述帧级量化参数的基础上分别调整对应编码块的量化参数,确定对应编码块的目标量化参数。
7.根据权利要求1所述的方法,其特征在于,所述预设采样比率为4:1;所述按照预设采样比率对所述原始视频帧进行降采样,得到降采样图像,包括:
分别对所述原始视频帧在宽度方向和高度方向进行4:1降采样,得到所述降采样图像。
8.根据权利要求7所述的方法,其特征在于,所述处理单元的宽为32像素、高为32像素。
9.根据权利要求1所述的方法,其特征在于,在所述确定对应编码块的目标量化参数之后,还包括:
根据所述原始视频帧中多个编码块对应的所述目标量化参数,对所述原始视频帧进行编码处理,得到编码后视频帧。
10.一种视频信息处理方法,其特征在于,所述方法包括:
响应于直播请求,接收待处理的直播视频帧;
将所述直播视频帧划分为多个处理单元;
按照预设采样比率对所述直播视频帧进行降采样,得到降采样图像,其中所述预设采样比率大于半采样对应的采样比率;
根据所述降采样图像,确定所述直播视频帧的编码复杂度和所述多个处理单元中各个处理单元对应的量化参数偏移量;
根据所述编码复杂度和当前带宽资源,确定所述直播视频帧的帧级量化参数;
根据所述量化参数偏移量和所述帧级量化参数,确定对应编码块的目标量化参数;
根据所述直播视频帧中多个编码块对应的所述目标量化参数,对所述直播视频帧进行编码处理,得到编码后视频帧;
将编码后视频帧传输至接收终端。
11.一种视频信息处理系统,其特征在于,包括:预分析模块、码率控制模块和编码器;其中:
所述预分析模块,用于获取待处理的原始视频帧,所述原始视频帧划分有多个处理单元;按照预设采样比率对所述原始视频帧进行降采样,得到降采样图像,其中所述预设采样比率大于半采样对应的采样比率;根据所述降采样图像,确定所述原始视频帧的编码复杂度和所述多个处理单元中各个处理单元对应的量化参数偏移量;根据所述编码复杂度和当前带宽资源,确定所述原始视频帧的帧级量化参数;
所述码率控制模块,连接所述预分析模块,用于根据所述量化参数偏移量和所述帧级量化参数,确定对应编码块的目标量化参数;
所述编码器,分别连接所述预分析模块和所述码率控制模块,用于根据所述原始视频帧中多个编码块对应的所述目标量化参数,对所述原始视频帧进行编码处理,得到编码后视频帧。
12.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述电子设备执行权利要求1-10任一项所述的方法。
13.一种云设备,其特征在于,包括:
至少一个处理器;以及与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述云设备执行权利要求1-10任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311467208.XA CN117478881A (zh) | 2023-11-06 | 2023-11-06 | 视频信息处理方法、系统、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311467208.XA CN117478881A (zh) | 2023-11-06 | 2023-11-06 | 视频信息处理方法、系统、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117478881A true CN117478881A (zh) | 2024-01-30 |
Family
ID=89628972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311467208.XA Pending CN117478881A (zh) | 2023-11-06 | 2023-11-06 | 视频信息处理方法、系统、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117478881A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105898306A (zh) * | 2015-12-11 | 2016-08-24 | 乐视云计算有限公司 | 用于运动视频的码率控制方法及装置 |
CN108924553A (zh) * | 2018-06-20 | 2018-11-30 | 腾讯科技(深圳)有限公司 | 视频编码、解码方法、装置、计算机设备和存储介质 |
CN110324622A (zh) * | 2018-03-28 | 2019-10-11 | 腾讯科技(深圳)有限公司 | 一种视频编码码率控制方法、装置、设备及存储介质 |
CN112839224A (zh) * | 2019-11-22 | 2021-05-25 | 腾讯科技(深圳)有限公司 | 一种预测模式选择方法、装置、视频编码设备及存储介质 |
CN114302139A (zh) * | 2021-12-10 | 2022-04-08 | 阿里巴巴(中国)有限公司 | 视频编码方法、视频解码方法及装置 |
CN114845106A (zh) * | 2021-02-01 | 2022-08-02 | 北京大学深圳研究生院 | 视频编码方法、装置和存储介质及电子设备 |
CN116918331A (zh) * | 2021-06-04 | 2023-10-20 | 深圳市大疆创新科技有限公司 | 编码方法和编码装置 |
-
2023
- 2023-11-06 CN CN202311467208.XA patent/CN117478881A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105898306A (zh) * | 2015-12-11 | 2016-08-24 | 乐视云计算有限公司 | 用于运动视频的码率控制方法及装置 |
CN110324622A (zh) * | 2018-03-28 | 2019-10-11 | 腾讯科技(深圳)有限公司 | 一种视频编码码率控制方法、装置、设备及存储介质 |
CN108924553A (zh) * | 2018-06-20 | 2018-11-30 | 腾讯科技(深圳)有限公司 | 视频编码、解码方法、装置、计算机设备和存储介质 |
CN112839224A (zh) * | 2019-11-22 | 2021-05-25 | 腾讯科技(深圳)有限公司 | 一种预测模式选择方法、装置、视频编码设备及存储介质 |
CN114845106A (zh) * | 2021-02-01 | 2022-08-02 | 北京大学深圳研究生院 | 视频编码方法、装置和存储介质及电子设备 |
CN116918331A (zh) * | 2021-06-04 | 2023-10-20 | 深圳市大疆创新科技有限公司 | 编码方法和编码装置 |
CN114302139A (zh) * | 2021-12-10 | 2022-04-08 | 阿里巴巴(中国)有限公司 | 视频编码方法、视频解码方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11451787B2 (en) | Method and apparatus for video encoding and decoding | |
US11558639B2 (en) | Selective resolution video encoding method, computer device, and readable storage medium | |
US11412229B2 (en) | Method and apparatus for video encoding and decoding | |
WO2021244341A1 (zh) | 图像编码方法及装置、电子设备及计算机可读存储介质 | |
CN108769681B (zh) | 视频编码、解码方法、装置、计算机设备和存储介质 | |
US11172220B2 (en) | Video encoding method, and storage medium thereof | |
US10873763B2 (en) | Video compression techniques for high dynamic range data | |
WO2014139396A1 (en) | Video coding method using at least evaluated visual quality and related video coding apparatus | |
KR20080016660A (ko) | 압축 도메인의 dct-기반 비디오 시퀀스들에 대한 이미지프로세싱 | |
WO2021109978A1 (zh) | 视频编码的方法、视频解码的方法及相应装置 | |
CN108848377B (zh) | 视频编码、解码方法、装置、计算机设备和存储介质 | |
CN113785573A (zh) | 编码器、解码器和使用自适应环路滤波器的对应方法 | |
WO2021238540A1 (zh) | 图像编码方法、图像解码方法及相关装置 | |
CN111385572B (zh) | 预测模式确定方法、装置及编码设备和解码设备 | |
WO2021185257A1 (zh) | 图像编码方法、图像解码方法及相关装置 | |
US11812050B2 (en) | Motion vector obtaining method and apparatus | |
CN111327950B (zh) | 一种视频转码方法及装置 | |
WO2024078066A1 (zh) | 视频解码方法、视频编码方法、装置、存储介质及设备 | |
CN114514748A (zh) | 图像编码方法、图像解码方法及相关装置 | |
CN117478881A (zh) | 视频信息处理方法、系统、设备和存储介质 | |
CN112584143A (zh) | 一种视频编码方法、装置、系统及计算机可读存储介质 | |
US10531096B2 (en) | Decoder, method and system for decoding multimedia streams | |
CN117579820B (zh) | 编码参数确定方法、装置、电子设备以及存储介质 | |
CN114051140B (zh) | 视频编码方法、装置、计算机设备及存储介质 | |
WO2024082971A1 (zh) | 一种视频处理方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |