CN117956145A - 视频编码方法、装置、电子设备及存储介质 - Google Patents
视频编码方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117956145A CN117956145A CN202410137930.5A CN202410137930A CN117956145A CN 117956145 A CN117956145 A CN 117956145A CN 202410137930 A CN202410137930 A CN 202410137930A CN 117956145 A CN117956145 A CN 117956145A
- Authority
- CN
- China
- Prior art keywords
- decoding complexity
- coding mode
- coding
- encoding
- pixel block
- 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
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000012545 processing Methods 0.000 claims abstract description 42
- 230000006870 function Effects 0.000 claims description 46
- 230000008859 change Effects 0.000 claims description 38
- 230000000875 corresponding effect Effects 0.000 description 231
- 230000008569 process Effects 0.000 description 20
- 238000004891 communication Methods 0.000 description 10
- 230000009466 transformation Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 238000013139 quantization Methods 0.000 description 6
- 238000009795 derivation Methods 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for 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/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/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/18—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/182—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- 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/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/1883—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公开关于一种视频编码方法、装置、电子设备及存储介质。方法包括:获取待编码视频中视频帧包含的多个像素块;针对各像素块,获取像素块的多种候选编码模式组合,各候选编码模式组合中包含至少两种不同维度的编码模式,且各编码模式分别对应有解码复杂度权重;根据各候选编码模式组合中包含的各编码模式的解码复杂度权重,得到像素块基于各候选编码模式组合编码的解码复杂度,以及获取像素块基于各候选编码模式组合编码所对应的编码损失,并利用解码复杂度以及编码损失从候选编码模式组合中获取性能最优的目标编码模式组合;根据目标编码模式组合中包含的编码模式,对像素块进行编码处理。采用本公开可以降低在解码端中进行视频解码的复杂度。
Description
技术领域
本公开涉及视频处理技术领域,尤其涉及一种视频编码方法、装置、电子设备及存储介质。
背景技术
随着视频处理技术的发展,出现了一种用户将视频上传服务器,再由服务器将上传的视频分享给其他用户的技术,而在将视频上传服务器过程中,通常需要将上传的视频编码成为更高效的视频格式,再发送至用户端进行解码播放。
而在线上视频解码播放过程中,由于移动端性能上限较低,通常在视频解码播放时会出现解码丢帧、卡顿、发热等情况,而此时降低解码复杂度可以有效解决上述问题,目前降低解码复杂度的方式通常是通过对解码器进行优化的方式,例如对解码器进行汇编优化、内存优化、架构优化等方式提高解码器的性能。
然而,目前通过优化解码器性能来降低移动端解码复杂度的方式,由于对解码器的优化空间是有限的,难以进一步提高解码器性能。因此目前在解码端中进行视频解码的复杂度较高。
发明内容
本公开提供一种视频编码方法、装置、服务器及存储介质,以至少解决相关技术中在解码端中进行视频解码的复杂度较高的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种视频编码方法,包括:
获取待编码视频中视频帧包含的多个像素块;
针对各像素块,获取所述像素块对应的多种候选编码模式组合,各所述候选编码模式组合中包含至少两种不同维度的编码模式,且各编码模式分别对应有解码复杂度权重;
根据各所述候选编码模式组合中包含的各编码模式对应的解码复杂度权重,得到所述像素块基于各所述候选编码模式组合编码所对应的解码复杂度,以及获取所述像素块基于各所述候选编码模式组合编码所对应的编码损失,并利用所述解码复杂度以及所述编码损失从所述候选编码模式组合中获取性能最优的目标编码模式组合;
根据所述目标编码模式组合中包含的编码模式,对所述像素块进行编码处理。
在一示例性实施例中,所述根据各所述候选编码模式组合中包含的各编码模式预先设定的解码复杂度权重之前,还包括:将所述多种候选编码模式组合中的任意一个作为当前编码模式组合,获取所述当前编码模式组合中包含的各编码模式;从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式分别对应的解码复杂度权重;所述权重列表中存储有全量编码模式与解码复杂度权重的对应关系。
在一示例性实施例中,所述权重列表中存储有全量编码模式对应于不同像素块面积以及不同颜色空间类别的解码复杂度权重;所述从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式分别对应的解码复杂度权重,包括:获取所述像素块的像素块面积,以及所述像素块的颜色空间类别;从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式,与所述像素块面积以及所述颜色空间类别对应的解码复杂度权重。
在一示例性实施例中,从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式,与所述像素块面积以及所述颜色空间类别对应的解码复杂度权重之前,还包括:获取样本像素块,以及所述样本像素块对应的样本像素块面积与样本颜色空间类别;利用目标编码模式对所述样本像素块进行编码处理,并获取对编码处理后的所述样本编码块进行解码处理的解码时间;所述目标编码模式为待获取解码复杂度权重的编码模式;根据所述解码时间获取与所述目标编码模式以及所述样本像素块面积与样本颜色空间类别对应的解码复杂度权重,并基于该解码复杂度权重与所述目标编码模式以及所述样本像素块面积与样本颜色空间类别的对应关系,构建所述权重列表。
在一示例性实施例中,所述利用所述解码复杂度以及所述编码损失从所述候选编码模式组合中获取性能最优的目标编码模式组合,包括:获取待比对编码模式组合对应的第一编码损失以及第一解码复杂度;所述待比对编码模式组合为当前比对轮次之前、性能最优的候选编码模式组合;根据所述第一编码损失、第一解码复杂度,以及所述当前编码模式组合对应的第二编码损失以及第二解码复杂度 ,获取预先构造的率失真比较函数的比较结果;所述率失真比较函数用于比较所述待比对编码模式组合与所述当前编码模式组合的性能;在所述比较结果表征所述当前编码模式组合的性能优于所述待比对编码模式组合的情况下,将所述当前编码模式组合作为新的待比对编码模式组合;将最后一个比对轮次的所述待比对编码模式组合作为所述目标编码模式组合。
在一示例性实施例中,所述根据所述第一编码损失、第一解码复杂度,以及所述当前编码模式组合对应的第二编码损失以及第二解码复杂度,获取预先构造的率失真比较函数的比较结果,包括:获取所述像素块对应的视频帧的视频帧层级,以及获取与所述视频帧层级对应的编解码复杂度调节参数;将所述第一编码损失、第一解码复杂度、第二编码损失、第二解码复杂度以及所述编解码复杂度调节参数,带入所述率失真比较函数,得到率失真比较值;根据所述率失真比较值以及针对所述率失真比较函数预先设置的率失真比较阈值之间的大小关系,得到所述比较结果。
在一示例性实施例中,所述获取与所述视频帧层级对应的编解码复杂度调节参数,包括:获取所述像素块对应的视频帧关联的已编码视频帧,以及所述已编码视频帧对应的解码复杂度;所述已编码视频帧对应的解码复杂度基于所述已编码视频帧包含的各像素块的解码复杂度确定得到;获取所述视频帧层级对应的初始编解码复杂度调节参数,利用所述已编码视频帧对应的解码复杂度调节所述初始编解码复杂度调节参数,得到所述编解码复杂度调节参数;所述调节与所述已编码视频帧对应的解码复杂度呈正相关关系。
在一示例性实施例中,所述权重列表中预先存储有与多种预测模式对应的第一解码复杂度权重、与各预测模式的多种模式内部选择对应的第二解码复杂度权重,以及与多种非预测模式对应的第三解码复杂度权重;所述获取当前编码模式组合,以及所述当前编码模式组合中包含的各编码模式,包括:获取所述当前编码模式组合对应的目标预测模式、针对所述目标预测模式的目标模式内部选择,以及所述当前编码模式组合对应的目标非预测模式;所述从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式分别对应的解码复杂度权重,包括:从所述权重列表中,获取与所述目标预测模式对应的第一解码复杂度权重,与所述目标模式内部选择对应的第二解码复杂度权重,以及与所述目标非预测模式对应的第三解码复杂度权重。
在一示例性实施例中,在所述目标预测模式为预设预测模式的情况下,所述将所述多种候选编码模式组合中的任意一个作为当前编码模式组合,获取所述当前编码模式组合中包含的各编码模式,包括:获取所述像素块对应的视频帧的视频帧层级,以及获取与所述视频帧层级相匹配的复杂度变化系数;基于所述当前编码模式组合中各编码模式分别对应的解码复杂度权重,以及所述复杂度变化系数,得到所述当前编码模式组合的解码复杂度。
在一示例性实施例中,所述获取与所述视频帧层级相匹配的复杂度变化系数,包括:获取所述像素块对应的视频帧关联的已编码视频帧,以及所述已编码视频帧对应的解码复杂度;所述已编码视频帧对应的解码复杂度基于所述已编码视频帧包含的各像素块的解码复杂度确定得到;获取所述视频帧层级对应的初始复杂度变化系数,利用所述已编码视频帧对应的解码复杂度调节所述初始复杂度变化系数,得到所述复杂度变化系数;所述调节与所述已编码视频帧对应的解码复杂度呈正相关关系。
根据本公开实施例的第二方面,提供一种视频编码装置,包括:
编码像素块获取单元,被配置为执行获取待编码视频中视频帧包含的多个像素块;
候选组合获取单元,被配置为执行针对各像素块,获取所述像素块对应的多种候选编码模式组合 ,各所述候选编码模式组合中包含至少两种不同维度的编码模式 ,且各编码模式分别对应有解码复杂度权重;
目标组合获取单元,被配置为执行根据各所述候选编码模式组合中包含的各编码模式对应的解码复杂度权重,得到所述像素块基于各所述候选编码模式组合编码所对应的解码复杂度,以及获取所述像素块基于各所述候选编码模式组合编码所对应的编码损失,并利用所述解码复杂度以及所述编码损失从所述候选编码模式组合中获取性能最优的目标编码模式组合;
像素块编码单元,被配置为执行根据所述目标编码模式组合中包含的编码模式,对所述像素块进行编码处理。
在一示例性实施例中,目标组合获取单元,进一步被配置为执行将所述多种候选编码模式组合中的任意一个作为当前编码模式组合,获取所述当前编码模式组合中包含的各编码模式;从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式分别对应的解码复杂度权重;所述权重列表中存储有全量编码模式与解码复杂度权重的对应关系。
在一示例性实施例中,所述权重列表中存储有全量编码模式对应于不同像素块面积以及不同颜色空间类别的解码复杂度权重;目标组合获取单元,进一步被配置为执行获取所述像素块的像素块面积,以及所述像素块的颜色空间类别;从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式,与所述像素块面积以及所述颜色空间类别对应的解码复杂度权重。
在一示例性实施例中,视频编码装置,还包括:权重列表构建单元,被配置为执行获取样本像素块,以及所述样本像素块对应的样本像素块面积与样本颜色空间类别;利用目标编码模式对所述样本像素块进行编码处理,并获取对编码处理后的所述样本编码块进行解码处理的解码时间;所述目标编码模式为待获取解码复杂度权重的编码模式;根据所述解码时间获取与所述目标编码模式以及所述样本像素块面积与样本颜色空间类别对应的解码复杂度权重,并基于该解码复杂度权重与所述目标编码模式以及所述样本像素块面积与样本颜色空间类别的对应关系,构建所述权重列表。
在一示例性实施例中,目标组合获取单元,进一步被配置为执行获取待比对编码模式组合对应的第一编码损失以及第一解码复杂度;所述待比对编码模式组合为当前比对轮次之前、性能最优的候选编码模式组合;根据所述第一编码损失、第一解码复杂度,以及所述当前编码模式组合对应的第二编码损失 以及第二解码复杂度 ,获取预先构造的率失真比较函数的比较结果;所述率失真比较函数用于比较所述待比对编码模式组合与所述当前编码模式组合的性能;在所述比较结果表征所述当前编码模式组合的性能优于所述待比对编码模式组合的情况下,将所述当前编码模式组合作为新的待比对编码模式组合;将最后一个比对轮次的所述待比对编码模式组合作为所述目标编码模式组合。
在一示例性实施例中,目标组合获取单元,进一步被配置为执行获取所述像素块对应的视频帧的视频帧层级,以及获取与所述视频帧层级对应的编解码复杂度调节参数;将所述第一编码损失、第一解码复杂度、第二编码损失、第二解码复杂度以及所述编解码复杂度调节参数,带入所述率失真比较函数,得到率失真比较值;根据所述率失真比较值以及针对所述率失真比较函数预先设置的率失真比较阈值之间的大小关系,得到所述比较结果。
在一示例性实施例中,目标组合获取单元,进一步被配置为执行获取所述像素块对应的视频帧关联的已编码视频帧,以及所述已编码视频帧对应的解码复杂度;所述已编码视频帧对应的解码复杂度基于所述已编码视频帧包含的各像素块的解码复杂度确定得到;获取所述视频帧层级对应的初始编解码复杂度调节参数,利用所述已编码视频帧对应的解码复杂度调节所述初始编解码复杂度调节参数,得到所述编解码复杂度调节参数;所述调节与所述已编码视频帧对应的解码复杂度呈正相关关系。
在一示例性实施例中,所述权重列表中预先存储有与多种预测模式对应的第一解码复杂度权重、与各预测模式的多种模式内部选择对应的第二解码复杂度权重,以及与多种非预测模式对应的第三解码复杂度权重;目标组合获取单元,进一步被配置为执行获取所述当前编码模式组合对应的目标预测模式、针对所述目标预测模式的目标模式内部选择,以及所述当前编码模式组合对应的目标非预测模式;从所述权重列表中,获取与所述目标预测模式对应的第一解码复杂度权重,与所述目标模式内部选择对应的第二解码复杂度权重,以及与所述目标非预测模式对应的第三解码复杂度权重。
在一示例性实施例中,在所述目标预测模式为预设预测模式的情况下,目标组合获取单元,进一步被配置为执行获取所述像素块对应的视频帧的视频帧层级,以及获取与所述视频帧层级相匹配的复杂度变化系数;基于所述当前编码模式组合中各编码模式分别对应的解码复杂度权重,以及所述复杂度变化系数,得到所述当前编码模式组合的解码复杂度。
在一示例性实施例中,目标组合获取单元,进一步被配置为执行获取所述像素块对应的视频帧关联的已编码视频帧,以及所述已编码视频帧对应的解码复杂度;所述已编码视频帧对应的解码复杂度基于所述已编码视频帧包含的各像素块的解码复杂度确定得到;获取所述视频帧层级对应的初始复杂度变化系数,利用所述已编码视频帧对应的解码复杂度调节所述初始复杂度变化系数,得到所述复杂度变化系数;所述调节与所述已编码视频帧对应的解码复杂度呈正相关关系。
根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如第一方面中任一项实施例所述的视频编码方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如第一方面中任一项实施例所述的视频编码方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品中包括指令,所述指令被电子设备的处理器执行时,使得所述电子设备能够执行如第一方面中任一项实施例所述的视频编码方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
通过获取待编码视频中视频帧包含的多个像素块;针对各像素块,获取像素块对应的多种候选编码模式组合,各候选编码模式组合中包含至少两种不同维度的编码模式,且各编码模式分别对应有解码复杂度权重;根据各候选编码模式组合中包含的各编码模式对应的解码复杂度权重,得到像素块基于各候选编码模式组合编码所对应的解码复杂度,以及获取像素块基于各候选编码模式组合编码所对应的编码损失,并利用解码复杂度以及编码损失从候选编码模式组合中获取性能最优的目标编码模式组合;根据目标编码模式组合中包含的编码模式,对像素块进行编码处理。本公开通过获取待编码视频中视频帧包含的各个像素块的多种由至少两种不同维度的编码模式组成的候选编码模式组合,从而根据候选编码模式组合中包含的每一个编码模式预先设定的解码复杂度权重,来得到候选编码模式组合的解码复杂度,从而利用候选编码模式组合对应的编码损失以及解码复杂度,来筛选出性能最优的目标编码模式组合,并利用目标编码模式组合中包含的编码模式进行编码处理,实现了在编码模式组合选择中考虑解码复杂度的影响,并且不同维度的编码模式可以分别设置有解码复杂度权重,从而可以准确选择有利于降低解码端解码复杂度的编码模式进行视频编码,进一步降低在解码端中进行视频解码的复杂度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种视频编码方法的流程图。
图2是根据一示例性实施例示出的获取预先设定的解码复杂度权重的流程图。
图3是根据一示例性实施例示出的构建权重列表的流程图。
图4是根据一示例性实施例示出的获取性能最优的目标编码模式组合的流程图。
图5是根据一示例性实施例示出的获取率失真比较函数的比较结果的流程图。
图6是根据一示例性实施例示出的模式组合选择流程图。
图7是根据一示例性实施例示出的计算某个模式组合的解码复杂度流程图。
图8是根据一示例性实施例示出的一种视频编码装置的框图。
图9是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
还需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
图1是根据一示例性实施例示出的一种视频编码方法的流程图,如图1所示,视频编码方法用于终端中,包括以下步骤。
在步骤S101中,获取待编码视频中视频帧包含的多个像素块。
其中,待编码视频指的是需要执行视频编码操作的视频,该视频可以由多个视频帧所组成,而像素块则是组成视频帧的像素图像块,该像素块可以是用于执行编码处理的单位。具体来说,终端在得到需要进行视频编码处理的待编码视频后,可以先得到组成该待编码视频帧的视频帧的像素块,以确定各个像素块的编码模式。
在步骤S102中,针对各像素块,获取像素块对应的多种候选编码模式组合,各候选编码模式组合中包含至少两种不同维度的编码模式,且各编码模式分别对应有解码复杂度权重。
候选编码模式组合则是可以选择的编码模式组合,该候选编码模式组合可以由至少两种不同维度的编码模式组成,例如不同维度的编码模式可以包括:针对预测过程维度的编码模式,例如帧内预测模式和帧间预测模式,其中帧内预测模式又包含有PLANER、DC、MIP、CCLM、角度预测等多种模式,帧间预测中则包含有普通单向双向插值、AFFINE、GEO等多种预测模式,也可以包含针对上述预测模式中的内部不同选择这一维度的编码模式,例如预测模式中预测向量的不同选择所对应的编码模式等等,还可以包含有非预测过程的模式选择,例如MV导出、反变换、反量化等等过程的编码模式选择等等。而解码复杂度权重则指的是组成每一个候选编码模式组合中各个编码模式的解码复杂度,例如,某个候选编码模式组合可以由编码模式A、编码模式B以及编码模式C所组成,其中编码模式A预先设置有对应的解码复杂度权重A、编码模式B预先设置有对应的解码复杂度权重B,编码模式C预先设置有对应的解码复杂度权重C。
具体来说,终端在得到多个像素块,则可以分别对每一个像素块都执行以下操作,先确定出该像素块由多种不同编码模式组成的多种候选编码模式组合。
在步骤S103中,根据各候选编码模式组合中包含的各编码模式对应的解码复杂度权重,得到像素块基于各候选编码模式组合编码所对应的解码复杂度,以及获取像素块基于各候选编码模式组合编码所对应的编码损失,并利用解码复杂度以及编码损失从候选编码模式组合中获取性能最优的目标编码模式组合。
而解码复杂度则是整个候选编码模式组合所对应的解码复杂度。例如,某个候选编码模式组合可以由编码模式A、编码模式B以及编码模式C所组成,其中编码模式A对应解码复杂度权重A、编码模式B对应解码复杂度权重B,编码模式C对应解码复杂度权重C,那么该候选编码模式组合所对应的解码复杂度则可以由上述解码复杂度权重A、解码复杂度权重B以及解码复杂度权重C得到。
而编码损失则指的是执行候选编码模式组合带来的视频编码损失,而目标编码模式组合则指的是候选编码模式组合中性能最优的编码模式组合,而评价编码模式组合的性能则可以通过编码损失以及解码复杂度来实现,因此终端在确定出该像素块与每一个候选编码模式组合对应的编码损失以及解码复杂度后,终端则可以利用编码损失以及解码复杂度从多个候选编码模式组合中,找出性能最优的目标编码模式组合。
在步骤S104中,根据目标编码模式组合中包含的编码模式,对像素块进行编码处理。
最后,通过上述方式确定出每一个像素块性能最优的目标编码模式组合后,还可以利用目标编码方式组合中包含的编码模式,对每一个像素块进行编码处理,由于编码模式组合性能除了考虑有编码损失,同时还考虑了解码复杂度的影响,因此筛选出的目标编码模式组合可以平衡编码带来的损失以及解码端的复杂度影响,可以有效降低解码端的解码复杂度。
上述视频编码方法中,通过获取待编码视频中视频帧包含的多个像素块;针对各像素块,获取像素块对应的多种候选编码模式组合,各候选编码模式组合中包含至少两种不同维度的编码模式,且各编码模式分别对应有解码复杂度权重;根据各候选编码模式组合中包含的各编码模式对应的解码复杂度权重,得到像素块基于各候选编码模式组合编码所对应的解码复杂度,以及获取像素块基于各候选编码模式组合编码所对应的编码损失,并利用解码复杂度以及编码损失从候选编码模式组合中获取性能最优的目标编码模式组合;根据目标编码模式组合中包含的编码模式,对像素块进行编码处理。本公开通过获取待编码视频中视频帧包含的各个像素块的多种由至少两种不同维度的编码模式组成的候选编码模式组合,从而根据候选编码模式组合中包含的每一个编码模式预先设定的解码复杂度权重,来得到候选编码模式组合的解码复杂度,从而利用候选编码模式组合对应的编码损失以及解码复杂度,来筛选出性能最优的目标编码模式组合,并利用目标编码模式组合中包含的编码模式进行编码处理,实现了在编码模式组合选择中考虑解码复杂度的影响,并且不同维度的编码模式可以分别设置有解码复杂度权重,从而可以准确选择有利于降低解码端解码复杂度的编码模式进行视频编码,进一步降低在解码端中进行视频解码的复杂度。
在一示例性实施例中,如图2所示,在步骤S103之前,还可以包括:
在步骤S201中,将多种候选编码模式组合中的任意一个作为当前编码模式组合,获取当前编码模式组合中包含的各编码模式。
当前编码模式组合则指的是多种候选编码模式组合中的任意一个,终端可以将多种候选编码模式组合中的任意一个,并且还可以进一步的得到上述当前编码模式组合中包含的各编码模式。
在步骤S202中,从预先构建的权重列表中,获取当前编码模式组合中各编码模式分别对应的解码复杂度权重;权重列表中存储有全量编码模式与解码复杂度权重的对应关系。
权重列表则是用于存储各种不同编码模式,即全量编码模式与各个解码复杂度权重之间对应关系的表格,例如可以记录有帧内和帧间预测多种模式不同的解码复杂度权重,也可以记录有亮度,色度合并、色度分开三种情况下不同的解码复杂度权重,还可以记录有双向帧间预测中,两个预测向量在水平、竖直是否需要插值等16个组合分别对应的解码复杂度权重,以及记录有MTS选中的一次变换和二次变换类型不同等 9个MTS组合分别对应的解码复杂度权重等等。终端在得到当前编码模式组合中各编码模式后,则可以通过查询预先构建的权重列表,从该权重列表中得到各个编码模式相应的解码复杂度权重。
本实施例中,可以通过预先构建存储有全量编码模式与解码复杂度权重的对应关系的权重列表,因此可以通过该权重列表来得到当前编码模式组合中包含的各编码模式的解码复杂度权重,而不需要实时计算解码复杂度权重,从而可以提高解码复杂度权重的获取效率。
进一步地,权权重列表中存储有全量编码模式对应于不同像素块面积以及不同颜色空间类别的解码复杂度权重;步骤S202可以进一步包括:获取所述像素块的像素块面积,以及所述像素块的颜色空间类别;从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式,与所述像素块面积以及所述颜色空间类别对应的解码复杂度权重。
由于解码端处理不同大小的块的时候,对于每个像素的平均处理时间是不一样的,一般块越大,则每个像素的处理时间会更小,如果没有考虑当前处理的块的面积大小,会导致实际计算出的权重不准确,在对一个预测块进行预测、变换、量化等解码端的计算过程,如果选择的模式一样的情况下,如果块大小越大可以并行处理的像素就越多,平均每个像素处理完成所需的解码复杂度就越小,给每个情况的不同像素大小的块则需要赋予不同的权重。
同时,不同像素块所对应的颜色空间类别也有所不同,而不同颜色空间类别选择相同编码模式的情况下,所对应的解码复杂度权重也有所区别,例如颜色空间类别可以包括亮度与色度,像素块也可以划分为亮度块与色度块,并而同样大小的亮度块与色度块即使采用相同的编码模式组合进行编码处理,其对应的解码复杂度也有所区别,因此本实施例中权重列表中存储有全量编码模式对应于不同像素块面积以及不同颜色空间类别的解码复杂度权重。
例如,同样是编码模式A,对应于不同大小与不同颜色空间类别的像素块,例如像素块1与像素块2属于相同颜色空间类别但大小不同,同时像素块1与像素块5属于大小相同但颜色空间类别不同,这种情况下像素块1、像素块2与像素块3的解码复杂度权重都有所区别,可以分别是解码复杂度权重A1、解码复杂度权重A2以及解码复杂度权重A3。
因此,终端可以先确定出像素块的像素块面积以及颜色空间类别,之后利用像素块面积、颜色空间类别以及当前编码模式组合中包含的各个编码模式,来查询权重列表,从而得到相应的解码复杂度权重,例如该像素块的大小与像素块1相同,且该像素块与像素块1属于相同颜色空间类别的像素块,如果当前编码模式组合中包含有编码模式1,那么对应于编码模式1的解码复杂度权重则可以是解码复杂度权重A1。
本实施例中,还可以在权重列表中存储有全量编码模式对应于不同像素块面积与不同颜色空间类别的解码复杂度权重,从而考虑了像素块面积与颜色空间类别对解码复杂度的影响,进一步提高解码复杂度权重获取的准确性。
另外,如图3所示,从预先构建的权重列表中,获取当前编码模式组合中各编码模式,与像素块面积对应的解码复杂度权重之前,还可以包括:
在步骤S301中,获取样本像素块,以及样本像素块对应的样本像素块面积与样本颜色空间类别。
样本像素块指的是用于构建权重列表所使用的像素块,样本像素块面积则指的是该样本像素块对应的像素块面积,而样本颜色空间类别则是该样本像素块的颜色空间类别。本实施例中,在进行权重列表构建时,可以先得到用于构建权重列表的样本像素块,以及该样本像素块的面积与颜色空间类别。
在步骤S302中,利用目标编码模式对样本像素块进行编码处理,并获取对编码处理后的样本编码块进行解码处理的解码时间;目标编码模式为待获取解码复杂度权重的编码模式。
目标编码模式则指的是需要确定出解码复杂度权重的编码模式,本实施例中,终端可以确定出一个需要得到解码复杂度权重的编码模式作为目标编码模式,之后则可以通过目标编码模式对上述样本像素块进行编码处理,并将编码后的样本编码块输入至解码端,之后则可以统计解码端对样本编码块进行解码处理的解码时间。
在步骤S303中,根据解码时间获取与目标编码模式以及样本像素块面积与样本颜色空间类别对应的解码复杂度权重,并基于该解码复杂度权重与目标编码模式以及样本像素块面积与样本颜色空间类别的对应关系,构建权重列表。
而在得到解码时间后,则可以根据该解码时间来得到与目标编码模式以及样本像素块面积与样本颜色空间类别相对应的解码复杂度权重,从而建立该解码复杂度权重与上述目标编码模式和样本像素块面积与样本颜色空间类别的对应关系,并利用该对应关系来构建权重列表。
例如,某个样本像素块的像素块面积为面积1,颜色空间类别为类别1,并且目标编码模式为编码模式A,终端则可以利用编码模式A对该样本像素块进行编码处理,编码完成后,则可以将该编码后的样本像素块输入解码端,来统计对编码后的样本像素块的解码时间,从而根据解码时间来得到相应的解码复杂度权重,并将其作为对应于编码模式A与面积1以及类别1的解码复杂度权重A1,写入权重列表,通过该方式即可构建全量编码模式与各个样本像素块面积与颜色空间类别对应的解码复杂度权重,来生成权重列表。
本实施例中,权重列表的构建可以是通过统计各种像素块面积与颜色空间类别的像素块按照各种编码模式进行编码处理后,进行解码的解码时间构建得到,通过该方式可以进一步提高权重列表的构建准确性。
在一示例性实施例中,如图4所示,步骤S103可以进一步包括:
在步骤S401中,获取待比对编码模式组合对应的第一编码损失以及第一解码复杂度;所述待比对编码模式组合为当前比对轮次之前、性能最优的候选编码模式组合。
当前比对轮次指的是当前编码模式组合的比对轮次,本实施例中,筛选出性能最优的候选编码模式组合的方式是通过多轮性能比对来实现的,通过将新的编码模式组合,即当前编码模式组合,与已经完成比对的性能最优的候选编码模式组合,进行性能比对来实现。因此终端可以先从候选编码模式组合中,先得到已经完成比对并且性能最优的候选编码模式组合,作为与当前编码模式组合进行比对的待比对编码模式组合,并且得到该待比对编码模式组合对应的编码损失以及解码复杂度,作为第一编码损失以及第一解码复杂度。
在步骤S402中,根据第一编码损失、第一解码复杂度,以及当前编码模式组合对应的第二编码损失以及第二解码复杂度,获取预先构造的率失真比较函数的比较结果;率失真比较函数用于比较待比对编码模式组合与当前编码模式组合的性能。
本实施例中,比对编码模式组合性能的方式可以是通过率失真函数来实现,该率失真韩式可以根据待比对编码模式组合的编码损失与解码复杂度,即第一编码损失与第一解码复杂度,以及当前编码模式组合的编码损失与解码复杂度,即第二编码损失与第二解码复杂度得到,通过将第一编码损失与第一解码复杂度,以及第二编码损失与第二解码复杂度代入预先构建的率失真比较函数,则可以利用率失真比较函数来得到比较结果,该比较结果可以用于表征待比对编码模式组合与当前编码模式组合的性能优劣。
在步骤S403中,在比较结果表征当前编码模式组合的性能优于待比对编码模式组合的情况下,将当前编码模式组合作为新的待比对编码模式组合;
在步骤S404中,将最后一个比对轮次的待比对编码模式组合作为目标编码模式组合。
之后,如果比较结果表征当前编码模式组合的性能优于待比对编码模式组合,那么终端则可以将当前编码模式组合作为新的待比对编码模式组合,并再次获取下一比对轮次对应的当前编码模式组合,来再次执行性能比对,直到最后一个比对轮次,终端则可以将最后一个比对轮次的待比对编码模式组合,作为目标编码模式组合。
例如,候选编码模式组合可以包括编码模式组合A、编码模式组合B、编码模式组合C以及编码模式组合D,终端可以先比对编码模式组合A的编码模式组合B性能,通过编码模式组合A与编码模式组合B对应的编码损失与解码复杂度,代入预先构造的率失真比较函数,从而得到比较结果,如果比较结果表征编码模式组合B优于编码模式组合A,终端则可以将编码模式组合B作为新的待比对编码模式组合,与作为新的当前编码模式组合,即编码模式组合C进行性能的比对,如果编码模式组合B性能更优,则保持编码模式组合B作为待比对编码模式组合,与新的新的当前编码模式组合,即编码模式组合D进行性能比对,如果编码模式组合D性能更优则将其作为新的待比对编码模式组合,同时由于当前已经是最后一个比对轮次,因此终端可以将最后一个比对轮次的待比对编码模式组合,即编码模式组合D作为目标编码模式组合。
本实施例中,终端可以通过当前编码模式组合对应的第二编码损失以及第二解码复杂度,与当前比对轮次之前,性能最优的待比对编码模式组合的第一编码损失以及第一解码复杂度,来得到预先构造的率失真比较函数的比较结果,实现编码模式组合的性能比对,通过该方式可以进一步提高编码模式组合性能比对的效率。
进一步地,如图5所示,步骤S402可以进一步包括:
在步骤S501中,获取像素块对应的视频帧的视频帧层级,以及获取与视频帧层级对应的编解码复杂度调节参数。
视频帧层级指的是像素块对应的视频帧的层级,而编解码复杂度调节参数则指的是进行编解码复杂度的力度调节参数,由于在编码过程中,高层级的帧以低层级的帧作为参考帧,高层级的帧数量比低层级帧多很多,因此需要对不同的帧增加不同的控制参数,来减少编码的损失。具体来说,终端可以先获取某个像素块对应的视频帧的视频帧层级,从而根据视频帧层级来确定出对应的编解码复杂度调节参数。
在步骤S502中,将第一编码损失、第一解码复杂度、第二编码损失、第二解码复杂度以及编解码复杂度调节参数,带入率失真比较函数,得到率失真比较值;
在步骤S503中,根据率失真比较值以及针对率失真比较函数预先设置的率失真比较阈值之间的大小关系,得到比较结果。
率失真比较阈值指的是预先设定的与率失真比较值进行大小比对的率失真函数阈值,该阈值可以是基于预先构造的率失真比较函数的函数形式进行设定,具体来说,终端可以将得到的第一编码损失、第一解码复杂度、第二编码损失、第二解码复杂度以及编解码复杂度调节参数,带入到预先构建的率失真比较函数中,从而计算出相应的率失真比较值,并且可以将得到的根据率失真比较值与针对率失真比较函数预先设置的率失真比较阈值进行大小关系的比较,来得到相应的比较结果。
例如,第一编码损失可以通过bestCost表征,第一解码复杂度可以通过bestDecodeEnergy表征,第二编码损失可以通过tempCost表征,第二解码复杂度可以通过tempDecodeEnergy表征,而编解码复杂度调节参数则可以通过derdo_rd_ratio表征,那么率失真比较函数可以包含以下几种形式:
函数1:(tempCost + 1.0) / (bestCost + tempCost + 2.0) + (1.0 *(tempDecodeEnergy + 1.0) / (bestDecodeEnergy + tempDecodeEnergy + 2.0) - 0.5)* derdo_rd_ratio < 0.5,其中,0.5即作为预先针对函数1设置的率失真比较阈值。
函数2:(tempCost + 1.0) / (bestCost + 1.0) + (1.0 * (tempDecodeEnergy+ 1.0) / (bestDecodeEnergy + 1.0) - 1.0) * derdo_rd_ratio < 1.0,其中1.0即作为预先针对函数2设置的率失真比较阈值。
函数3:tempCost+derdo_rd_ratio* tempDecodeEnergy -bestCost -derdo_rd_ratio * bestDecodeEnergy<0,其中0即作为预先针对函数3设置的率失真比较阈值。
本实施例中,终端可以在率失真函数中进一步引入像素块对应的视频帧的视频帧层级像匹配的编解码复杂度调节参数,并且利用编解码复杂度调节参数来得到率失真比较值,以得到率失真函数的比较结果,通过该方式可以有效减少编码的损失,进一步提高筛选出的目标编码模式组合的性能。
进一步地,步骤S501可以进一步包括:获取像素块对应的视频帧关联的已编码视频帧,以及已编码视频帧对应的解码复杂度;已编码视频帧对应的解码复杂度基于已编码视频帧包含的各像素块的解码复杂度确定得到;获取视频帧层级对应的初始编解码复杂度调节参数,利用已编码视频帧对应的解码复杂度调节初始编解码复杂度调节参数,得到编解码复杂度调节参数;该调节与已编码视频帧对应的解码复杂度呈正相关关系。
像素块对应的视频帧关联的已编码视频帧指的是和像素块对应的视频帧相关联,并且已经完成编码的视频帧,例如可以是与像素块对应的视频帧时间最近的前后两帧参考帧、或者其中的若干帧组合,而已编码视频帧对应的解码复杂度则指的是该已编码视频帧的解码复杂度,该解码复杂度可以基于已编码视频帧包含的各像素块的解码复杂度确定得到。
而初始编解码复杂度调节参数则是与视频帧层级预先设定有对应关系的编解码复杂度调节参数,本实施例中,编解码复杂度调节参数除了与视频帧层级相关,还可以根据已编码视频帧的解码复杂度进行自适应调整,即可以根据已编码视频帧的解码复杂度,来调整初始编解码复杂度调节参数,并且调节的方式与已编码视频帧的解码复杂度呈正相关关系,即解码复杂度是比较大的,则对应调大调节参数,反之则调小调节参数,从而不仅可以在复杂度比较大的帧中更注重解码复杂度,简单的帧中更注重编码损失,并且还可以根据序列帧特点实现自适应的效果。
本实施例中,终端还可以基于像素块对应的视频帧关联的已编码视频帧的解码复杂度,来自适应调节编解码复杂度调节参数,从而可以根据序列帧特点实现自适应的效果,进一步提高编解码复杂度调节参数的准确性。
在一示例性实施例中,权重列表中预先存储有与多种预测模式对应的第一解码复杂度权重、与各预测模式的多种模式内部选择对应的第二解码复杂度权重,以及与多种非预测模式对应的第三解码复杂度权重;步骤S201可以进一步包括:获取当前编码模式组合对应的目标预测模式、针对目标预测模式的目标模式内部选择,以及当前编码模式组合对应的目标非预测模式;步骤S202可以进一步包括:从权重列表中,获取与目标预测模式对应的第一解码复杂度权重,与目标模式内部选择对应的第二解码复杂度权重,以及与目标非预测模式对应的第三解码复杂度权重。
本实施例中,全量编码模式与解码复杂度权重之间的对应关系,可以包含有多种预测模式,例如帧内预测、帧间预测等多种预测模式,与相应的第一解码复杂度权重之间的对应关系,也可以包含有各预测模式的多种模式内部选择,例如预测向量的不同选择,与相应的第二解码复杂度权重之间的对应关系,还可以包含有多种非预测模式,例如MV导出、反变换、反量化等非预测过程模式,与相应的第三解码复杂度权重之间的对应关系。
具体来说,终端在得到当前编码模式组合后,则可以分别确定该编码模式组合包含的预测模式,作为目标预测模式,针对该目标预测模式的模式内部选择,作为目标模式内部选择,以及该当前编码模式组合非预测模式过程,作为目标非预测模式。之后则可以从权重列表中,分别获取与目标预测模式对应的第一解码复杂度权重,与目标模式内部选择对应的第二解码复杂度权重,以及与目标非预测模式对应的第三解码复杂度权重,作为当前编码模式组合中各编码模式分别对应的解码复杂度权重。
本实施例中,权重列表中可以存储有多种编码模式对应的解码复杂度权重,分别包含有与多种预测模式对应的第一解码复杂度权重、与各预测模式的多种模式内部选择对应的第二解码复杂度权重,以及与多种非预测模式对应的第三解码复杂度权重,因此可以进一步提高编码模式与解码复杂度权重之间对应关系的完整程度,进一步提高获取的当前编码模式组合对应的解码复杂度的准确性。
进一步地,在目标预测模式为预设预测模式的情况下,基于当前编码模式组合中各编码模式分别对应的解码复杂度权重,得到当前编码模式组合的解码复杂度,可以进一步包括:获取像素块对应的视频帧的视频帧层级,以及与视频帧层级相匹配的复杂度变化系数;基于当前编码模式组合中各编码模式分别对应的解码复杂度权重,以及复杂度变化系数,得到当前编码模式组合的解码复杂度。
本实施例中,如果当前编码模式组合中采用的目标预测模式是预设预测模式,例如帧内预测的普通帧间插值和AFFINE模式中,终端还可以得到与像素块所在视频帧的视频帧层级,相匹配的复杂度变化系数,例如meRatio系数,该系数可以用于调节预设预测模式下,多种模式内部选择对应的第二解码复杂度权重,从而可以基于当前编码模式组合中各编码模式分别对应的解码复杂度权重,以及复杂度变化系数,得到当前编码模式组合的解码复杂度,并且由于低层级的帧的meRatio更小,高层级的帧meRatio更大,因此使得高层级帧更倾向于选择复杂度低的帧间预测模式。
本实施例中,在目标预测模式为预设预测模式的情况下,还可以基于像素块所在视频帧的视频帧层级,设置相匹配的复杂度变化系数,从而利用当前编码模式组合中各编码模式分别对应的解码复杂度权重,以及复杂度变化系数,来得到当前编码模式组合的解码复杂度,来使不同层级的帧可以有不同的预测模式选择倾向,以进一步在保证编码效果的情况下,减少解码端的解码复杂度。
进一步地,获取与视频帧层级相匹配的复杂度变化系数,可以进一步包括:获取像素块对应的视频帧关联的已编码视频帧,以及已编码视频帧对应的解码复杂度;已编码视频帧对应的解码复杂度基于已编码视频帧包含的各像素块的解码复杂度确定得到;获取视频帧层级对应的初始复杂度变化系数,利用已编码视频帧对应的解码复杂度调节初始复杂度变化系数,得到复杂度变化系数;该调节与已编码视频帧对应的解码复杂度呈正相关关系。
初始复杂度变化系数则是与视频帧层级预先设定有对应关系的复杂度变化系数。本实施例中,与编解码复杂度调节参数类似,复杂度变化系数除了与视频帧层级相关,还可以根据已编码视频帧的解码复杂度进行自适应调整,并且该调节与解码复杂度呈正相关关系,即可以根据已编码视频帧的解码复杂度,来调整初始复杂度变化系数,从而不仅可以使得高层级帧更倾向于选择复杂度低的帧间预测模式,并且还可以根据序列帧特点实现自适应的效果。
本实施例中,终端还可以基于像素块对应的视频帧关联的已编码视频帧的解码复杂度,来自适应调节复杂度变化系数,从而可以根据序列帧特点实现自适应的效果,进一步提高复杂度变化系数的准确性。
在一示例性实施例中,还提供了一种降低视频解码复杂度的方法,该方法通过系统性分析解码端各个工具模块性能,导出得到精确的权重占比,在编码码流时候精确控制解码复杂度,整体降低解码复杂度。
即通过计算不同的编码工具之间进行模式选择时候加入解码复杂度权重,在损失较小的条件下,选择解码复杂度更低的模式,可以包含以下部分
1、增加帧内预测、帧间预测中的若干种工具解码复杂度的权重。
在预测中为帧内和帧间预测多种模式赋予不同的解码复杂度权重,例如帧内预测有PLANER、DC、MIP、CCLM、角度预测等多种模式,帧间预测中有普通单向双向插值、AFFINE、GEO等多种预测模式。
2、每个编码模式的亮度、色度、方向都赋予了单独的权重。
在单个模式中,编码视频格式是yuv420的话,亮度和色度的像素数量是不一样的,对于两个色度分量在解码端可能会进行合并处理,因此在亮度,色度合并、色度分开三种情况下的解码复杂度也不同,需要根据解码过程中导出的复杂度分别赋予了不同的的权重。
3、每个编码模式的内部不同选择都赋予了单独的权重。
在单个预测模式中,如果模式中选择的预测向量不同对应的解码复杂度也不同,分别赋予了不同的权重,例如双向帧间预测中,两个预测向量在水平、竖直是否需要插值可以组合出16个组合,分别赋予了不同的权重。
在反变化的MTS中,MTS一共有三种候选矩阵,每种变换矩阵的解码复杂度均不相同,对于MTS选中的一次变换和二次变换类型不同,可以组合出9个MTS组合,分别赋予了不同的权重。
4、对MV导出、反变换、反量化等非预测过程加入解码复杂度的权重。
对于非预测的其他解码复杂度较高的MV导出、反变换、反量化等非预测等过程,也算他们的解码复杂度的权重,用于模式选择。例如最终的变换量化系数是否全为0,如果都是0就不需要进行反变换和反量化,可以节省不少解码复杂度;对于MV导出,当前块是否存在子块,存在子块则服药更多的解码复杂度。
上述几个对编解码器的多种和模式添加解码复杂度的权重,并进行亮度、色度、模式内部选择进行细致划分后,就得到了一个包含整个编解码过程的工具的权重列表,一共包含多达74种的不同权重。
5、考虑当前处理的块的面积大小,赋予不同的权重。
在解码端处理不同大小的块的时候,对于每个像素的平均处理时间是不一样的,一般块越大,则每个像素的处理时间会更小,如果没有考虑当前处理的块的面积大小,会导致实际计算出的权重不准确。
在对一个预测块进行预测、变换、量化等解码端的计算过程,如果选择的模式一样的情况下,即上述74种情况的其中一种,如果块大小越大可以并行处理的像素就越多,平均每个像素处理完成所需的解码复杂度就越小,因此给每个情况的不同像素大小的块否需要赋予不同的权重,该权重代表的是处理单个像素的时间复杂度,在计算总的权重时候需要乘以像素的数量。块的大小从面积从4x4到128x128共有13种块大小,因此得到了一个74*13的权重表,该权重表由解码端的分析工具进行导出。使用该带块面积权重后,在编码端会更精确的决策是否需要划分,会更倾向于选择大的块,由此降低了解码端的复杂度。计算权重时候,当前模式包含的所有模块的权重加起来得到解码的复杂度。
在解码端开发了解码各个工具的复杂度分析工具,可以非常容易的分析解码复杂度耗时部分,可以直接导出74个模式,每个模式13种块大小的权重,由此对编码端的复杂度权重进行更精确的计算。
6、在模式选择的比较公式中考虑该模式的解码复杂度。
提出了新的率失真比较函数,用于计算编码端的损失和解码复杂度的加权。计算率失真比较的公式如下,bestCost是原有最佳的损失,bestDecodeEnergy为原有最佳的解码复杂度,tempCost为新的损失,tempDecodeEnergy为新的解码复杂度,derdo_rd_ratio为进行编解码复杂度的力度调节参数。该新函数使用了百分比的方式来进行比较,可以避免损失和复杂度量级不同造成的损失。
(tempCost + 1.0) / (bestCost + tempCost + 2.0) + (1.0 *(tempDecodeEnergy + 1.0) / (bestDecodeEnergy + tempDecodeEnergy + 2.0) - 0.5)* derdo_rd_ratio < 0.5。
另外,也可以采用如下率失真函数:
可直接用tempCost和bestCost进行比较,(tempCost + 1.0) / (bestCost +1.0) + (1.0 * (tempDecodeEnergy + 1.0) / (bestDecodeEnergy + 1.0) - 1.0) *derdo_rd_ratio < 1.0。
也可直接使用损失加权解码复杂度的方式比较,tempCost + derdo_rd_ratio *tempDecodeEnergy < bestCost + derdo_rd_ratio * bestDecodeEnergy。
7、对于不同层次的帧计算解码复杂度权重不同
在编码过程中,高层级的帧以低层级的帧作为参考帧,高层级的帧数量比低层级帧多很多,对不同的帧增加了不同的控制参数,对低层级的帧降低在模式选择中的解码复杂度权重,减少编码的损失。
在帧内预测的普通帧间插值和AFFINE中,对于不同层级的帧设置了不同的meRatio,解码复杂度乘以meRatio后再加到损失中,低层级的帧的meRatio更小,高层级的帧meRatio更大,高层级帧更倾向于选择复杂度低的帧间预测模式。
在模式选择的比较公式中对不同层级的帧使用不同的derdo_rd_ratio,低层级的derdo_rd_ratio比高层及的derdo_rd_ratio更小,在保持解码复杂度的收益情况下,减少算法带来的的编码损失。
具体的模式组合选择实现过程可如6所示,分别计算出最佳模式与候选模式的解码复杂度,之后则可以利用率失真函数进行率失真比较,来选出性能更优的新的最佳模式。
而具体计算某个模式组合的解码复杂度则可以通过如图7所示流程实现,通过预先设置各个模块的解码复杂度的权重表,该权重表可以是从解码端测量对应模块的执行时间,得到各个模块每像素运行的时间,作为解码复杂度的权重构建得到,之后则可以根据权重表表得到模式组合中对应模块的权重,从而得到解码复杂度。
本实施例中,对整个解码器工具模块进行了系统性的分析,每个模块根据亮度、色度、方向不同赋予了不同的权重,整体性的精确控制解码复杂度。在模式选择的比较公式中考虑该模式的解码复杂度,进一步精确控制编码损失和解码复杂度的收益。对于不同的层次的帧,给与不同的计算权重,减少编码性能损失。
应该理解的是,虽然图1-图7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-图7中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
可以理解的是,本说明书中上述方法的各个实施例之间相同/相似的部分可互相参见,每个实施例重点说明的是与其他实施例的不同之处,相关之处参见其他方法实施例的说明即可。
图8是根据一示例性实施例示出的一种视频编码装置框图。参照图8,该装置包括编码像素块获取单元801,候选组合获取单元802,目标组合获取单元803和像素块编码单元804。
编码像素块获取单元801,被配置为执行获取待编码视频中视频帧包含的多个像素块;
候选组合获取单元802,被配置为执行针对各像素块,获取像素块对应的多种候选编码模式组合 ,各候选编码模式组合中包含至少两种不同维度的编码模式 ,且各编码模式分别对应有解码复杂度权重;
目标组合获取单元803,被配置为执行根据各候选编码模式组合中包含的各编码模式对应的解码复杂度权重,得到像素块基于各候选编码模式组合编码所对应的解码复杂度,以及获取像素块基于各候选编码模式组合编码所对应的编码损失,并利用解码复杂度以及编码损失从候选编码模式组合中获取性能最优的目标编码模式组合;
像素块编码单元804,被配置为执行根据目标编码模式组合中包含的编码模式,对像素块进行编码处理。
在一示例性实施例中,目标组合获取单元803,进一步被配置为执行将多种候选编码模式组合中的任意一个作为当前编码模式组合,获取当前编码模式组合中包含的各编码模式;从预先构建的权重列表中,获取当前编码模式组合中各编码模式分别对应的解码复杂度权重;权重列表中存储有全量编码模式与解码复杂度权重的对应关系。
在一示例性实施例中,权重列表中存储有全量编码模式对应于不同像素块面积以及不同颜色空间类别的解码复杂度权重;目标组合获取单元803,进一步被配置为执行获取像素块的像素块面积,以及像素块的颜色空间类别;从预先构建的权重列表中,获取当前编码模式组合中各编码模式,与像素块面积以及颜色空间类别对应的解码复杂度权重。
在一示例性实施例中,视频编码装置,还包括:权重列表构建单元,被配置为执行获取样本像素块,以及样本像素块对应的样本像素块面积与样本颜色空间类别;利用目标编码模式对样本像素块进行编码处理,并获取对编码处理后的样本编码块进行解码处理的解码时间;目标编码模式为待获取解码复杂度权重的编码模式;根据解码时间获取与目标编码模式以及样本像素块面积与样本颜色空间类别对应的解码复杂度权重,并基于该解码复杂度权重与目标编码模式以及样本像素块面积与样本颜色空间类别的对应关系,构建权重列表。
在一示例性实施例中,目标组合获取单元803,进一步被配置为执行获取待比对编码模式组合对应的第一编码损失以及第一解码复杂度;待比对编码模式组合为当前比对轮次之前、性能最优的候选编码模式组合;根据第一编码损失、第一解码复杂度,以及当前编码模式组合对应的第二编码损失以及第二解码复杂度,获取预先构造的率失真比较函数的比较结果;率失真比较函数用于比较待比对编码模式组合与当前编码模式组合的性能;在比较结果表征当前编码模式组合的性能优于待比对编码模式组合的情况下,将当前编码模式组合作为新的待比对编码模式组合;将最后一个比对轮次的待比对编码模式组合作为目标编码模式组合。
在一示例性实施例中,目标组合获取单元803,进一步被配置为执行获取像素块对应的视频帧的视频帧层级,以及获取与视频帧层级对应的编解码复杂度调节参数;将第一编码损失、第一解码复杂度、第二编码损失、第二解码复杂度以及编解码复杂度调节参数,带入率失真比较函数,得到率失真比较值;根据率失真比较值以及针对率失真比较函数预先设置的率失真比较阈值之间的大小关系,得到比较结果。
在一示例性实施例中,目标组合获取单元803,进一步被配置为执行获取像素块对应的视频帧关联的已编码视频帧,以及已编码视频帧对应的解码复杂度;已编码视频帧对应的解码复杂度基于已编码视频帧包含的各像素块的解码复杂度确定得到;获取视频帧层级对应的初始编解码复杂度调节参数,利用已编码视频帧对应的解码复杂度调节初始编解码复杂度调节参数,得到编解码复杂度调节参数;调节与已编码视频帧对应的解码复杂度呈正相关关系。
在一示例性实施例中,权重列表中预先存储有与多种预测模式对应的第一解码复杂度权重、与各预测模式的多种模式内部选择对应的第二解码复杂度权重,以及与多种非预测模式对应的第三解码复杂度权重;目标组合获取单元803,进一步被配置为执行获取当前编码模式组合对应的目标预测模式、针对目标预测模式的目标模式内部选择,以及当前编码模式组合对应的目标非预测模式;从权重列表中,获取与目标预测模式对应的第一解码复杂度权重,与目标模式内部选择对应的第二解码复杂度权重,以及与目标非预测模式对应的第三解码复杂度权重。
在一示例性实施例中,在目标预测模式为预设预测模式的情况下,目标组合获取单元803,进一步被配置为执行获取像素块对应的视频帧的视频帧层级,以及获取与视频帧层级相匹配的复杂度变化系数;基于当前编码模式组合中各编码模式分别对应的解码复杂度权重,以及复杂度变化系数,得到当前编码模式组合的解码复杂度。
在一示例性实施例中,目标组合获取单元803,进一步被配置为执行获取像素块对应的视频帧关联的已编码视频帧,以及已编码视频帧对应的解码复杂度;已编码视频帧对应的解码复杂度基于已编码视频帧包含的各像素块的解码复杂度确定得到;获取视频帧层级对应的初始复杂度变化系数,利用已编码视频帧对应的解码复杂度调节初始复杂度变化系数,得到复杂度变化系数;调节与已编码视频帧对应的解码复杂度呈正相关关系。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图9是根据一示例性实施例示出的一种用于视频编码的电子设备900的框图。例如,电子设备900可以是移动电话、计算机、数字广播终端、消息收发设备、游戏控制台、平板设备、医疗设备、健身设备、个人数字助理等。
参照图9,电子设备900可以包括以下一个或多个组件:处理组件902、存储器904、电源组件906、多媒体组件908、音频组件910、输入/输出(I/O)的接口912、传感器组件914以及通信组件916。
处理组件902通常控制电子设备900的整体操作,诸如与显示、电话呼叫、数据通信、相机操作和记录操作相关联的操作。处理组件902可以包括一个或多个处理器920来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件902可以包括一个或多个模块,便于处理组件902和其他组件之间的交互。例如,处理组件902可以包括多媒体模块,以方便多媒体组件908和处理组件902之间的交互。
存储器904被配置为存储各种类型的数据以支持在电子设备900的操作。这些数据的示例包括用于在电子设备900上操作的任何应用程序或方法的指令、联系人数据、电话簿数据、消息、图片、视频等。存储器904可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁存储器、快闪存储器、磁盘、光盘或石墨烯存储器。
电源组件906为电子设备900的各种组件提供电力。电源组件906可以包括电源管理系统,一个或多个电源,及其他与为电子设备900生成、管理和分配电力相关联的组件。
多媒体组件908包括在所述电子设备900和用户之间的提供输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件908包括前置摄像头和/或后置摄像头。当电子设备900处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件910被配置为输出和/或输入音频信号。例如,音频组件910包括麦克风(MIC),当电子设备900处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器904或经由通信组件916发送。在一些实施例中,音频组件910还包括扬声器,用于输出音频信号。
I/O接口912为处理组件902和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件914包括一个或多个传感器,用于为电子设备900提供各个方面的状态评估。例如,传感器组件914可以检测到电子设备900的打开/关闭状态,组件的相对定位,例如所述组件为电子设备900的显示器和小键盘,传感器组件914还可以检测电子设备900或电子设备900组件的位置改变,用户与电子设备900接触的存在或不存在,设备900方位或加速/减速和电子设备900的温度变化。传感器组件914可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件914还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件914还可以包括加速度传感器、陀螺仪传感器、磁传感器、压力传感器或温度传感器。
通信组件916被配置为便于电子设备900和其他设备之间有线或无线方式的通信。电子设备900可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件916经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件916还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备900可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器904,上述指令可由电子设备900的处理器920执行以完成上述方法。例如,计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供一种计算机程序产品,所述计算机程序产品中包括指令,上述指令可由电子设备900的处理器920执行以完成上述方法。
需要说明的,上述的装置、电子设备、计算机可读存储介质、计算机程序产品等根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (13)
1.一种视频编码方法,其特征在于,包括:
获取待编码视频中视频帧包含的多个像素块;
针对各像素块,获取所述像素块对应的多种候选编码模式组合,各所述候选编码模式组合中包含至少两种不同维度的编码模式,且各编码模式分别对应有解码复杂度权重;
根据各所述候选编码模式组合中包含的各编码模式对应的解码复杂度权重,得到所述像素块基于各所述候选编码模式组合编码所对应的解码复杂度,以及获取所述像素块基于各所述候选编码模式组合编码所对应的编码损失,并利用所述解码复杂度以及所述编码损失从所述候选编码模式组合中获取性能最优的目标编码模式组合;
根据所述目标编码模式组合中包含的编码模式,对所述像素块进行编码处理。
2.根据权利要求1所述的方法,其特征在于,所述根据各所述候选编码模式组合中包含的各编码模式预先设定的解码复杂度权重之前,还包括:
将所述多种候选编码模式组合中的任意一个作为当前编码模式组合,获取所述当前编码模式组合中包含的各编码模式;
从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式分别对应的解码复杂度权重;所述权重列表中存储有全量编码模式与解码复杂度权重的对应关系。
3.根据权利要求2所述的方法,其特征在于,所述权重列表中存储有全量编码模式对应于不同像素块面积以及不同颜色空间类别的解码复杂度权重;
所述从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式分别对应的解码复杂度权重,包括:
获取所述像素块的像素块面积,以及所述像素块的颜色空间类别;
从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式,与所述像素块面积以及所述颜色空间类别对应的解码复杂度权重。
4.根据权利要求3所述的方法,其特征在于,所述从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式,与所述像素块面积以及所述颜色空间类别对应的解码复杂度权重之前,还包括:
获取样本像素块,以及所述样本像素块对应的样本像素块面积与样本颜色空间类别;
利用目标编码模式对所述样本像素块进行编码处理,并获取对编码处理后的所述样本编码块进行解码处理的解码时间;所述目标编码模式为待获取解码复杂度权重的编码模式;
根据所述解码时间获取与所述目标编码模式以及所述样本像素块面积与样本颜色空间类别对应的解码复杂度权重,并基于该解码复杂度权重与所述目标编码模式以及所述样本像素块面积与样本颜色空间类别的对应关系,构建所述权重列表。
5.根据权利要求2所述的方法,其特征在于,所述利用所述解码复杂度以及所述编码损失从所述候选编码模式组合中获取性能最优的目标编码模式组合,包括:
获取待比对编码模式组合对应的第一编码损失以及第一解码复杂度;所述待比对编码模式组合为当前比对轮次之前、性能最优的候选编码模式组合;
根据所述第一编码损失、第一解码复杂度,以及所述当前编码模式组合对应的第二编码损失以及第二解码复杂度,获取预先构造的率失真比较函数的比较结果;所述率失真比较函数用于比较所述待比对编码模式组合与所述当前编码模式组合的性能;
在所述比较结果表征所述当前编码模式组合的性能优于所述待比对编码模式组合的情况下,将所述当前编码模式组合作为新的待比对编码模式组合;
将最后一个比对轮次的所述待比对编码模式组合作为所述目标编码模式组合。
6.根据权利要求5所述的方法,其特征在于,所述根据所述第一编码损失、第一解码复杂度,以及所述当前编码模式组合对应的第二编码损失以及第二解码复杂度,获取预先构造的率失真比较函数的比较结果,包括:
获取所述像素块对应的视频帧的视频帧层级,以及获取与所述视频帧层级对应的编解码复杂度调节参数;
将所述第一编码损失、第一解码复杂度、第二编码损失、第二解码复杂度以及所述编解码复杂度调节参数,带入所述率失真比较函数,得到率失真比较值;
根据所述率失真比较值以及针对所述率失真比较函数预先设置的率失真比较阈值之间的大小关系,得到所述比较结果。
7.根据权利要求6所述的方法,其特征在于,所述获取与所述视频帧层级对应的编解码复杂度调节参数,包括:
获取所述像素块对应的视频帧关联的已编码视频帧,以及所述已编码视频帧对应的解码复杂度;所述已编码视频帧对应的解码复杂度基于所述已编码视频帧包含的各像素块的解码复杂度确定得到;
获取所述视频帧层级对应的初始编解码复杂度调节参数,利用所述已编码视频帧对应的解码复杂度调节所述初始编解码复杂度调节参数,得到所述编解码复杂度调节参数;所述调节与所述已编码视频帧对应的解码复杂度呈正相关关系。
8.根据权利要求2所述的方法,其特征在于,所述权重列表中预先存储有与多种预测模式对应的第一解码复杂度权重、与各预测模式的多种模式内部选择对应的第二解码复杂度权重,以及与多种非预测模式对应的第三解码复杂度权重;
所述将所述多种候选编码模式组合中的任意一个作为当前编码模式组合,获取所述当前编码模式组合中包含的各编码模式,包括:
获取所述当前编码模式组合对应的目标预测模式、针对所述目标预测模式的目标模式内部选择,以及所述当前编码模式组合对应的目标非预测模式;
所述从预先构建的权重列表中,获取所述当前编码模式组合中各编码模式分别对应的解码复杂度权重,包括:
从所述权重列表中,获取与所述目标预测模式对应的第一解码复杂度权重,与所述目标模式内部选择对应的第二解码复杂度权重,以及与所述目标非预测模式对应的第三解码复杂度权重。
9.根据权利要求8所述的方法,其特征在于,在所述目标预测模式为预设预测模式的情况下,所述基于所述当前编码模式组合中各编码模式分别对应的解码复杂度权重,得到所述当前编码模式组合的解码复杂度,包括:
获取所述像素块对应的视频帧的视频帧层级,以及获取与所述视频帧层级相匹配的复杂度变化系数;
基于所述当前编码模式组合中各编码模式分别对应的解码复杂度权重,以及所述复杂度变化系数,得到所述当前编码模式组合的解码复杂度。
10.根据权利要求9所述的方法,其特征在于,所述获取与所述视频帧层级相匹配的复杂度变化系数,包括:
获取所述像素块对应的视频帧关联的已编码视频帧,以及所述已编码视频帧对应的解码复杂度;所述已编码视频帧对应的解码复杂度基于所述已编码视频帧包含的各像素块的解码复杂度确定得到;
获取所述视频帧层级对应的初始复杂度变化系数,利用所述已编码视频帧对应的解码复杂度调节所述初始复杂度变化系数,得到所述复杂度变化系数;所述调节与所述已编码视频帧对应的解码复杂度呈正相关关系。
11.一种视频编码装置,其特征在于,包括:
编码像素块获取单元,被配置为执行获取待编码视频中视频帧包含的多个像素块;
候选组合获取单元,被配置为执行针对各像素块,获取所述像素块对应的多种候选编码模式组合 ,各所述候选编码模式组合中包含至少两种不同维度的编码模式 ,且各编码模式分别对应有解码复杂度权重;
目标组合获取单元,被配置为执行根据各所述候选编码模式组合中包含的各编码模式对应的解码复杂度权重,得到所述像素块基于各所述候选编码模式组合编码所对应的解码复杂度,以及获取所述像素块基于各所述候选编码模式组合编码所对应的编码损失,并利用所述解码复杂度以及所述编码损失从所述候选编码模式组合中获取性能最优的目标编码模式组合;
像素块编码单元,被配置为执行根据所述目标编码模式组合中包含的编码模式,对所述像素块进行编码处理。
12.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至10中任一项所述的视频编码方法。
13.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至10中任一项所述的视频编码方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410137930.5A CN117956145A (zh) | 2024-01-31 | 2024-01-31 | 视频编码方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410137930.5A CN117956145A (zh) | 2024-01-31 | 2024-01-31 | 视频编码方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117956145A true CN117956145A (zh) | 2024-04-30 |
Family
ID=90791862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410137930.5A Pending CN117956145A (zh) | 2024-01-31 | 2024-01-31 | 视频编码方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117956145A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118400543A (zh) * | 2024-06-25 | 2024-07-26 | 湖北华中电力科技开发有限责任公司 | 一种基于图像处理的架空输电线路的异物检测方法及系统 |
-
2024
- 2024-01-31 CN CN202410137930.5A patent/CN117956145A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118400543A (zh) * | 2024-06-25 | 2024-07-26 | 湖北华中电力科技开发有限责任公司 | 一种基于图像处理的架空输电线路的异物检测方法及系统 |
CN118400543B (zh) * | 2024-06-25 | 2024-09-13 | 湖北华中电力科技开发有限责任公司 | 一种基于图像处理的架空输电线路的异物检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110689127B (zh) | 神经网络结构模型搜索方法、装置及存储介质 | |
CN110708559B (zh) | 图像处理方法、装置及存储介质 | |
CN110650370B (zh) | 一种视频编码参数确定方法、装置、电子设备及存储介质 | |
EP3872744A1 (en) | Method and apparatus for obtaining sample image set | |
CN110536168B (zh) | 视频上传方法、装置、电子设备及存储介质 | |
CN117956145A (zh) | 视频编码方法、装置、电子设备及存储介质 | |
CN109547782B (zh) | Mpm候选列表构建方法、装置、电子设备及存储介质 | |
CN115086679B (zh) | 帧内预测方法、装置、电子设备及存储介质 | |
CN116170593A (zh) | 视频数据编码方法、装置、电子设备及存储介质 | |
CN115052150A (zh) | 视频编码方法、装置、电子设备和存储介质 | |
CN105392056B (zh) | 电视情景模式的确定方法及装置 | |
CN107527072B (zh) | 确定相似头像的方法及装置、电子设备 | |
CN109660794B (zh) | 帧内预测模式的决策方法、决策装置和计算机可读存储介质 | |
US20240146952A1 (en) | Methods and apparatuses for decoder-side motion vector refinement in video coding | |
CN115297333B (zh) | 视频数据的帧间预测方法、装置、电子设备及存储介质 | |
CN118368430A (zh) | 视频数据处理方法及装置、增强网络的训练方法及装置 | |
CN114998143B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
WO2021021698A1 (en) | Methods and apparatuses for decoder-side motion vector refinement in video coding | |
CN115514965B (zh) | 视频的编码方法、装置、电子设备及存储介质 | |
CN115348448B (zh) | 滤波器训练方法、装置、电子设备及存储介质 | |
CN119402655A (zh) | 码率控制方法、装置、电子设备、存储介质及程序产品 | |
CN112738524B (zh) | 图像编码方法、装置、存储介质及电子设备 | |
CN119854499A (zh) | 视频编码方法、装置、电子设备及存储介质 | |
CN115278244A (zh) | 视频量化方法、装置、电子设备及存储介质 | |
CN118509597A (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 |