基于场景切换的H.264码率控制技术

2008-03-18 15:04:34编辑:ssb 关键字:场景切换  视频序列  编码  P帧  帧内  QCIF  算法复杂度  帧间预测  量化参数

  摘 要:在H.264/AVC编码器中,由于采用了固定长度的图像组(GOP)结构,不能有效地处理视频序列中的场景切换,导致场景切换帧后续各帧编码质量严重下降。为了有效解决该问题。提出一种自适应的码率控制算法,通过场景切换的快速检测方法检测视频序列中的场景切换,在场景切换帧处终止当前COP并对GOP层的码率分配算法做出修正。仿真结果表明:采用该算法可以有效地降低场景切换对后续帖编码质量的影响,而且合理地分配码率资源,提高了整个视频序列的编码质量。在相同码率条件下,整体编码质量可以提高0.3~O.5 dB。

  关键词:视频编码;自适应码率控制;场景切换检测

  码率控制技术在带宽受限的多媒体通信系统中具有重要的作用。传统的视频通信码率控制算法,如H.264/AVC编码器中采用的码率控制算法,在将码率资源分配到图像组(GOP)中各帧图像时,仅仅考虑了各帧图像自身的复杂度,而忽视了同GOP中各帧图像之间的相关性,如对含有频繁场景切换的视频序列进行编码时,GOP中某帧图像可能因出现场景切换而与其参考帧之间毫无相关性,如果仍然采用传统的码率控制方法,将导致图像编码资源浪费和编码质量的下降。

  本文提出一种自适应改变GOP长度的码率控制算法,可以有效地节省码率资源,并且能够有效地提高场景切换帧后续各帧的编码质量和序列整体的编码质量。

  1 码率控制技术与视频场景切换

  由于视频序列中I、P及B帧编码后产生的比特数不一样,为了使输出码流速率与信道速率相匹配,提高信道利用率,一般在编码器和信道之间加一个缓冲区,而缓冲区容量大小与通信时延的要求构成了一对新的矛盾,码率控制的目的就是为了解决这一矛盾。对于编码器来说,一个鲁棒的码率控制算法应该在充分利用带宽资源和保证缓冲区不溢出的前提下,将有限的码率资源进行合理分配,获得尽可能好的编码质量。

  当视频序列中出现场景切换时,其编码质量将受到影响,影响程度取决于场景切换帧在其所处GOP中的位置。当场景切换发生在I帧时,由于I帧采用帧内编码模式,场景切换对于I帧本身不会产生任何影响,同时也不会对后续帧的预测编码产生影响;由于B帧为双向预测,只要其前后2个参考帧有1帧与其处于同一场景中(假设序列中没有连续2帧同时发生场景切换),其预测编码的精度仍然能够得到保证,编码质量不会受到很大影响。不同于I帧和B帧,当场景切换发生在P帧,对当前GOP编码质量的影响相当大:首先,由于当前P帧与其参考帧处于不同的场景中,帧间预测编码将完全失效,宏块必须通过RDO(rate-distortion optimiza-tion)模式选择后才采取帧内编码,优化过程极大浪费了编码时间;其次,由于绝大多数宏块采用帧内编码模式,占用了大量的码率资源,使得后续各帧由于码率资源缺乏而编码质量下降,此影响还会延续至后续的GOP。

  图1给出了一个有5处场景切换的测试序列(详见2.3节)在80 kb/s码率条件下各帧编码比特曲线和Y分量PSNR(峰值信噪比)曲线。同时,表1也给出了场景切换帧前10帧和后10帧Y分量平均PSNR值数据及其变化值。由图中(虚线表示场景切换帧位置)可以看出,在场景切换时,当前帧将占用较多编码比特资源,从而导致后续帧由于码率资源缺乏而PSNR值下降,详细数据可见表1。

  

  

  现实中的视频序列,不可避免存在场景切换。如果编码器不考虑场景切换的影响,就会浪费有限的码率资源,从而导致编码质量下降。目前,针对场景切换提出了很多码率控制算法,其中常用的方法是通过改变GOP的结构和长度来重新分配码率资源。如在文的算法中,当检测到场景切换时,当前GOP剩余帧和下一个GOP的所有帧合并为一个GOP,因此,GOP长度要比默认长度N大,最糟的情况下为2N-1。由于GOP过长容易导致缓冲区的溢出,并且导致GOP中后面部分帧的编码性能下降。在文提出的算法中,采取将过长的GOP拆分成2个新的GOP来解决这个问题,但这样做的后果是导致增加一个I帧,造成码率资源的浪费。本文算法与文相比,不额外增加I帧的数量,可以有效地节省码率资源,同时有效地提高场景切换帧后续各帧的编码质量和序列整体的编码质量。

  2 针对场景切换的自适应码率控制算法

  2.1 自适应码率控制算法

  在该算法中,当前GOP的长度将随着场景切换帧的出现自适应地改变,并且同时对码率资源进行重新分配。假设默认的GOP长度为N,分配给每个GOP的码率资源为

  其中:B表示带宽;F表示帧速率;Rprev表示前一个GOP编码剩余比特或超支比特。对于第1个GOP来说,Rprev=0。每编码一帧图像,R更新如下:

  其中Sipb为刚编码帧(可能为I帧、P帧或B帧)所用的比特数。当GOP所有帧编码完毕后,Rprev=R。

  假设当前GOP在编码M(M

  照式(1)计算并不合适,应由下式决定:

  由于GOP提前终止,其未编码的N-M帧应分配的编码比特数为

  这部分比特应该从当前GOP按照式(1)计算的预分配码率中减去,则当前GOP提前终止时,Rprev应该修正如下:

  当前GOP提前终止后对Rprev做出修正,根据式(1)则可计算出下一个GOP的预分配码率,并开始下一个GOP的编码。

  本算法的前提是必须能检测出场景切换,因此,快速有效地检测检测出场景切换是十分必要的。

  2.2 视频场景切换快速检测算法

  视频场景切换包含如下几种类型:突变场景切换、消融和淡入淡出等。目前,已有的场景切换检测算法分为3类:基于灰度值检测、基于运动搜索检测和基于边缘轮廓检测。虽然后2种检测算法具有比较好的性能,但是算法的高复杂度极大地限制了它们的应用,尤其是在对于实时性要求比较高的视频通信码率控制算法中。

  通过对视频序列的统计分析发现,当有场景切换时,当前帧与其参考帧在灰度和色彩信息上有很大的区别,而没有场景切换的时候,整个序列的灰度和色彩基本处于平稳或者缓变的状态。选择mobile和grandma 2个YUV视频序列(无场景切换),其各分量(Y为亮度分量,U、V为色度分量)的均值变化缓慢,如图2所示。同时,对于有频繁场景切换的视频序列(以CNN新闻摘要片断和一个构造序列为例),可知在场景切换处,3个分量的均值全部或部分出现突变,如图3所示。

  

  

  图中mean(x)为枧频序列X分量的均值,X代表视频序列的Y、U、V 3个分量。

  通过以上分析可知,当图像序列的各分量的均值发生突变时,一般来说是有场景切换发生。据此,采用当前帧和参考帧3个分量均值的绝对差值作为判断当前帧图像是否有场景切换的差异函数为

  

  

  其中:mean()为均值函数;Scur和Sref分别表示当前帧图像和其参考帧图像;X代表其3个分量。

  根据差异函数,判断是否有场景切换可以依据式(7)和(8):

  

  

  当式(7)和式(8)同时满足时,可以判定当前帧有场景切换发生。式中:mean(Y)、mean(U)和mean(V)分别为当前GOP内当前帧之前所有帧各分量均值的平均值;tTHl和tTH2为判决门限系数,分别描述当前帧和参考帧之间亮度和色度均值的相对差异和绝对差异。

  显然,上述算法只需要计算各帧图像3个分量的均值,算法复杂度非常低,很适合于码率控制等实时性要求高的应用中。通过对超过2105帧的视频序列进行仿真,超过90%的场景切换能够被检测出来,并且误检率几乎为0。

  2.3 仿真结果

  为了验证提出的码率控制算法,本文采用图3中两个序列进行验证。一个是CNN新闻摘要中一段序列(QCIF,277帧共9处场景切换),另一个为将23帧grandma、38帧foreman、27帧news、41帧sales、33帧silent和29帧table合成为一个测试序列(QCIF,191帧共有5处场景切换)。采用本文提出的快速场景切换检测算法,2个序列共14处场景切换可以全部被检测出,其中2个参数tTH1和tTH2分别设为0.1和10。采用JM8.6平台,测试序列编码采取IPPP结构,默认GOP长度为10。

  通过对本文提出的算法和JM8.6算法进行仿真比较可知,采用本文的算法,可以有效降低场景切换对后续帧编码质量的影响,且更合理地分配码率资源,使编码后的视频图像质量更平稳,同时也可以从整体上提升了视频序列的编码质量。表1列出了

  采用本文算法与JM8.6算法时,测试序列各场景切换点前后10帧Y分量PSNR均值变化情况,从中可以看出采用本文算法可以有效提高场景切换点后续帧的编码质量;图4给出了2种算法下测试序列3个分量PSNR值变化曲线,从图中可以看出,采用本文的算法,重建视频质量更加平稳,同时也提高了整个序列的平均编码质量,仿真结果表明当给定码率为80 kb/s,量化参数

[1] [2]

关键字:场景切换  视频序列  编码  P帧  帧内  QCIF  算法复杂度  帧间预测  量化参数

来源: 清华大学 引用地址:http://www.eeworld.com.cn/afdz/2008/0318/article_525.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:中国监控市场将迎来增长高潮
下一篇:H.264中基于编码模式的自适应重叠块运动补偿

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

基于场景切换的H.264码率控制技术

kb/s,量化参数Qp初始值为32时,序列3个分量的PSNR值平均可以提高0.36 dB、0.42dB、0.37 dB。对CNN视频序列进行仿真,也可以得到与表1和图4相似的结果,在码率为80 kb/s,初始Qp值为32时序列编码质量可以提高0.3 dB。实验结果表明,本文的算法可以有效地将码率控制在给定码率,误差在3%以内。         在编码时间上,本文的算法避免了由于场景切换导致的无效的运动搜索,节省了场景切换帧的编码时间,而算法本身引入的额外运算量可以忽略不计,因而节省了整个序列的编码时间。仿真结果也表明,对于含有5个场景切换的P帧的测试序列(191   帧),编码时间节省了2%~3%。很显然,随着序列中场景切换
发表于 2008-03-18 15:04:34

视频跟踪算法在Davinci SOC上的实现与优化

  引言   目标跟踪作为计算机视觉的一个极具挑战性的研究任务,已被广泛的应用在人机交互、智能监控、医学图像处理等领域中。目标跟踪的本质是在图像序列中识别出目标的同时对其进行精确定位。为了克服噪声、遮挡、背景的改变等对目标识别带来的困难,出现了很多的跟踪算法。   因为目标跟踪算法需要处理的数据量大、运算复杂,需要性能强大的处理器才能实时处理。我们选用TI推出的最新产品TMS320DM6446实现算法。TMS320DM6446是一款高度集成的片上系统,集成了可以运行频率高达594MHz的C64x+ DSP核和297MHz的ARM926处理器核。另外它还集成了数字视频所需的许多外部组件,如视频加速器,网络外设及高速外部存储接口
发表于 2008-11-12 09:42:37
视频跟踪算法在Davinci SOC上的实现与优化

专家谈体育场馆中生物识别技术的应用

摄像头视频情景进行实时、自动的智能监控,准确完成多种监控功能,包括:运动目标检测、跟踪(可以实现实时快球跟踪)、分类识别(如单人、多人、自行车、小车、面包车、卡车,等)、行为分析,异常报警功能,和信息融合解决方案。由奥森提出的智能监控全景电子地图方法,旨在对提供大范围场景多摄像头视野的全局监控和指挥。它将在分布在大范围中不同区域的摄像机智能监控信息融合汇总并及时地显示在全景监控地图上;各摄像机智能监控信息包括:分析得到的运动对象的当前位置、运动轨迹、类型。     该产品能为体育场馆监控控制中心提供全局视频监控管理,为大范围摄像机网络提出了一个对多摄像机信息融合的解决方案。     1、目标检测与跟踪。     视频序列中检测
发表于 2008-08-07 19:20:07

H.264中插补算法的VLSI设计与实现

,则1/4像素值可通过线性内插获得。而对于常用的4:2:0的视频格式,亮度信号的1/4像素精度对应于色度的1/8像素的运动矢量,因此需要对色度信号进行1/8像素的插补运算。在H.264的帧间预测中,4×4是最基本的处理单元,其7种模式都可以划分为4×4块来进行处理,因而基于面积和时间考虑的4×4模块的插补电路具有良好的可重用性。   文献[3]提出了使用4抽头滤波器取代6抽头滤波器的算法来实现亮度的1/2像素插补,利于硬件实现。本文在4抽头滤波器的基础上提出了可以处理4×4块的流水线结构,可以在一个时钟内完成27个1/2像素位置的插补运算。对色度1/8像素的插补,本文提出的两级处理的结构,巧妙地利用移位器和加法器取代了乘法器,节省
发表于 2008-05-29 16:27:33

一种基于运动检测的智能视频序列降噪算法

区分每帧图像的运动区域和静止区域,并对每帧运动区域和静止区域的像素采用不同的滤波策略,每一策略又进一步根据当前像素的局部特性自适应地进行处理。实验结果表明,由于该方法结合了运动检测算法、时域自适应算法、空域自适应算法,所以能够使图像去噪的效果达到单个算法所不能达到的效果。 1基于运动检测的自适应滤波算法   1.1算法原理   整个算法的流程如图1所示。由于时域均值滤波能对视频序列的静止区域产生更好的结果,算法应尽可能使用时域均值滤波。为此,算法降低了对静止区域的判决标准:除了前后帧没有差别的区域被认为是静止区域之外,那些只有前面少量帧检测到运动的位置依然被认为是静止区域(这种情况的例子很多,如静止背景中有快速运动物体划过
发表于 2008-03-19 10:53:22

基于虚拟线的交通信息视频检测技术及应用

  摘要:提出一种基于虚拟线的交通参数(车速、车辆计数等)视频检测方法。通过检测在实时图像序列中设置的虚拟线,检测车辆存在,进而计算出车速、车流量等交换信息。该方法自适应更新背景和阈值,具有较高的检测精度和良好的抗干扰性,避免了大量乘法运算,有效地提高了检测速度,具有良好的实时性。   关键词:虚拟线 背景估计 阈值更新 存在检测线 速度检测区   目前,交通问题已成为城市发展的主要制约因素之一。ITS(Intelligent Transportation System)智能交通系统,是指将先进的信息技术、数据通讯技术、自动控制技术、计算机处理技术等应用于交通运输,实现交通信息管理现代化。目前国内外对ITS已经有了较深入的研究
发表于 2008-03-12 17:54:47

小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 视频监控 智能卡 防盗报警 智能管理 处理器 传感器 其他技术 综合资讯 安防论坛

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2018 EEWORLD.com.cn, Inc. All rights reserved