CN100481942C - 于视频编码器进行操作帧层级位率控制的方法与装置 - Google Patents
于视频编码器进行操作帧层级位率控制的方法与装置 Download PDFInfo
- Publication number
- CN100481942C CN100481942C CNB2006100957827A CN200610095782A CN100481942C CN 100481942 C CN100481942 C CN 100481942C CN B2006100957827 A CNB2006100957827 A CN B2006100957827A CN 200610095782 A CN200610095782 A CN 200610095782A CN 100481942 C CN100481942 C CN 100481942C
- Authority
- CN
- China
- Prior art keywords
- quantization parameter
- present frame
- bit rate
- preset range
- rate control
- 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.)
- Expired - Fee Related
Links
Images
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/103—Selection of coding mode or of prediction mode
-
- 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/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/149—Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明揭露了一种执行于一视频编码器的帧层级位率控制的方法,该方法包含配置一目标特性于一目前帧,并利用一第一量化参数对目前帧的宏区块执行一第一阶段编码以产生一残余信号和一实际特性给根据第一量化参数编码的目前帧,并测试根据第一量化参数编码的目前帧的实际特性是否落于目前帧的目标特性的一预设范围内。
Description
技术领域
本发明涉及以区块运算为基础的视频编码器的位率控制,尤指于一H.264视频编码器进行帧层级(frame-layer)位率控制的方法与装置。
背景技术
随着各式视频压缩标准技术的发展,视频影音系统广泛地被应用在各种领域中,例如,视频电话、视频会议以及各类的视频传输系统。一般来说,上述视频编码标准的技术不外乎离散余弦转换(discrete cosine transform,DCT)、移动估测(motion estimation,ME)或移动补偿(motion compensation,MC)、量化和可变长度编码(variable length coding,VLC)。在量化过程中,所使用的量化参数(quantization parameter,QP)(其是对应到一量化步阶大小)是一个重要的编码参数,因为该量化参数会对最终的编码视频品质产生很大的影响;换句话说,使用在一帧(frame)或一宏区块(macroblock)的步阶大小将会直接影响视频的编码品质。因此,在一个应用系统和编码环境中必须使用一合适的位率控制算法来运算出该量化步阶大小,由此可知,在一应用系统和视频压缩标准中,该量化参数必须被谨慎地运算。
虽然位率控制在制定的标准中并没有被严格的限制,但是因为其重要性,所以仍然广泛地被许多研究人员研究,近年来,具有较佳编码效率的H.264视频压缩标准已引起广大的注意,如此一来,当H.264实际应用在多种传输信道下,寻找一对于H.264编码器有效的位率控制算法已成为当下重要的议题,其中,数个以模块为基础(module-based)的位率控制运算法的H.264编码器已被其它文献揭露。
相较于之前其它的视频压缩标准,H.264的高编码效率主要是因为H.264采用位率和失真(rate and distortion,R-D)最佳化移动估测与模式决定(亦简称为位率及失真最佳化(RDO)),其具有多种帧内估测(intra prediction)模式和帧间估测(inter prediction)模式以及多重参考帧,虽然如此,由于位率及失真最佳化和位率控制之间具有相互依赖性,因此提升了H.264的位率控制复杂度。换句话说,位率控制决定量化参数值,而位率及失真最佳化却需利用量化参数值来决定位率控制所需的信息,因此,在决定位率控制和位率及失真最佳化参数的过程中就会面临到所谓的鸡生蛋和蛋生鸡的矛盾状况,如下列参考文献所述:“Adaptive frame layer rate control for H.264”by Z.G.Li,F.Pan,K.P.Lim,G.N.Feng,S.Rahardja and D.J.Wu,in Proc.IEEE Intl.Conf.Multimedia,Expo,pp.581-584,June 2003以及“Adaptiverate control for H.264”by Z.G.Li,F.Pan,K.P.Lim,and S.Rahardja,in Proc.IEEE Intl.Conf.Image Processing,pp.745-748,October 2004。
至今,人们已提出数个以模块为基础的位率控制运算法来解决位率及失真最佳化和位率控制之间的相互依赖性问题,从以上列出的两则参考文献中可以得知对于目前帧内的每个基本单元的微区块均差(mean absolute difference,MAD)是使用一线性模型经由前一个帧内相同位置的一基本单元的微区块均差估测所得,接着经由一二次(quadratic)位率模型计算出该基本单元的量化参数,该量化参数可以是一帧、一片段或一宏区块。从参考文献“A new ratc controlscheme for H.264 video coding”by P.Yin and J.Boyce,in Proc.IEEE Intl.Conf.Image Processing,pp.449-452,October 2004可得知该残余信号的变异量是经由运算一简化后的宏区块分割和参考帧的位率及失真最佳化估测得到的,而所估测得到的变异量将被汇入H.263 TMN 8R-D模型(如参考文献“Ratecontrol in DCT video coding for low-delay communi cations,”by J.Ribas-Corbera and S.Lei,IEEE Trans.Circuits and Syst.Video Technol.,vol.9,pp.172-185,February 1999所述)以计算出宏区块的量化参数值。
至于其它使用相似位率控制算法的H.264编码器亦在以下参考文献中被揭露,分别是“A new bit rate control strategy for H.264”(N.Wang and Y.He,in Proc.IEEE Intl.Conf.Infor.Commun.and Signal Processing,pp.1370-1373,December 2003和“A novel rate control scheme for H.264 videocoding,”by J.Xu and Y.He,in Proc.IEEE Intl.Symp.Circuits and Systems,pp.III-809-812,May 2004)。
因此可得知,以上所述的估测方法是操作一稳定的视频序列下,但是若当视频序列具有可变特性的帧时,则无法确保上述公知方法的精确性,原因是对微区块均差及/或残余信号的变异量的不精准估测会造成位率控制的效能下降。因此,提供一种于H.264视频编码器进行帧层位率控制的改良方法是很有帮助的。
发明内容
本发明的目的在于提供一种帧层级位率控制的方法和相关装置,以解决上述现有技术所面临的问题。
本发明的帧层位率控制方法是配置一目标特性于一目前帧,并利用一第一量化参数对目前帧的宏区块执行一第一阶段编码以产生一残余信号和一确实特性给根据第一量化参数编码的目前帧,并测试第一量化参数编码的目前帧的实际特性是否落于目前帧的目标特性的一预设范围内。若实际特性落于目标特性的预设范围内,则根据目前帧的残余信号来产生一视频比特流;若实际特性不落于目标特性的该预设范围内,则将执行一第二阶段编码求出一第二量化参数以对目前帧的残余信号进行编码。
本发明的于视频编码器执行帧层级位率控制的一种装置包含有:一目标特性配置单元,以对一目前帧配置一目标特性;一第一阶段编码装置,耦接至目标特性配置单元,以进行一第一阶段编码,该第一阶段编码利用一第一量化参数对目前帧的宏区块进行编码以产生一残余信号和一实际特性给根据第一量化参数编码的目前帧;以及一位率控制装置,耦接至第一阶段编码装置,以测试根据第一量化参数编码的目前帧的实际特性是否落于目前帧的目标特性的一预设范围内。该装置进一步由一第二阶段编码装置,其是耦接至位率控制装置,其中,若实际特性落于目标特性的预设范围内,则所述视频编码器根据目标帧的残余信号来产生一视频比特流;若该位率控制装置运算出实际特性不落于目标特性的预设范围的内,则第二阶段编码装置进行一第二阶段编码以求出一第二量化参数以对目前帧的残余信号进行编码。
本发明的有益效果在于当视频序列具有可变帧和难以估测的特性时,该目标特性和其精确度仍可获得保证。
附图说明
图1为本发明两阶段编码操作的一实施例的示意图。
图2为本发明执行操作位率控制的一视频编码系统的一实施例的示意图。
图3为如何设定一上限和下限给目标位以允许提前终止操作。
图4为本发明帧层位率控制方法的第一实施例的流程图。
图5为图2所示的视频编码系统决定第二量化参数QP2的第一种方法的示意图。
图6为图2所示的视频编码系统决定第二量化参数QP2的第二种方法的示意图。
图7为图2所示的视频编码系统决定第二量化参数QP2的第三种方法的示意图。
图8为图2所示的视频编码系统决定第二量化参数QP2的第四种方法的示意图。
图9为在不同的BL值下所得到的实际位率和每一帧的平均编码次数的示意图。
图10为QCIF“silent”序列的不同下限值BL的位变异量示意图。
图11为QCIF“hall”序列的不同下限值BL的位变异量示意图。
图12为本发明一实施例中所有为了固定位率而利用位率控制方法所编码的测试序列的第一量化参数和第二量化参数的差值(QP1-QP2)的分布示意图。
图13为本发明帧层位率控制方法的第二实施例的流程图。
图14为本发明帧层位率控制方法的第三实施例的流程图。
2 视频编码系统 21 缓冲器
22 第一阶段编码装置 24 位率控制装置
26 第二阶段编码装置 221 位率及失真最佳化单元
222 残余储存单元
223 离散余弦转换/量化-反向量化/反向离散余弦转换-熵编码单元
241 目标失真配置单元 242 条件测试单元
243 量化参数更新单元 261 帧内精密运算单元
具体实施方式
关于H.264位率控制方面,位率及失真最佳化(RDO)和位率控制之间的相互依赖性会造成两个较大的问题:首先,就如以上公知技术文件和其相关算法所述,该残余信号和其相关信息(例如微区块均差(MAD)和变异量)在执行位率及失真最佳化计算时均还未被运算出来;其次,标头信息(例如宏区块模式,移动向量和参考帧)在执行位率及失真最佳化时也还未被运算出来。由此可知,用来对该标头信息进行编码的标头位数将无法被精确地估测出来。
虽然已有多种使用位率控制算法来解决位率及失真最佳化与位率控制之间相互依赖性的H.264编码器方案,但是这些方案其实并没有彻底解决所有位率及失真最佳化及位率控制之间相互依赖性问题。根据同一发明人于2005/1/31送件的美国专利申请案号11/047,039,发明名称为Video Encoding Methods andSystems With Frame-Layer Rate Control,来作为参考,该发明内容揭发了一帧层级位率控制算法,以两阶段编码机制作为基础,而根据所揭露的内容得知,该两阶段编码机制解决了由位率及失真最佳化与位率控制之间的相互依赖性所造成的问题。
由本案发明人所提出的两阶段编码机制是以模块为基础的方法,其中该量化参数是经由位率和失真模型控制位率来加以决定的,因此,位率和失真模型的精确率对以模块为基础的位率控制方法的效能有相当大的影响,也就是说,即使是一微小的估测错误仍然会大幅地降低位率控制的效能。虽然所揭露的两阶段编码机制解决了位率及失真最佳化与位率控制之间的相互依赖性问题,但是有时候不精准的模型亦会降低该位率控制的效能。根据本发明一些实施例,在每一个帧还未被编码之前,会先利用一位率控制方法来确保该帧的编码过程满足一目标特性,例如,本发明实施例就说明了位率或视频比特流的品质在整个编码过程中维持相当稳定的状态,虽然本发明提高了编码的复杂度,但该操作位率控制方法和装置却可以改善模型错误所造成的效能低落。
对于H.264编码器,位率和失真最佳化是通过拉格朗日(Lagrange)最佳化技术完成,在这过程中,该H.264编码器会选择最佳的编码参数,以使拉格朗日衡量值(Lagrange cost)为最小,其中拉格朗日乘法器所对应的运算为所给定的量化参数的函数。根据“Combined mode selection and macroblockquantization step adaptation for the H.263 video encoder”(published inProc.IEEE Intl.Conf.Image Processing,pp.26-29,October 1997)所述,其揭露一种利用拉格朗日最佳化技术来一并选择宏区块模式与量化参数的方法,且该方法是具体实施在H.263编码器内,在该发明中,拉格朗日乘法器经由对编码的反复调整以使目标位率满足所需。
图1为本发明两阶段编码操作的一实施例的示意图。如图1所示,一二维(2-D)搜寻范围(如以上参考文献所述)是转换至相互串接的一维(1-D)搜寻范围,更确切的说,当给定一初始的量化参数时,首先一维搜寻会利用位率及失真最佳化先搜寻出最佳的宏区块模式,然后,另一次的一维搜寻会执行以找出最终的量化参数以满足目标位率。相对于在二维搜寻范围进行复合式搜寻,该相互串接的一维搜寻只是一个次佳的解决方案,然而,如果将初始量化参数和最终量化参数之间的差量限制于一小范围时(如以下公式(一)所示),相互串接的一维搜寻所造成的编码增益损失(coding gain loss)会较小。
|QP1-QP2|≤Δ where Δ=3 公式(一)
其中QP1和QP2分别表示初始量化参数和最终量化参数。
图2为本发明执行操作位率控制的一视频编码系统2的一实施例的示意图。本实施例中,视频编码系统2由一第一阶段编码装置22、一位率控制装置24以及一第二阶段编码装置26所组成。第一阶段编码装置22由一位率及失真最佳化单元221、一残余储存单元222以及一离散余弦转换(discrete cosinetransform,DCT)/量化(quantization)-反向量化(inverse quantization)/反向离散余弦转换(inverse discrete cosine transform,IDCT)-熵(entropy)编码单元223(此后简称为DCT/Q-IQ/IDCT-entropy编码单元223)。在本实施例中,对于前一帧的所有宏区块,第一阶段编码装置22会运算出所有量化参数的平均值。在位率及失真最佳化单元221中,其是利用该平均值当成一第一量化参数QP1,此外,位率及失真最佳化单元221对该帧的所有宏区块执行位率及失真最佳化的移动估测和模式决定(R-D optimized motion estimation andmode decision)。然后,由位率及失真最佳化单元221所产生的残余信号和标头信息将被储存至残余储存单元222,而DCT/Q-IQ/IDCT-熵编码单元223会产生重组过后的帧和一暂时的比特流。
位率控制装置24是耦接至第一阶段编码装置22以测试利用第一量化参数QP1编码后的目前帧所对应的一实际特性是否落于该目前帧的目标特性的预设范围内。在本实施例中,位率控制装置24由一目标特性配置单元、一条件测试单元242和一量化参数更新单元243所组成,其中该目标特性配置单元为多个目标位及/或一目标失真配置单元241,根据不同的实施例,目标特性配置单元是用来对一目前帧配置一目标特性,例如根据与被编码的帧相对应的位率及/或目标失真DT来决定目标位数RT。条件测试单元242测试根据第一量化参数QP1所编码的目前帧的实际特性是否落于该目前帧的目标特性的预设范围内,若实际的位数及/或实际的失真非常接近于目标位数和目标失真,也就是说,实际位率是落于该预设范围内的话,则上述暂时比特流会产生一输出比特流。换句话说,若位率控制装置24判定该实际特性是落于该目标特性的预设范围内的话,则视频编码系统2会根据利用第一量化参数QP1编码的该残余信号产生一视频比特流;若位率控制装置24判定该实际特性不在该目标特性的预设范围内的话,则量化参数更新单元243会对第一量化参数加一(或减一),然后再进行第二阶段编码。必需注意的是,在量化参数更新单元243中,更新后量化参数的差量是限制在(QP1-Δ,QP1+Δ)范围内,而经由限制两个连续帧的相对应量化参数的差量,位率控制装置24避免了连续帧之间看起来有明显的品质改变。
第二阶段编码装置26包含一帧内精密运算单元261和一DCT/Q-IQ/IDCT-entropy编码单元223。如图2所示,为了节省硬件成本,在本实施例中,第二阶段编码装置26和第一阶段编码装置22共同使用DCT/Q-IQ/IDCT-entropy编码单元223。当一宏区块模式在第一阶段编码时为多种帧内估测(intra prediction)模式之一时,帧内精密运算单元261才会被激活。因为量化和反量化所使用的量化参数是不同于第一阶段编码所使用的量化参数,所以相邻的重组后的宏区块会跟第一阶段编码的宏区块不一样,因此,当宏区块是对应帧内模式(intra mode)时,该宏区块的残余信号会依据第一阶段编码装置22所决定的帧内模式而再作一次更精密的运算。由此可知,在进行第二阶段编码时,位率控制装置24会利用第二阶段编码所产生相邻的重组后的像素来对宏区块的残余信号作更精密的运算。
再次地,DCT/Q-IQ/IDCT-entropy编码单元223在第一阶段编码中对残余信号进行编码以产生重组后的帧和暂时比特流,而本发明的两阶段编码机制和上述同一发明人所揭露的两阶段编码机制的差别是:本发明中的第一阶段亦同时进行熵编码(entropy coding),以及残余信号可在第二阶段中被重复编码数次,在此使用“阶段”而不使用“步骤”是因为残余信号在第二阶段时可能会被编码数次。
于H.264实现固定位率(constant bit rate,CBR)的位率控制的实施例详述如下。在本实施例中,若给定目前帧的目标位数RT,则位率控制会被执行以提供一固定位率。在进行第一阶段编码时,第一量化参数QP1会被用来执行位率及失真最佳化,而残余信号会经由离散余弦转换/量化、反向量化/反向离散余弦转换和熵编码来进行编码。例如,第一量化参数QP1可以是前一帧的量化参数或量化参数平均值。在执行了位率与失真最佳化(RDO)、离散余弦转换/量化、反向量化/反向离散余弦转换和熵编码之后,所有在(QP1+1,QP1+Δ)或(QP1-Δ,QP1-1)之间的量化参数值都会被用来对残余信号进行编码以获得相对于每个可能量化参数值的实际位数R(QP)。要注意的是,量化参数值必需维持在(QP1+1,QP1+Δ)或(QP1-Δ,QP1-1)范围之间以确保初始量化参数QP1和最终量化参数QP2的差量限制在一小范围内。最后,第二量化参数QP2会再次被用来对残余信号进行编码,而第二量化参数QP2是使实际位数R(QP)最接近目标位数RT的量化参数,其中QP∈(QP1,QP1+Δ)或QP∈(QP1-Δ,QP1)。
一般而言,对上述算法而言,每一个帧都需要一次位率及失真最佳化运算以及Δ+2倍的离散余弦转换/量化、反向量化/反向离散余弦转换和熵编码运算,为了减少运算成本,亦即减少第二阶段编码所需的编码次数,在下一个实施例(如图3所示)揭露了一种试误法(heuristic method)。要注意的是,帧的实际位数相对于目标位数可以允许有些许的误差,因为一编码缓冲器会抵销位率的变异。因此,在本发明中,试误法的前提是要对目标位数设定一上限和下限,如图3所示,设定BU×RT和BL×RT分别是目标位数的上限和下限,然后,若是实际位数R(QP)介于(BL×RT,BU×RT)范围的内的话,就不需要再用其它量化参数值进行更进一步的编码,因此整个编码过程就大幅地简化了。
图4为本发明帧层级位率控制方法的一第一实施例的流程图。本发明帧层位率控制方法是依据两阶段编码机制得到固定位率。假设大体上所得到的结果是一样的,则图4所示的流程图中的步骤不一定得依照所定的顺序,而且也不必是连续的;换句话说,其它步骤亦可介于其中。在本实施例中,通过帧层级位率控制来得到固定位率包含下列步骤:
步骤400:配置一目标位数给目前帧。
步骤402:初始化一量化参数变量为第一量化参数QP1的初始值。例如,第一量化参数QP1可以设定为前一帧的量化参数值或量化参数的平均值。
步骤404:利用在步骤402初始化量化参数变量所得的第一量化参数QP1进行第一阶段编码。
步骤406:测试提早终止的条件。
步骤408:执行编码后流程(post encoding process)。
步骤410:更新下一循环的运算的量化参数变量。
步骤412:检查量化参数值是否介于第一量化参数QP1的一预设范围内。
步骤414:利用更新后的量化参数变量进行第二阶段编码。
步骤416:根据第二阶段编码的结果决定出一第二量化参数QP2。
在步骤400,目前帧所配置的目标位数RT是用来得到一固定位率。必需注意的是,该配置位数的方法并不是本发明的重点,而各种公知技术的方法均可以用来实施步骤400。在步骤402,量化参数变量被初始化为第一量化参数QP1,而在本实施例中,第一量化参数QP1是设定为前一帧的量化参数值。接着,在步骤404,第一阶段编码是利用步骤402所初始化的量化参数来执行位率及失真最佳化、离散余弦转换/量化、反向量化/反向离散余弦转换和熵编码,然后,重组后的帧和一暂时的比特流就会被产生。在步骤406,测试实际位数R(QP)是否介于(BL×RT,BU×RT)范围内,若是的话,则该暂时比特流会用来产生输出比特流,即QP2=QP,而步骤408会更新资料缓冲状态;否则,由于实际位数R(QP)不介于(BL×RT,BU×RT)范围内,则量化参数值在步骤410会加一或减一。更确切的说,若实际位数R(QP)大于目标位数RT,则量化参数变量便减一;而若实际位数R(QP)大于目标位数RT,则量化参数变量便加一。
步骤412检查量化参数变量和第一量化参数QP1的差量是否小于或等于一预设差量Δ,若是的话,则在步骤414中,离散余弦转换/量化、反向量化/反向离散余弦转换和熵编码便利用新的量化参数变量对残余信号进行第二阶段编码,其中该残余信号是在步骤404的第一阶段产生的,然后,再次执行步骤406;另一方面,若量化参数变量和第一量化参数QP1的差量大于该预设差量Δ,则将第二量化参数QP2设为量化参数以使得实际位数R(QP)和目标位数RT之间有最小的差距,即QP∈(QP1,QP1+Δ)或QP∈(QP1-Δ,QP1)。接着,若步骤416有需要的话,则对该残余信号进行编码,也就是说,若用来对残余信号编码的最后的量化参数是相同于所决定的第二量化参数QP2,则在步骤416就无需再多编码一次。
为了提升所产生的视频序列的品质,在步骤416时可以采用不同的决定第二量化参数QP2的方法。图5至图8分别显示四种不同的状况。在图5和图6的状况中,会让实际位数R(QP)最接近目标位数RT的量化参数在步骤416中则被设定成第二量化参数QP2;另一方面,在图7和图8的状况中,只要编码器未产生缓冲溢位(buffer overflow),则会让实际位数R(QP)大于实际位数RT的量化参数则被设定成第二量化参数QP2,也就是说,在第二阶段编码的编码过程中,当使用所选择的第二量化参数QP2时,一耦接至第二阶段编码装置26的缓冲器21不可产生溢位。在步骤416之后,该缓冲状态会在步骤408被更新。必需注意的是,在本实施例中,该预设的差量是设为3,然而也可使用其它数值。
在本发明的一些具体实施例中,为了得到固定位率,BU和BL值设为相互倒数的关系,即BL=1/BU,在第二阶段的编码中,BU和BL值决定了编码的次数,以及位变异量(bit variation)。从实验量测得知,一些QCIF(Quarter CommonIntermediate Format)形式的序列用64Kbps编码时需要不一样的BL值,即0.9,0.8和0.5。除了前I个帧外,共有150个帧被编码成P帧(P frame),而于实验测试中,是假设缓冲容量足够大。图9为在不同BL的值下所得到的实际位率该每一帧的平均编码次数(N.E)的示意图。N.E值代表了编码的复杂度,例如,1.37的N.E值就表示在第二阶段编码中,100个帧中有37个帧要花额外的时间去执行离散余弦转换/量化、反向量化/反向离散余弦转换和熵编码。另外,图10和图11为在不同的BL值下位变异量的示意图。如图9、图10和图11所示,当BL等于0.9和0.8时具有相同的位率和位变异量,因此取BL=0.8会大幅减少该N.E值,由此可得,在本实施例中,该BL值设为0.8,而BU值则设为其倒数,即1/0.8。
基于视频源(video source)的可变性,以上所述实施例所使用的固定位率对视频序列的编码可能造成巨大的品质变异,换句话说,若可提供一无限容量的缓冲器,则所产生的视频序列将具有固定品质,而要维持不变的品质则无法用该固定位率去达成。因此,为解决在固定位率(CBR)的限制下用一有限容量的缓冲量来减轻品质的变异,则本发明的第二实施例采用的位率控制方法在所编码的视频序列的品质和位率上作取舍。
在该第二实施例中,目标特性配置单元241配置一目标特性给目前帧以做为该目前帧的一目标位数和一目标失真,而实际特性则包含被编码过的目前帧的一实际位数和一实际失真,而且,为了在本实施例中获得不变的品质,目标位率RT和目标失真DT都用来决定该目前帧的第二量化参数QP2。例如,在一实施例中,DT值是前一帧的均方误差值(mean squared error,MSE)的平均值。图12为本发明一实施例中所有为了固定位率而利用位率控制方法所编码的测试序列的第一量化参数和第二量化参数的差值(QP1-QP2)的分布示意图。如图12所示,|QP1-QP2|≤1的机率大于0.95,即在所有帧中发生不连贯的品质变化只有5%,因此,假设相同量化参数值都会产生相同品质的帧,则在本实施例中的位率控制方法可以对具有不连贯品质变化的帧的量化参数值进行调整,以尽量维持不变的编码品质。
在给于目前帧的目标位数RT和目标失真DT的情况下,以下叙述了本实施例中用位率控制维持品质的方法。假设和分别是目标失真DT的上限和下限,以及BU×RT和BL×RT分别是目标位数RT的上限和下限。首先,必需找出会使失真D(QP)介于范围之间的量化参数(QP)值,或使失真D(QP)最接近目标失真DT的量化参数值,即QP∈(QP1-Δ,QP1+Δ)。然后,该量化参数值再用以下法则调整:若BL×RT≤R(QP)≤BU×RT,则QP2=QP;若R(QP)>BU×RT,则第二量化参数QP2=QP+1;或者,若R(QP)<BU×RT,则第二量化参数QP2=QP-1。最后,第二量化参数QP2就会被限制在(QP1-Δ,QP1+Δ)范围内。必需注意的是,跟固定位率的位率控制不一样的是,当执行位率控制以获取不变的品质时,本发明的此一实施例中的缓冲器可能会溢位(overflow)或不足(underflow)。在用以上法则找出第二量化参数QP2后,必需检查在实际位数为R(QP2)时,该缓冲器是否处于溢位或不足的状态,若发生时,则第二量化参数QP2必需再次微调以使缓冲器不会处于溢位和不足的状态。
图13为本发明帧层级位率控制方法的第二实施例的流程图。本方法是依据两阶段编码机制得到固定位率。若大体上所得到的结果是一样的,则图13的流程图所示的步骤不一定得依照所定的顺序,而且也不必是连续的;换句话说,其它步骤也可介于其中。在本实施例中,通过帧层级位率控制得到不变的品质包含下列步骤:
步骤900:配置一目标位数给目前帧。
步骤902:初始化一量化参数变量为第一量化参数QP1的初始值。例如,第一量化参数QP1可以设定为前一帧的量化参数值或量化参数的平均值。
步骤904:利用在步骤902所初始化的量化参数变量(第一量化参数QP1)来进行第一阶段编码。
步骤906:测试提前终止的条件。
步骤908:调整在第二阶段编码的第二量化参数QP2。
步骤910:执行编码后流程(post-encoding process)。
步骤912:更新下一循环的运算的量化参数变量。
步骤914:检查该量化参数值以确保其落于第一量化参数QP1的一预设范围内。
步骤916:利用更新后的量化参数变量进行第二阶段编码。
步骤918:根据第二阶段编码的结果决定出一第二量化参数QP2。
在步骤900,该目标位数和该目标失真会配置给该目前帧。请注意,跟前一实施例相同的是,目标位数RT为假设一固定位率下所决定的,而很多公知技术的方法可以用来配置目标位数RT,而且,在本实施例中,目标失真是设为前一帧的均方误差值(MSE)的平均值。在步骤902中,量化参数变量先被初始化为第一量化参数QP1,而在本实施例中,该量化参数是前一帧的量化参数值。接着,在步骤904,位率及失真最佳化、离散余弦转换/量化、反向量化/反向离散余弦转换和熵编码是利用在步骤902所初始的量化参数来进行第一阶段编码,然后,重组后的帧和暂时的比特流就会被产生。
在步骤906,测试实际失真D(QP)是否介于范围内,若是的话,则量化参数会再次被调整,而第一阶段编码(步骤904)的残余信号会再被编码一次,若有必要的话,会经由位率及失真最佳化、离散余弦转换/量化、反向量化/反向离散余弦转换和熵编码来进行编码,一直到步骤908产生最终的比特流为止。在步骤908,量化参数值再用以下法则来调整:若BL×RT≤R(QP)≤BU×RT,则第二量化参数QP2=QP;若R(QP)>BU×RT,则第二量化参数QP2=QP+1;或者,若R(QP)<BU×RT,则第二量化参数QP2=QP-1。最后,只要缓冲器不处于溢位和不足的状态时,第二量化参数QP2就会被限制在(QP1-Δ,QP1+Δ)范围内。若用来对残余信号编码的最终量化参数跟第二量化参数QP2相同时(例如BL×RT≤R(QP)≤BU×RT),则无需在步骤908再次编码。当编码完成后,缓冲状态会在步骤910被更新。在步骤906,若实际失真D(QP)不是介于范围内的话,则量化参数值在步骤912会加一或减一,更确切的说,若实际失真D(QP)小于目标失真DT,则量化参数变量会加一;而若实际失真D(QP)大于目标失真DT,则量化参数变量便减一。
步骤914检查量化参数变量和该第一量化参数QP1的差量是否小于或等于一预设差量Δ,若是的话,则在步骤916利用新的量化参数变量对残余信号进行第二阶段编码,其中该残余信号是在步骤904的第一阶段产生的,然后,再次执行步骤906;另一方面,若量化参数变量和第一量化参数QP1的差量大于预设差量Δ,则使得实际失真D(QP)和目标失真DT之间有最小的差距的量化参数便在步骤918被找到,即QP∈(QP1,QP1+Δ)或QP∈(QP1-Δ,QP1)。接着,分别执行步骤908和步骤910以产生最终比特流和进行编码后流程。跟前一为了固定位率的实施例相同的是,本发明的此一实施例为了得到固定位率,和值也需设为相互倒数的关系,即 必需注意的是,和值跟BU和BL值一样在第二阶段编码中决定编码的次数。从实验量测得知,在一实施例中,BL和值均设为0.8,因此BU和设为1/0.8。而且,在本实施例中,预设差量Δ设为3。
必需说明的是,本发明也可能具有其它的实施例。举例来说,图14为本发明帧层级位率控制方法的第三实施例的流程图。本方法是依据二阶编码机制。该位率控制方法是确保编码程序满足一目标特性,该目标特性是于每一帧编码前配置给各帧。若大体上所得到的结果是一样的,则图14的流程图所示的步骤不一定得依照所定的顺序,而且也不必是连续的;换句话说,其它步骤可介于其间。在本实施例中,帧层级位率控制包含下列步骤:
步骤1400:配置一目标特性给目前帧。
步骤1402:初始化一量化参数变量为第一量化参数QP1的初始值。例如,第一量化参数QP1可以设定为前一帧的量化参数值或量化参数的平均值。
步骤1404:利用在步骤1402所初始化的量化参数变量(第一量化参数QP1)进行第一阶段编码以产生目前帧的一残余信号和一实际特性。
步骤1406:经由测试在步骤1404中对应到第一量化参数QP1的将被编码的目前帧的实际特性是否落于在步骤1400配置给目前帧的目标特性的一预设范围内,来测试提早终止的条件。若实际特性介于目标特性的预设范围内,则执行步骤1408;否则,执行步骤1412。
步骤1408:执行所需的编码后流程以产生一输出视频比特流。
步骤1412:更新下一循环的运算的量化参数变量。
步骤1414:检查量化参数值以确保其介于第一量化参数QP1的一预设范围内。
步骤1416:利用更新后的量化参数变量进行第二阶段编码。
步骤1418:根据第二阶段编码的先前结果决定出一第二量化参数QP2。
在步骤1406,若实际特性落于目标特性的预设范围内,则在步骤1408中,该输出的视频比特流是根据第一量化参数编码的残余信号所产生的。在步骤1406后,若该实际特性不落于目标特性的预设范围内,则第二阶段编码(步骤1416)会对第一阶段编码的目前帧所产生的残余信号进行编码以得到一第二量化参数QP2,在本实施例,第二阶段编码(步骤1416)是利用量化参数变量对目前帧的残余信号进行编码,由于量化参数变量不同于第一量化参数QP1,因此会产生一相对应的第二残余信号和第二实际特性。然后,步骤1406会再次确认第二实际特性是否落目标特性的预设范围内,在此情况下,步骤1408会根据第二残余信号产生一视频比特流。
若第二实际特性不落于目标特性的预设范围内,则第二阶段编码会一直重复地执行,该第二阶段编码是利用多个不同的量化参数变量对目前帧的残余信号进行编码,因此会产生相对应的多个第二残余信号和第二实际特性。在产生每一个第二实际特性后,步骤1406会再执行一次;若利用一特定量化参数变量对目前帧的残余信号进行编码,而其所产生的一相对应第二实际特性是落于目标特性的预设范围内的话,则该特定量化参数变量会被选取作为步骤1408产生目前帧的视频比特流所使用的量化参数。为了有效率地操作和减少编码时的复杂度,若相对应第二实际特性是落于目标特性的预设范围内的话,则会直接从步骤1406跳至步骤1408,如此一来,就可以根据相对应第二残余信号产生视频比特流,而不需再次对残余信号进行编码。
在步骤1418中,若所有的第二实际特性都大于目标特性的预设范围或者所有的第二实际特性都小于目标特性的预设范围,则最接近该预设范围的第二实际特性的相对应第二量化参数会被选取来于步骤1408中产生目前帧的视频比特流。其它的变化则是,若至少有一个第二实际特性超过目标特性的预设范围,至少有一第二实际特性低于目标特性的预设范围,以及没有任何第二实际特性是落于目标特性的预设范围内,则最接近且超过该预设范围的第二实际特性的相对应第二量化参数会被选取来于步骤1408中产生目前帧的视频比特流。
对于步骤1400,一实施例是配置一目标位数给目前帧,以及该实际特性包含目前帧被编码后所需的实际位数;在另一实施例中,对目前帧的目标特性进行配置的动作包含了配置一目标位数和一目标失真给目前帧,以及该实际特性包含目前帧被编码后的实际位数和实际失真。必需注意的是,在步骤1418选择第二量化参数的编码过程中,必须随时监测缓冲器的状态,也就是说,当利用所选择的第二量化参数对残余信号进行编码时,若该缓冲器处于溢位或不足的状态时,则最接近该预设范围且不会使该缓冲器溢位和不足的第二实际特性所对应的第二量化参数会被选来产生目前帧的视频比特流。
在一视频编码器内使用一帧层级位率控制方法的实施例是确保该编码过程符合一目标特性,而该目标特性是于帧还未被编码前便配置给每一帧。经由配置一目标特性给一目前帧,利用一第一量化参数对该目前帧(其是根据该第一量化参数进行编码)的宏区块进行一第一阶段编码以产生一残余信号和一实际特性,以及测试根据该第一量化参数进行编码的相对应目前帧的实际特性是否落于目前帧的目标特性的一预设范围内,因此该帧层级位率控制便避免了对一些数值(例如微区块均差(MAD)及/或该残余信号的变异量)进行复杂和错误的估测,而且,当视频序列具有可变帧和难以估测的特性时,该目标特性和其精确度仍可获得保证。
在上述说明内容及权利要求书中使用了某些词汇来指称特定的元件,而所属领域中具有通常知识者应可理解,硬件制造商可能会用不同的名词来称呼同一个元件。本说明书及权利要求书并不以名称的差异来作为区分元件的方式,而是以元件在功能上的差异来作为区分的准则。在通篇说明书及权利要求书当中所提及的“包含”为一开放式的用语,故应解释成“包含但不限定于”,以外,“耦接”一词在此是包含任何直接及间接的电气连接手段,因此,若文中描述一第一装置耦接于一第二装置,则代表该第一装置可直接电气连接于该第二装置,或通过其它装置或连接手段间接地电气连接至该第二装置。
以上所述仅为本发明的较佳实施例,凡依本发明申请的权利要求范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (30)
1.一种应用于一视频编码器的一帧层级位率控制的方法,其特征在于,该方法包含有:
配置一目标特性给一目前帧;
利用一第一量化参数对目前帧的宏区块执行一第一阶段编码以产生一残余信号和一实际特性给根据第一量化参数所编码的目前帧;
测试第一量化参数编码的目前帧的实际特性是否落于目前帧的目标特性的一预设范围内;以及
若所述实际特性是落于目标特性的预设范围内,则根据目前帧的残余信号来产生一视频比特流;
若所述实际特性不落于目标特性的预设范围内,则执行一第二阶段编码求出一第二量化参数以对目前帧的残余信号进行编码。
2.如权利要求1所述的方法,其特征在于,所述第二阶段编码利用一不同于第一量化参数的第二量化参数对目前帧的残余信号进行编码以产生一相对应的第二残余信号和一第二实际特性;以及若第二实际特性落于目标特性的预设范围内,则根据第二残余信号输出视频比特流。
3.如权利要求1所述的方法,其特征在于,所述第二阶段编码利用多个不同的第二量化参数对目前帧的残余信号进行编码以产生相对应的多个第二残余信号和多个第二实际特性。
4.如权利要求3所述的方法,其特征在于,另包含:
决定一特定第二量化参数,该特定第二量化参数所产生的一第二实际特性是在所述的多个不同的量化参数中最接近目标特性;以及
选择特定第二量化参数以产生目前帧的一视频比特流。
5.如权利要求3所述的方法,其特征在于,另包含:
于对残余信号进行编码后,马上检测相对应的第二实际特性是否落于目标特性的预设范围内;以及
若相对应的第二实际特性是落于目标特性的预设范围内,则根据相对应的第二残余信号产生视频比特流而不需再用另一第二量化参数对残余信号进行编码。
6.如权利要求3所述的方法,其特征在于,另包含:
若所有的所述多个第二实际特性均不落于目标特性的预设范围内,则选择最接近预设范围的第二实际特性的第二量化参数来产生目前帧的一视频比特流。
7.如权利要求3所述的方法,其特征在于,另包含:
若至少一第二实际特性超过目标特性的预设范围,至少一第二实际特性低于目标特性的预设范围内,以及无任一第二实际特性落于目标特性的预设范围内,则选择超过且最接近预设范围的第二实际特性的第二量化参数来产生目前帧的一视频比特流。
8.如权利要求7所述的方法,其特征在于,另包含:
于利用所选择的第二量化参数对残余信号编码时,若一缓冲器在编码过程中处于溢位状态,则选择另一最接近预设范围且缓冲器不处于溢位和不足状态的第二量化参数以产生目前帧的一视频比特流。
9.如权利要求1所述的方法,其特征在于,另包含:
确保第二量化参数是落于第一量化参数的一预设范围内。
10.如权利要求1所述的方法,其特征在于,配置目标特性给目前帧的步骤包含:配置一目标位数给目前帧;以及实际特性包含编码后的目前帧所需的一实际位数。
11.如权利要求10所述的方法,其特征在于,配置目标特性给目前帧的步骤另包含:配置一目标失真给目前帧;以及实际特性更包含编码后的目前帧的实际失真。
12.如权利要求11所述的方法,其特征在于,另包含有:
若利用一特定第二量化参数对目前帧的残余信号进行编码所产生的一相对应第二实际失真是落于目标失真的预设范围内,则选择特定第二量化参数为一被选取的量化参数;
若目前帧由被选取的量化参数编码后所产生的一实际位数不落于目标位数的一预设范围内,则调整被选取的量化参数以使实际位数更接近目标位数;以及
利用调整后的量化参数对残余信号重新进行编码以产生目前帧的一视频比特流。
13.如权利要求1所述的方法,其特征在于,目标特性的预设范围包含一上限和一下限,以及该上限是该下限的一倒数。
14.如权利要求1所述的方法,其特征在于,另包含有:平均一前一帧的所有宏区块的量化参数以决定出第一量化参数。
15.如权利要求1所述的方法,其特征在于,其是用来提供帧层位率控制予一H.264视频编码器。
16.一种于一视频编码器内执行一帧层级位率控制的装置,其特征在于,该装置包含有:
一目标特性配置单元,用来配置一目标特性给一目前帧;
一第一阶段编码装置,耦接至目标特性配置单元,用来利用一第一量化参数对目前帧执行一第一阶段编码,以产生相对应的一残余信号和一实际特性给根据第一量化参数所编码的目前帧;以及
一位率控制装置,耦接至第一阶段编码装置,以测试根据第一量化参数编码的目前帧的实际特性是否落于目前帧的目标特性的一预设范围内;
其中,若实际特性是落于目标特性的预设范围内,则所述视频编码器根据目前帧的残余信号来产生一视频比特流;
若实际特性不落于目标特性的预设范围内,则由一第二阶段编码装置执行一第二阶段编码求出一第二量化参数以对目前帧的残余信号进行编码。
17.如权利要求16所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,第二阶段编码装置更利用一不同于第一量化参数的第二量化参数对目前帧的残余信号进行编码,以产生一相对应的第二残余信号和一第二实际特性;以及若第二实际特性是落于目标特性的预设范围内,则视频编码器根据第二残余信号产生视频比特流。
18.如权利要求16所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,第二阶段编码装置更利用多个不同的第二量化参数对目前帧的残余信号进行编码,以产生相对应的多个第二残余信号和多个第二实际特性。
19.如权利要求18所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,所述位率控制装置另决定一特定第二量化参数,若利用该特定第二量化参数对目前帧的残余进行编码所产生的一相对应的第二实际特性在第二阶段编码中所述的多个不同的第二量化参数中最接近目标特性,则该特定第二量化参数便用以产生一视频比特流。
20.如权利要求18所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,所述位率控制装置另于对残余信号进行编码后,马上检测相对应的第二实际特性是否落于目标特性的预设范围内以产生相对应的第二残余信号,若相对应的第二实际特性是落于目标特性的预设范围内,则视频编码器根据相对应的第二残余信号产生视频比特流而不需再用另一第二量化参数对残余信号进行编码。
21.如权利要求18所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,若所有所述的多个第二实际特性均不落于目标特性的预设范围内,则位率控制装置另选择最接近预设范围的第二实际特性的第二量化参数以产生目前帧的一视频比特流。
22.如权利要求18所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,若至少一第二实际特性超过目标特性的预设范围,至少一第二实际特性低于目标特性的预设范围,以及无任一第二实际特性落于目标特性的预设范围内,则所述位率控制装置另选择超过且最接近预设范围的第二实际特性的第二量化参数以产生目前帧的一视频比特流。
23.如权利要求16所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,另包含一缓冲器,耦接到第二阶段编码装置并使用于该第二阶段编码的编码过程中,其中若该缓冲器在第二量化参数对残余信号进行编码时处于溢位或不足的状态,则所述位率控制装置会选择另一最接近预设范围且所述缓冲器不处于溢位和不足状态的第二实际特性的第二量化参数以产生目前帧的一视频比特流。
24.如权利要求16所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,所述位率控制装置另确保第二量化参数是落于第一量化参数的一预设范围内。
25.如权利要求16所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,所述目标特性配置单元所配置给目前帧的目标特性是目前帧的一目标位数;以及所述实际特性包含编码后的目前帧所需的一实际位数。
26.如权利要求25所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,所述目标特性配置单元所配置给目前帧的目标特性更包含目前帧的一目标失真;以及所述实际特性更包含编码后的目前帧的实际失真。
27.如权利要求26所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,若利用一特定第二量化参数对目前帧的残余信号进行编码所产生的一相对应第二实际失真是落于目标失真的预设范围内,则所述位率控制装置选择特定第二量化参数为一被选取的量化参数;若目前帧由被选取的量化参数编码后所产生的一实际位数不落于目标位数的一预设范围内,则所述位率控制装置调整所选择的量化参数以使实际位数更接近目标位数;以及利用调整后的量化参数对残余信号重新进行编码以产生目前帧的一视频比特流。
28.如权利要求16所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,预设范围包含一上限和一下限,以及该上限是该下限的一倒数。
29.如权利要求16所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,第一阶段编码装置另平均一前一帧的所有宏区块的量化参数以决定出第一量化参数。
30.如权利要求16所述的于一视频编码器内执行一帧层级位率控制的装置,其特征在于,所述视频编码器为一H.264视频编码器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/160,735 US20090225829A2 (en) | 2005-07-06 | 2005-07-06 | Method and apparatus for operational frame-layerrate control in video encoder |
US11/160,735 | 2005-07-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1893649A CN1893649A (zh) | 2007-01-10 |
CN100481942C true CN100481942C (zh) | 2009-04-22 |
Family
ID=37598078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100957827A Expired - Fee Related CN100481942C (zh) | 2005-07-06 | 2006-07-04 | 于视频编码器进行操作帧层级位率控制的方法与装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090225829A2 (zh) |
CN (1) | CN100481942C (zh) |
TW (1) | TW200704203A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110418134A (zh) * | 2019-08-01 | 2019-11-05 | 字节跳动(香港)有限公司 | 基于视频质量的视频编码方法、装置及电子设备 |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8031774B2 (en) * | 2005-01-31 | 2011-10-04 | Mediatek Incoropration | Video encoding methods and systems with frame-layer rate control |
US8135062B1 (en) * | 2006-01-16 | 2012-03-13 | Maxim Integrated Products, Inc. | Method and apparatus for QP modulation based on perceptual models for picture encoding |
US8306118B1 (en) * | 2006-03-01 | 2012-11-06 | Maxim Integrated, Inc. | High quality low bitrate video coding by enabling and disabling a non-residual mode |
JP4928176B2 (ja) * | 2006-06-27 | 2012-05-09 | キヤノン株式会社 | 映像符号化装置及び映像符号化方法 |
KR100790148B1 (ko) * | 2006-07-27 | 2008-01-02 | 삼성전자주식회사 | 실시간 영상 복잡도 측정 방법 |
JP5351040B2 (ja) | 2006-12-12 | 2013-11-27 | ヴァントリックス コーポレーション | 映像符号化規格に対応した映像レート制御の改善 |
US9455739B2 (en) | 2007-03-14 | 2016-09-27 | Nippon Telegraph And Telephone Corporation | Code amount estimating method and apparatus, and program and storage medium therefor |
ES2931465T3 (es) | 2007-03-14 | 2022-12-29 | Nippon Telegraph & Telephone | Método y aparato de control de cuantificación, programa para el mismo y medio de almacenamiento que almacena el programa |
JPWO2008139721A1 (ja) * | 2007-05-07 | 2010-07-29 | パナソニック株式会社 | 復号化装置及び復号化方法 |
KR101518358B1 (ko) * | 2007-06-19 | 2015-05-08 | 밴트릭스 코오퍼레이션 | 비디오 코딩에서 프레임 복잡성, 버퍼 레벨 및 인트라 프레임들의 위치를 이용하는 버퍼 기반의 비율 제어 |
CN102165772B (zh) * | 2008-09-16 | 2013-07-24 | 杜比实验室特许公司 | 自适应视频编码器控制 |
CN101600125B (zh) * | 2009-06-10 | 2013-06-12 | 无锡中星微电子有限公司 | 一种视频测试码流的筛选方法及其系统 |
PT2476255T (pt) | 2009-09-10 | 2018-07-31 | Guangdong Oppo Mobile Telecommunications Corp Ltd | Técnicas de aceleração para quantização otimizada de distorção de taxa |
EP4354866A3 (en) * | 2010-05-14 | 2024-05-01 | InterDigital VC Holdings, Inc. | Methods and apparatus for intra coding a block having pixels assigned to groups |
US8917774B2 (en) * | 2010-06-30 | 2014-12-23 | Warner Bros. Entertainment Inc. | Method and apparatus for generating encoded content using dynamically optimized conversion |
US9591374B2 (en) | 2010-06-30 | 2017-03-07 | Warner Bros. Entertainment Inc. | Method and apparatus for generating encoded content using dynamically optimized conversion for 3D movies |
US8755432B2 (en) | 2010-06-30 | 2014-06-17 | Warner Bros. Entertainment Inc. | Method and apparatus for generating 3D audio positioning using dynamically optimized audio 3D space perception cues |
US10326978B2 (en) | 2010-06-30 | 2019-06-18 | Warner Bros. Entertainment Inc. | Method and apparatus for generating virtual or augmented reality presentations with 3D audio positioning |
US9112526B2 (en) * | 2011-06-15 | 2015-08-18 | Sony Corporation | Binarization of DQP using separate absolute value and sign (SAVS) in CABAC |
US11245902B2 (en) * | 2011-06-30 | 2022-02-08 | Sony Corporation | Binarization of DQP using separate absolute value and sign (SAVS) in CABAC |
CN102790878B (zh) * | 2011-12-07 | 2015-02-18 | 北京邮电大学 | 一种视频编码的编码模式选择方法及装置 |
GB2501493B (en) * | 2012-04-24 | 2015-05-13 | Canon Kk | Methods for encoding and decoding an image, and corresponding devices |
CN103327284B (zh) * | 2012-12-18 | 2018-11-06 | 南京中兴软件有限责任公司 | 无损视频的传输方法、装置及视频通讯系统 |
US9538190B2 (en) * | 2013-04-08 | 2017-01-03 | Qualcomm Incorporated | Intra rate control for video encoding based on sum of absolute transformed difference |
KR102161741B1 (ko) * | 2013-05-02 | 2020-10-06 | 삼성전자주식회사 | HEVC(high efficiency video coding)에서 코딩 유닛에 대한 양자화 파라미터를 변화시키는 방법과 장치, 및 시스템 |
CN107078852B (zh) | 2017-01-18 | 2019-03-08 | 深圳市大疆创新科技有限公司 | 传输编码数据的方法、装置、计算机系统和移动设备 |
KR102315524B1 (ko) * | 2017-06-16 | 2021-10-21 | 한화테크윈 주식회사 | 영상의 비트레이트 조절 방법 및 영상 획득 장치 |
US10886943B2 (en) * | 2019-03-18 | 2021-01-05 | Samsung Electronics Co., Ltd | Method and apparatus for variable rate compression with a conditional autoencoder |
KR20220036948A (ko) * | 2019-07-05 | 2022-03-23 | 브이-노바 인터내셔널 리미티드 | 비디오 코딩에서 잔차의 양자화 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6094455A (en) * | 1996-09-25 | 2000-07-25 | Matsushita Electric Industrial Co., Ltd. | Image compression/encoding apparatus and system with quantization width control based on bit generation error |
US6834080B1 (en) * | 2000-09-05 | 2004-12-21 | Kabushiki Kaisha Toshiba | Video encoding method and video encoding apparatus |
US7062445B2 (en) * | 2001-01-26 | 2006-06-13 | Microsoft Corporation | Quantization loop with heuristic approach |
US7027982B2 (en) * | 2001-12-14 | 2006-04-11 | Microsoft Corporation | Quality and rate control strategy for digital audio |
US20030152151A1 (en) * | 2002-02-14 | 2003-08-14 | Chao-Ho Hsieh | Rate control method for real-time video communication by using a dynamic rate table |
US7373004B2 (en) * | 2003-05-23 | 2008-05-13 | Silicon Integrated Systems Corp. | Apparatus for constant quality rate control in video compression and target bit allocator thereof |
US7720145B2 (en) * | 2004-05-13 | 2010-05-18 | Ittiam Systems (P) Ltd. | Model based bit rate control for a macroblock encoder |
-
2005
- 2005-07-06 US US11/160,735 patent/US20090225829A2/en not_active Abandoned
-
2006
- 2006-05-11 TW TW095116707A patent/TW200704203A/zh unknown
- 2006-07-04 CN CNB2006100957827A patent/CN100481942C/zh not_active Expired - Fee Related
Non-Patent Citations (8)
Title |
---|
A New Rate Control Scheme Using QuadraticRate Distortion Model. Tihao Chiang ,Ya-Qin Zhang.IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY,Vol.7 No.1. 1997 |
A New Rate Control Scheme Using QuadraticRate Distortion Model. Tihao Chiang ,Ya-Qin Zhang.IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY,Vol.7 No.1. 1997 * |
A NOVEL RATE CONTROL FOR H.264. Jianfeng Xu, Yun He.Proceedings of 2004 IEEE International Symposium on Circuits and Systems,Vol.3 . 2004 |
A NOVEL RATE CONTROL FOR H.264. Jianfeng Xu, Yun He.Proceedings of 2004 IEEE International Symposium on Circuits and Systems,Vol.3. 2004 * |
ADAPTIVE FRAME LAYER RATE CONTROL FOR H.264. Z. G. Li, F. Pan, K. P. Lim, G. N. Feng,X.Lin,S.Rahardja,D. J. Wu.Proceedings of 2003 International Conference on Multimedia and Expo,Vol.1 . 2003 |
ADAPTIVE FRAME LAYER RATE CONTROL FOR H.264. Z. G. Li, F. Pan, K. P. Lim, G. N. Feng,X.Lin,S.Rahardja,D. J.Wu.Proceedings of 2003 International Conference on Multimedia and Expo,Vol.1. 2003 * |
一种精细的H. 264 码率控制方法. 李蔷,余松煜.系统工程与电子技术,第26卷第12期. 2004 |
一种精细的H. 264 码率控制方法. 李蔷,余松煜.系统工程与电子技术,第26卷第12期. 2004 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110418134A (zh) * | 2019-08-01 | 2019-11-05 | 字节跳动(香港)有限公司 | 基于视频质量的视频编码方法、装置及电子设备 |
CN110418134B (zh) * | 2019-08-01 | 2021-10-26 | 字节跳动(香港)有限公司 | 基于视频质量的视频编码方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
US20070009025A1 (en) | 2007-01-11 |
US20090225829A2 (en) | 2009-09-10 |
TW200704203A (en) | 2007-01-16 |
CN1893649A (zh) | 2007-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100481942C (zh) | 于视频编码器进行操作帧层级位率控制的方法与装置 | |
CN1136734C (zh) | 可变比特率视频编码方法及相应的视频编码器 | |
CN101115208B (zh) | 图像编码装置 | |
KR100953152B1 (ko) | 비디오 인코더에서 매크로블록 양자화 파라미터들을선택하기 위한 방법 및 장치 | |
JP7421492B2 (ja) | Cabacのニューラルネットワーク実装に基づくビデオの符号化及び復号のための方法及び機器 | |
CN100463523C (zh) | 帧层速率控制的视讯编码方法和系统 | |
CN100593955C (zh) | 用于以帧间或帧内模式编码视频图像的方法和设备 | |
CN101911702A (zh) | Cabac编码器的基于速率-失真建模的量化 | |
CN101971635B (zh) | 针对视频编码中的速率控制精度的方法及装置 | |
CN101518088A (zh) | 针对有效速率控制和增强视频编码质量的ρ域帧级比特分配的方法 | |
CN1130916C (zh) | 运动估计方法 | |
CN102055977A (zh) | 使用多个参考帧的快速运动估计方法 | |
CN100553335C (zh) | 一种视频转码中宏块级码率控制方法 | |
WO2007043609A1 (ja) | 画像符号化方法及び、これを用いた装置とコンピュータプログラム | |
KR20100018033A (ko) | 영상 부호화 장치 및 방법, 영상 부호화 프로그램 및 그 프로그램을 기록한 기록 매체 | |
CN100581262C (zh) | 基于ρ域的视频编码码率控制方法 | |
CN101335891B (zh) | 视频速率控制方法及视频速率控制器 | |
CN101411200B (zh) | 对视频信号进行编码的方法 | |
CN101179729A (zh) | 一种基于帧间模式统计分类的h.264宏块模式选择方法 | |
CN101072355B (zh) | 一种加权预测运动补偿方法 | |
CN1457196A (zh) | 基于时空域相关性运动矢量预测的视频编码方法 | |
KR101377833B1 (ko) | 분석적이고 경험적인 하이브리드 인코딩 왜곡 모델링을 위한 방법 및 장치 | |
KR100713400B1 (ko) | 평균 히스토그램 오차 방식을 이용한 h.263/mpeg비디오 인코더 및 그 제어 방법 | |
CN100505874C (zh) | 一种视频编码速率控制的方法 | |
US20080152009A1 (en) | Scaling the complexity of video encoding |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090422 Termination date: 20190704 |
|
CF01 | Termination of patent right due to non-payment of annual fee |