CN102158702B - 自适应h.264码率控制方法 - Google Patents
自适应h.264码率控制方法 Download PDFInfo
- Publication number
- CN102158702B CN102158702B CN 201110103403 CN201110103403A CN102158702B CN 102158702 B CN102158702 B CN 102158702B CN 201110103403 CN201110103403 CN 201110103403 CN 201110103403 A CN201110103403 A CN 201110103403A CN 102158702 B CN102158702 B CN 102158702B
- Authority
- CN
- China
- Prior art keywords
- frame
- gop
- scf
- scene switching
- mad
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明提供了一种自适应H.264码率控制方法,属于视频编码技术领域。本发明方法首先根据帧复杂度系数定义场景切换因子,然后根据每一帧场景切换因子自适应地分配该帧的目标比特。本发明方法的场景切换因子能够有效应对视频序列中可能出现的场景切换,可以更有效地实现码率控制,有效的改善场景切换对视频质量的影响,在压缩后图像质量、信道带宽和编码器缓冲区占用度之间取得了较好的平衡,并且保持了较低的编码器缓冲区占用度。
Description
技术领域
本发明涉及发明一种基于场景切换的自适应H.264码率控制方法,属于视频编码技术领域。
背景技术
作为新一代的国际视频压缩标准,H.264吸收了以往各种编码方案,特别是MPEG-2和H.263++的优点,同时也集中了当前若干先进的编码技术。自2003年正式颁布以来,H.264就引起了工业界和学术界的广泛关注。
实际视频系统的信道速率和存储空间总是一定的。为了使编码产生的码率与不同带宽的信道相匹配,码率控制成了视频通信系统中一个重要环节,它对视频质量有着重要的影响。
在H.264的码率控制方法中,由于同时在码率控制和率失真优化环节使用了量化参数,导致了“蛋鸡悖论”,即对当前帧的宏块进行率失真优化时,需要先通过当前帧或当前宏块的MAD决定每个宏块的量化参数,而当前帧或宏块的MAD仅在率失真优化后才能得到[MaS.W,Gao W and Lu Y.Rate control on JVT standard,Document JVT-D030.2002]。为了解决“蛋鸡悖论”问题,很多学者做了大量的研究,文献[Shin I H,Lee Y L,Park H W.Rate control usinglinear rate-ρmodel for H.264.Signal Process Image Communication,2004,19:341-352.]在ρ域模型的基础上作了改进,应用在H.264的码率控制中,文献[Ma Siwei,Gao Wen,Lu Yan.Rate-distortion analysis for H.264/AVC video coding and its application to rate control.IEEE Transon Circuit Syst for Video Technol,2005,15(12):1533-1544.]提出了码率与量化步长与量化步长间的关系模型及相应的码率控制方法。Li Zhengguo提出的JVT-G012方法利用线性MAD模型来预测当前基本单元的MAD值,这一方法可以获得比较好的编码效果,引起了广泛的关注[Li Zhengguo,Gao Wen,Pan Feng,et al.Adaptive rate control for H.264.Journal of VisualCommunication and Image Representation,2006,17(2):376-406.]
JVT-G012方法的基本前提是场景类似,在没有场景切换的情况下处理效果比较好。而在场景切换后视频质量会出现严重的下降。其主要原因一方面由于采用了固定长度的图像组(GOP)结构,不能有效地检测到视频序列中的场景切换,另一方面该方法主要根据线性模型来分配比特数和确定编码量化参数,当有场景切换时,预测的MAD值偏差较大,导致场景切换帧后续各帧编码质量严重下降。
针对H.264/AVC的码率控制中的场景切换问题,出现了多种码率控制方法。考虑场景切换的码率控制有两种常见方法:一是基于场景切换检测的,在检测到场景切换后,终止当前GOP,并开始新的GOP,这样避免了一个GOP内出现两帧比特耗费过多的情况,因此能较好地解决场景切换问题;二是根据场景变化的程度自适应地调整量化参数,这样可以弥补了JVT-G012不考虑帧的复杂度而进行的比特平均分配。已有的场景切换检测方法主要有几种:基于灰度值的检测,基于帧内模式宏块数统计,基于运动搜索检测和基于边缘检测。基于边缘检测方法具有比较好的性能,但是方法要用到计算机图像识别技术,方法很复杂,这点极大地限制了其应用[M.Sharifi,M.Fathy,M.T.Mahmoudi,“A classified and comparativestudy ofedge detection algorithms”,in:Proceedings ofthe IEEE ITCC,2002,pp.117–120.]。基于帧内模式宏块数统计方法[D.Lelescu,D.Schonfeld,“Statistical sequential analysis forreal-time video scene change detection on compressed multimedia bitstream”,Multimedia,IEEETransactions,vol.5,no.1,pp.106-117,2003.]以及基于运动搜索检测的方法[R.Lienhart,“Reliable transition detection in videos:A survey and practitioner’s guide”,International Journalof Image and Graphics,vol.1,no.3,pp.469-486,2001.]都需要先对当前帧编一次码,适用于二次编码的序列。基于灰度值绝对差的方法[W.Fernando,C.Canagarajah,D.Bull.“Fade-in andFade-out Detection in video sequence using Histograms”,ISCAS 2000-IEEE InternationalSymposium on Circuit and Systems,May 28-31,2000.]能较好地反应场景变化程度,但是一旦涉及全局运动且图像内相关性不强时,灰度值绝对差会非常大,故不能反应此时真实的复杂度。
发明内容
本发明的目的在于克服现有技术的不足,提出了一种新的处理场景切换的自适应H.264码率控制方法。
本发明的自适应H.264码率控制方法,包括以下步骤:
1)根据帧复杂度系数引入场景切换因子,根据场景切换因子确定当前编码帧的目标比特数;
本步骤包括以下各步骤:
①按照下式计算未编码帧的剩余比特数:
其中,Tr(ni,j)表示第i个GOP层编码至第j帧时剩余的总比特数,u(ni,1)表示编码第一帧前的可用信道带宽,Fr为帧率,Ngop表示该GOP层中图像帧的个数,Bs为缓冲区的大小,表示第i-1个GOP层中最后一帧编码结束后缓冲区的实际占有率,A(ni,j-1)是第i个GOP层第j-1帧实际产生的比特数;
②按照如下公式计算当前编码帧的场景切换因子:
其中,λ为常数;scfj是第j帧的场景切换因子;j为第i个GOP层中帧的序号,取值范围为1到第i个GOP层中包含的总帧数;i为视频序列中GOP层的序号,取值范围为1到视频序列中GOP层数;FCj是第j帧复杂度系数:
FCj=μMADratio(i,j)+(1-μ)Cj
其中,μ是权系数, hj表示当前编码帧的灰度直方图,hj-1表示前一帧重建帧的灰度直方图,MAD(i,j)=a1×MAD(i,j-1)+a2,a1和a2为一元线性回归系数,其初始值分别为1和0,并在每个帧编码完成之后更新,
③根据下式计算当前编码帧的目标比特数:
其中,Tj表示第i个GOP层中第j帧的目标比特数,Fr表示帧率,u(ni,j)表示信道可利用的带宽,Tbl(ni,j)表示目标缓冲级别,Bc(ni,j)为缓冲区占用度,β、γ为加权系数,β在有B帧时为0.9,否则为0.5;γ当GOP内有B帧时,它的值为0.25,否则为0.75;
2)计算量化参数并进行率失真优化;
根据下式计算第i个GOP中第j帧的量化参数Q:
a、b表示模型参数,通过线性回归统计计算得到;然后用拉格朗日优化法进行率失真优化。
本发明的方法首先根据帧复杂度系数定义场景切换因子,然后根据每一帧场景切换因子自适应地分配该帧的目标比特。场景自适应的方法就是无须进行场景切换的检测,而是考虑相邻帧之间场景的相对变化。不同于基于场景切换检测的方法,无需改变GOP的结构,不需要明确地判断是否发生场景切换,也就避免了漏检和误判。
本发明的场景切换因子能够有效应对视频序列中可能出现的场景切换,可以更有效地实现码率控制,有效的改善场景切换对视频质量的影响,在压缩后图像质量、信道带宽和编码器缓冲区占用度之间取得了较好的平衡,并且保持了较低的编码器缓冲区占用度。
附图说明
图1是本发明方法与JVT-G012方法处理foreman-mobile序列PSNR(峰值信噪比)的比较图;
图2是本发明方法与JVT-G012方法处理football-foreman-mobile-suzie序列PSNR的比较图;
图3是本发明方法与JVT-G012方法处理football-foreman-mobile-suzie序列缓冲区占用度比较图。
具体实施方式
下面结合附图对本发明的技术方案进行详细说明:
本发明的H.264码率控制方法具体包括以下步骤:
1)根据帧复杂度系数引入场景切换因子,根据场景切换因子确定当前编码帧的目标比特数;
本步骤包括以下各步骤:
①按照下式计算未编码帧的剩余比特数:
其中,Tr(ni,j)表示第i个GOP层编码至第j帧时剩余的总比特数,u(ni,1)表示编码第一帧前的可用信道带宽,Fr为帧率,Ngop表示该GOP层中图像帧的个数,Bs为缓冲区的大小,表示第i-1个GOP层中最后一帧编码结束后缓冲区的实际占有率,A(ni,j-1)是第i个GOP层第j-1帧实际产生的比特数;
②按照如下公式计算当前编码帧的场景切换因子:
其中,λ为常数;scfj是第j帧的场景切换因子;j为第i个GOP层中帧的序号,取值范围为1到第i个GOP层中包含的总帧数;i为视频序列中GOP层的序号,取值范围为1到视频序列中GOP层数;FCj是第j帧复杂度系数:
FCj=μMADratio(i,j)+(1-μ)Cj
其中,μ是权系数, hj表示当前编码帧的灰度直方图,hj-1表示前一帧重建帧的灰度直方图,MAD(i,j)=a1×MAD(i,j-1)+a2,a1和a2为一元线性回归系数,其初始值分别为1和0,并在每个帧编码完成之后更新,
③根据下式计算当前编码帧的目标比特数:
其中,Tj表示第i个GOP层中第j帧的目标比特数,Fr表示帧率,u(ni,j)表示信道可利用的带宽,Tbl(ni,j)表示目标缓冲级别,Bc(ni,j)为缓冲区占用度,β、γ为加权系数,β在有B帧时为0.9,否则为0.5;γ当GOP内有B帧时,它的值为0.25,否则为0.75;
其中,Tr(ni,j)是第i个GOP层编码至第j帧时剩余的总比特数,Nr是剩余待编码的P帧数;
2)计算量化参数并进行率失真优化;
根据下式计算第i个GOP中第j帧的量化参数Q:
a、b表示模型参数,通过线性回归统计计算得到;然后用拉格朗日优化法进行率失真优化。
本步骤中量化参数计算及率失真优化均为现有技术,详细内容可参考文献(LiZheng-guo,Pan Feng,Lim Keng-pang,et al.Adaptive base unit layer rate control for JVT,JVT-G012.Proceedings of7th Meeting,Pattay II,Thailand,2003.),此处不再赘述。
为了验证本发明的有效性,在JVT的校验模型JM8.6上实现了本发明提出的码率控制改进方法,并和JVT-G012提案中的码率控制方法进行了对比。实验使用的测试序列是标准序列的合成序列:suzie-football(由suzie、football各前50帧合成)、foreman-mobile(由foreman、mobile各前50帧组成)、foreman-silent-news(由foreman、silent和news各前50帧组成)、bus-coastguard-news(由bus、coastguard和news各前50帧组成)、football-foreman-mobile-suzie(由football、foreman、mobile和suzie各前25帧组成)。其他测试条件为:QCIF4:2:0格式;QCIF大小;帧率为15帧/s;起始QP为28;IPPP传统GOP结构。得到的实验结果如下表表1所示:
表1
从上表中可以看出,与以前的码率控制方法相比,本发明的码率控制方法可以准确地控制码率,而且本发明的码率控制方法还能获得更好的序列峰值信噪比(PSNR)。该方法在一定程度上能够有效地平滑帧间的PSNR波动(PSNR deviation减小),提高了视频序列的平滑性。
图1、图2分别为foreman-mobile和football-foreman-mobile-suzie测试序列分别采用两种方法时的PSNR对比图,图中JM8.6表示采用JVT-G012码率控制方法进行编码,Proposed表示采用本发明的码率控制方法编码。可以看出改进方法有明显的提高。
图3为分别采用两种方法处理football-foreman-mobile-suzie序列时的缓冲区占用度对比图,图中JM8.6表示采用JVT-G012码率控制方法进行编码,Proposed表示采用本发明的码率控制方法编码。从图中可看出,本发明方法的缓冲区占用度波动较小,有效地避免了可能出现的上溢。
相比现有技术,本发明方法在准确控制码率的同时,有效的改善场景切换对视频质量的影响,在压缩后图像质量、信道带宽和编码器缓冲区占用度之间取得了较好的平衡,并且保持了较低的编码器缓冲区占用度,可用于视频编解码芯片的设计制造,具有良好的应用前景。
Claims (1)
1.自适应H.264码率控制方法,其特征在于,包括以下步骤:
1)根据帧复杂度系数引入场景切换因子,根据场景切换因子确定当前编码帧的目标比特数;本步骤包括以下各步骤:
①按照下式计算未编码帧的剩余比特数:
其中,Tr(ni,j)表示第i个GOP层编码至第j帧时剩余的总比特数,u(ni,1)表示编码第一帧前的可用信道带宽,Fr为帧率,Ngop表示该GOP层中图像帧的个数,Bs为缓冲区的大小,表示第i-1个GOP层中最后一帧编码结束后缓冲区的实际占有率,A(ni,j-1)是第i个GOP层第j-1帧实际产生的比特数;
②按照如下公式计算当前编码帧的场景切换因子:
其中,λ为常数;scfj是第j帧的场景切换因子;j为第i个GOP层中帧的序号,取值范围为1到第i个GOP层中包含的总帧数;i为视频序列中GOP层的序号,取值范围为1到视频序列中GOP层数;FCj是第j帧复杂度系数:
FCj=μMADratio(i,j)+(1-μ)Cj
并在每个帧编码完成之后更新,
③根据下式计算当前编码帧的目标比特数:
其中,Tj表示第i个GOP层中第j帧的目标比特数,Fr表示帧率,u(ni,j)表示信道可利用的带宽,Tbl(ni,j)表示目标缓冲级别,Bc(ni,j)为缓冲区占用度,β、γ为加权系数,β在有B帧时为0.9,否则为0.5;γ当GOP内有B帧时,它的值为0.25,否则为0.75;
2)计算量化参数并进行率失真优化;
根据下式计算第i个GOP中第j帧的量化参数Q:
a、b表示模型参数,通过线性回归统计计算得到;然后用拉格朗日优化法进行率失真优化。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110103403 CN102158702B (zh) | 2011-04-25 | 2011-04-25 | 自适应h.264码率控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110103403 CN102158702B (zh) | 2011-04-25 | 2011-04-25 | 自适应h.264码率控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102158702A CN102158702A (zh) | 2011-08-17 |
CN102158702B true CN102158702B (zh) | 2013-01-30 |
Family
ID=44439845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110103403 Expired - Fee Related CN102158702B (zh) | 2011-04-25 | 2011-04-25 | 自适应h.264码率控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102158702B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067720B (zh) * | 2013-02-05 | 2015-06-10 | 南京信息工程大学 | 一种基于h.264视频编码标准的宏块层码率控制方法 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102752591B (zh) * | 2012-06-14 | 2014-09-17 | 南京信息工程大学 | 基于综合因子的h.264码率控制方法 |
CN103051897B (zh) * | 2012-12-26 | 2016-02-24 | 南京信息工程大学 | 一种h264视频编码码率控制方法 |
CN106254873B (zh) * | 2016-08-31 | 2020-04-03 | 广州市网星信息技术有限公司 | 一种视频编码方法及视频编码装置 |
CN107820087B (zh) * | 2017-10-26 | 2020-01-03 | 济南中维世纪科技有限公司 | 根据移动侦测结果动态调节码率的方法 |
CN108924611B (zh) * | 2018-06-27 | 2020-11-27 | 曜科智能科技(上海)有限公司 | Abr编码码率控制优化方法、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101188752A (zh) * | 2007-12-18 | 2008-05-28 | 方春 | 一种基于相关性的自适应码率控制方法 |
CN101262603A (zh) * | 2008-03-27 | 2008-09-10 | 方春 | 一种新的快速高效自适应码率控制方法 |
CN101494776A (zh) * | 2009-02-13 | 2009-07-29 | 北京邮电大学 | 一种h.264码率控制方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8179961B2 (en) * | 2006-07-17 | 2012-05-15 | Thomson Licensing | Method and apparatus for adapting a default encoding of a digital video signal during a scene change period |
GB2459671A (en) * | 2008-04-29 | 2009-11-04 | Imagination Tech Ltd | Scene Change Detection For Use With Bit-Rate Control Of A Video Compression System |
-
2011
- 2011-04-25 CN CN 201110103403 patent/CN102158702B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101188752A (zh) * | 2007-12-18 | 2008-05-28 | 方春 | 一种基于相关性的自适应码率控制方法 |
CN101262603A (zh) * | 2008-03-27 | 2008-09-10 | 方春 | 一种新的快速高效自适应码率控制方法 |
CN101494776A (zh) * | 2009-02-13 | 2009-07-29 | 北京邮电大学 | 一种h.264码率控制方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067720B (zh) * | 2013-02-05 | 2015-06-10 | 南京信息工程大学 | 一种基于h.264视频编码标准的宏块层码率控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102158702A (zh) | 2011-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102158702B (zh) | 自适应h.264码率控制方法 | |
CN102630013B (zh) | 基于场景切换的码率控制视频压缩方法和装置 | |
CN103248893B (zh) | 从h.264/avc标准到hevc标准的快速帧间转码方法及其转码器 | |
CN101547349B (zh) | 一种对视频信号的二次avs编码码率控制的方法 | |
CN101461248B (zh) | 自适应地确定用于视频图像编码的比特预算的方法和设备 | |
CN103873861B (zh) | 一种用于hevc的编码模式选择方法 | |
CN102137263B (zh) | 基于cnm关键帧分类的分布式视频编码及解码方法 | |
CN101895759B (zh) | 一种h.264码率控制方法 | |
CN102025995B (zh) | 一种可伸缩视频编码的空间增强层快速模式选择方法 | |
CN105049850A (zh) | 基于感兴趣区域的hevc码率控制方法 | |
CN101710993A (zh) | 基于块的自适应超分辨率视频处理方法及系统 | |
CN104378643A (zh) | 一种3d视频深度图像帧内预测模式选择方法及系统 | |
CN100574447C (zh) | 基于avs视频编码的快速帧间预测模式选择方法 | |
CN103634606A (zh) | 视频编码方法和装置 | |
CN103384325A (zh) | 一种avs-m视频编码快速帧间预测模式选择方法 | |
CN101895758B (zh) | 基于帧复杂度的h.264码率控制方法 | |
CN101621683A (zh) | 一种基于avs的快速立体视频编码方法 | |
CN105120282A (zh) | 一种时域依赖的码率控制比特分配方法 | |
CN102752591B (zh) | 基于综合因子的h.264码率控制方法 | |
CN103384327A (zh) | 基于自适应阈值的avs快速模式选择算法 | |
CN103391439B (zh) | 一种基于主动宏块隐藏的h.264/avc码率控制方法 | |
CN102196253B (zh) | 一种帧类型自适应选择的视频编码方法及装置 | |
CN100586186C (zh) | 一种快速帧间预测模式选择方法 | |
CN101557519B (zh) | 一种多视点视频编码方法 | |
CN103747257B (zh) | 一种视频数据高效编码的方法 |
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: 20130130 Termination date: 20150425 |
|
EXPY | Termination of patent right or utility model |