CN103841418B - 一种3g网络中视频监控器码率控制的优化方法及系统 - Google Patents
一种3g网络中视频监控器码率控制的优化方法及系统 Download PDFInfo
- Publication number
- CN103841418B CN103841418B CN201210477795.6A CN201210477795A CN103841418B CN 103841418 B CN103841418 B CN 103841418B CN 201210477795 A CN201210477795 A CN 201210477795A CN 103841418 B CN103841418 B CN 103841418B
- Authority
- CN
- China
- Prior art keywords
- quantization parameter
- bit rate
- value
- difference
- parameter
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明提供了一种3G网络中视频监控器码率控制的优化方法及系统,所述的方法包含:将3G网络中返回的带宽值作为X264码率控制算法中的目标码率;依据X264中的ABR码率控制算法获得量化参数;采用如下补偿算法优化上步骤的量化参数:在每帧获得量化参数后,根据已编码帧,获得到当前帧为止的实际输出码率,并根据获得的实际输出码率计算到当前帧为止实际输出码率和目标码率的差值;对获得的差值进行判断,若差值小于第一设定值,且获得的量化参数大于已编码帧的平均量化参数,则减少量化参数值;若差值大于第二设定值值,且获得的量化参数值小于已编码帧的平均量化参数,则增大量化参数值;将量化参数对当前帧进行编码,完成3G网络视频监控器的编码操作。
Description
技术领域
本发明涉及H.264视频编码标准,主要针对安防视频监控系统在视频传输过程中由于网络带宽的有限而传输不稳定的现状,具体涉及一种3G网络中视频监控器码率控制的优化方法及系统。
背景技术
H.264是国际通信联盟(International Telecommunication Unite,ITU)和运动图像专家组(Motion Picture Experts Group,MPEG)联合制定的视频编码标准,它是国际上最新的视频编码标准,具有良好的压缩性能和网络亲和力,十分适合实时的视频通信系统。其中基于H.264的开源代码主要有:德国HHI研究所开发的测试软件JM、由法国巴黎中心学校的中心研究所发起并由网上自由组织联合开发的编解码器X264、中国视频编码自由组织联合开发的T264。和JM代码相比,X264摈弃了一些对编码性能贡献小但计算复杂度高的设计,如多参考帧、帧间预测中不必要的块模式等,从而使得在不明显降低编码性能的前提下,大大降低了编码的计算复杂度,提高了编码的速率,使其在实际应用中更能发挥自己的作用。视频监控是安防领域的重要组成部分,在一些重要场合使用视频监控,可以有效防止恶性事件的发生,维护社会治安。目前,大多数常见的视频监控系统是基于通信分组无线服务技术(General Packet Radio Service,GPRS)和全球移动通信系统(Global SystemForMobile Communication,GSM),但是这类无线通信技术的传输速度较慢,无法满足视频传输的要求。随着第三代移动通信技术(3rd-generation,3G)商用步伐的加快,3G无线网络技术也在加速创新,以3G网络通信技术为特征的视频传输技术的应用越来越多。虽然,3G无线监控接入设备在功能和性能方面取得了较大的提升。但是,基于无线广域网接入带宽的局限性(3G的带宽仍是有限的)、带宽的动态变化特性、视频信息所占的带宽大、不同的流媒体文件对网络带宽的要求各不相同等原因,在视频传输过程中,可能会由于网络带宽的不稳定性或者视频带宽过大而出现终端系统接收不到视频信息或者接收到的视频信息不清晰、不流畅等问题。
在带宽受限的网络环境中进行视频传输,就必须对视频信息进行压缩,而视频压缩的效果和视频内容有很大的关系,对于变化多样的画面,视频编码器输出码流的比特率变化较大,不断变化的码流不适合在恒定的码率信道中传输。
在信道环境不佳的情况下,易导致解码显示质量的不稳定。因此,需要引入码率控制技术,即采用一定的策略调整并控制视频编码器的输出比特率,使其在一定的范围之内波动,从而提供流畅的视频传输服务。码率控制需要保证输出码流平稳的同时,选择画面质量和带宽利用的最佳平衡点。通常情况下,它的主要目的是在保证编码器输出的比特率在不超过目标比特率的前提下,最小化图像失真率。
一些名词的解释:
1、图像的残差变换绝对值和(Sum of Absolute Transformed Differences,SATD):将残差经阿达马(Hadamard)变换后累加起来的值,能够体现一定的码流变化。
2、量化参数(Quantization Parameter,QP):QP反映了空间细节的压缩情况,如果QP较小,大部分图像细节都会被保留;当QP增大时,一些图像细节会流失,码率也会随着降低,但同时图像质量会下降。总之,随着量化参数的增加,量化步长的大小也随之增加,但输出的码率却减小。
3、实际输出码率:指的是在具体实施过程中实际输出的码流大小值。
4、目标码率:指的是需要的输出码流大小值,在具体实施过程中指的就是网络中实时的网络带宽值。
5、平均量化参数:平均量化参数是一个统计量,它根据已编码帧动态变化,它的大小即为所有已编码帧的QP之和与已编码帧数的比值。
现有技术的X264中ABR码率控制原始算法的流程如图2所示,具体包含如下几个步骤:
1、首先计算图像当前帧的SATD[i];
2、然后利用当前帧的SATD[i]值,计算图像当前的模糊复杂度(blurred_complexity)
其中cplxsum[i]、cplxcount[i]为迭代量,cplxsum[i]表示累计复杂度,它由之前帧复杂度的加权累计值和当前帧的SATD[i]共同得出:
cplxsum[i+1]=splxsum[i]*0.5+SATD[i];
cplxcount[i]代表加权累计帧数:
cplxcount[i+1]=cplxcount[i]*0.5+1;
3、根据图像的模糊复杂度计算量化等级参数(qscale),并对其进行两次修正,两次修正是为了下一步根据qscale得到更加精准的QP;
qscale[i]=blurred_complexity[i](1-qcompress);
qscale[i]=qscale[i]*overflow;
其中qcompress为压缩控制参数,ABR算法中默认为0.6,qscale第一次通过rate_factor进行修正,rate_factor的值由到当前编码帧的所有目标比特累计值(wanted_bits_window[i])与当前帧复杂度(cplxr_sum[i])的比值所决定,反映出到目前为止根据模糊复杂度计算的原始量化参数的准确性,公式为:
qscale第二次通过overflow进行修正,overflow反映总目标比特和实际产生的总比特之间的偏差,计算公式为:
overflow=x264_clip3f(1.0+(total_bits-wanted_bits)/abr_buffer,.5,2);
4、根据qscale计算QP;
其中系数a=12、b=6、c=0.85均为经验值。
5、根据计算出的QP对当前帧进行编码。
上述现有技术是基于X264中的平均比特率控制算法,然而X264的码率控制算法是基于实践经验的,因此存在一定的不足,具体的不足主要有如下几点:
1、ABR码率控制算法在编码控制时借助已编码的参考帧信息而未考虑其他未编码帧的信息。根据上述方法获取的量化参数QP直接对当前帧进行编码并不精准,允许输出码率存在±10%的误差。
2、宏块层中各个宏块的复杂度并不一样,而ABR码率算法在帧层得到量化参数QP后,属于该帧的所有宏块都用这个统一的QP值进行量化,因此,它并没有任何精细化的宏块层码率控制机制。
3、缓存区的限制过于宽泛且没有极值,并且缓存区大小的增长只与缓存区的初始值和当前的帧数、编码帧率相关,增长大小并不精准,不利于码率控制。
发明内容
本发明的目的在于,为克服上述问题,本发明提供了一种码率控制的优化方法及系统。
为实现上述目的,本发明提供了一种3G网络中视频监控器的码率控制的优化方法,该方法基于X264中的ABR码率控制算法,所述的方法包含:
步骤101)将3G网络中返回的带宽值作为X264码率控制算法中的目标码率;
步骤102)依据X264中的ABR码率控制算法获得量化参数;
步骤103)采用如下补偿算法优化上步骤的量化参数,获得最终的量化参数:
在每帧获得量化参数后,根据已编码帧,获得到当前帧为止的实际输出码率,并根据获得的实际输出码率计算到当前帧为止实际输出码率和目标码率的差值;
对获得的差值进行判断,若差值小于第一设定值值,且获得的量化参数大于已编码帧的平均量化参数,则减少量化参数值;
若差值大于第二设定值值,且获得的量化参数值小于已编码帧的平均量化参数,则增大量化参数值;
其中,量化参数具体的调整值根据目标码率的高低或画面复杂度的情况进行修正;所述第一设定值为某一负数,第二设定值为某一正数且两个值是按照与目标码率的偏差百分比进行选取的;当所述差值和平均量化参数不满足上述两个条件中的任何一个时,保持步骤102)得到的量化参数不变;
步骤104)将经过上步骤处理后的量化参数对当前帧进行编码输出,完成3G网络中视频监控器的编码操作。
上述步骤102)进步一包含:
步骤102-1)计算图像当前帧的残差变换绝对值和SATD(Sum of AbsoluteTransformed Differences);
步骤102-2)利用当前帧的SATD值,计算图像当前的模糊复杂度:
步骤102-3)根据图像的模糊复杂度计算量化等级参数qscale;
步骤102-4)根据量化等级参数qscale计算该帧的量化参数QP。
上述步骤103)进一步包含:
步骤103-1)根据量化参数计算到当前帧为止的实际输出码率;
步骤103-2)计算实际输出码率与目标码率的差值,并计算已编码帧的平均量化参数;
步骤103-3)当所述差值大于目标码率的第一设定值且所述平均量化参数大于量化参数时,对量化参数值向大的方向进行微调;
当所述差值小于目标码率的第二设定值且平均量化参数小于量化参数时,对量化参数向小的方向微调;
当所述差值和平均量化参数不满足上述两个条件中的任何一个时保持所述量化参数不变;
其中,所述第一设定值与第二设定值的绝对值相等。
上述步骤104)之前还包含对缓存区增长方式进行调整的步骤,该步骤具体为:
用于获取差值因子的步骤,所述的差值因子为已编码帧的目标比特数的累积和和已编码帧所产生的实际比特数的累积和的差值;
当差值因子的值大于0时,增大缓存区的缓存空间;反之,则缓存区空间不增长。
上述缓存区每次以所述差值因子的估计值进行增长,且所述的差值因子估计值根据目标码率的大小选择合适的增长速率,具体为:当目标码率较低时,采用较快的增长方式,即2、3…n倍差值因子进行递增增长;当目标码率较高时,采用较慢的增长方式,即倍差值因子进行递增增长。
基于上述方法本发明还提供了一种3G网络中视频监控器的码率控制的优化系统,该系统基于X264中的ABR码率控制算法,所述系统包含:
目标码率获得模块,用于将3G网络中返回的带宽值作为X264码率控制算法中的目标码率;
量化参数获取模块,用于依据ABR码率控制算法获得量化参数;
量化参数修正模块,用于采用如下补偿算法优化上步骤的量化参数,获得最终的量化参数:
在每帧获得QP后,根据已编码帧,获得到当前帧为止的实际输出码率,并根据获得的实际输出码率计算出到当前帧为止实际输出码率和目标码率的差值;
对获得的差值进行判断,若差值小于-R值,且获得的量化参数大于已编码帧的平均量化参数,则减少量化参数值;
若差值大于R值,且获得的量化参数值小于已编码帧的平均量化参数,则增大QP值;
其中,量化参数QP的调整值根据目标码率的高低或画面复杂度的情况进行修正;所述R值是按照与目标码率的偏差百分比进行选取的;当所述差值和平均量化参数不满足上述两个条件中的任何一个时,保持量化参数获取模块得到的量化参数不变;和
编码模块,用于将量化修正模块输出的量化参数对当前帧进行编码输出,完成3G网络中视频监控器的编码操作。
上述量化参数获取模块进步一包含:
第一处理子模块,用于计算图像当前帧的残差变换绝对值和SATD(Sum ofAbsolute Transformed Differences);
模糊复杂度获取子模块,用于利用当前帧的SATD值,计算图像当前的模糊复杂度:和
量化等级参数获取子模块,用于根据图像的模糊复杂度计算量化等级参数qscale;和
第二处理子模块,用于根据量化等级参数qscale计算该帧的量化参数QP。
上述量化参数修正模块进一步包含:
第三处理子模块,用于根据第二处理子模块输出的量化参数计算到当前帧为止的实际输出码率;
第四处理子模块,用于计算实际输出码率与目标码率的差值,并计算已编码帧的平均量化参数;
量化参数调整模块,用于依据如下策略对第二处理子模块输出的量化参数进行调整:
当所述差值大于目标码率的第一设定值且所述平均量化参数大于量化参数时,对量化参数值得向大的方向进行微调;
当所述差值小于目标码率的第二设定值且平均量化参数小于量化参数时,对量化参数向小的方向微调;
当所述差值和平均量化参数不满足上述两个条件中的任意一个时保持所述量化参数不变;
其中,所述第一设定值与第二设定值的绝对值相等。
优化的,上述系统还包含:
差值因子获取模块,用于获取差值因子,所述的差值因子为已编码帧累计的目标比特数之和和已编码帧所产生的实际比特数之和的差值;和
缓存空间增加驱动模块,用于判断当差值因子的值大于0时,增大缓存区的缓存空间;反之,则缓存区空间不增长。
上述缓存区每次以差值因子的估计值进行增长,且所述的差值因子估计值根据目标码率的大小选择合适的增长速率,具体为:当目标码率较低时,采用较快的增长方式,即2、3…n倍差值因子进行递增增长;当目标码率较高时,采用较慢的增长方式,即倍差值因子进行递增增长。
本改进算法的有益效果是,在视频的传输过程中,改进后的码率控制算法使得实际输出的码率更加接近于目标码率。在信道环境不佳的情况下,缓解解码显示质量的不稳定,保证视频传输过程中的稳定性。
附图说明
为了更清楚的说明本发明的目的、技术方案以及优点,下面将结合附图对本发明进行详细说明:
图1是现有技术的码率控制的基本原理图;
图2是原始的ABR码率控制算法的流程图;
图3是本发明提供的帧层改进后的ABR码率控制算法的流程图;
图4是本发明提供的缓存区增长的改进的流程图;
图5是仿真得到的针对不同视频序列在同一目标码率(400kb/s)的环境下,改进算法与原算法实际输出码率与目标码率的对比图。
具体实施方式
下面结合附图对本发明的技术方案做详细阐述。
本发明提供的技术方案为了适应3G带宽的有限性和动态性,在视频传输过程中引入了码率控制技术,以便保证在3G网络中流畅的视频传输服务。本发明主要是基于X264中的ABR码率控制算法,通过对该算法的优化,使得视频编码后的码率能够更接近于网络中的带宽,从而提供流畅的视频传输服务。且针对该改进算法通过对同一视频序列不同的目标码率和不同的视频序列同一目标码率两种方案进行实验仿真验证,实验表明优化后的算法在峰值信噪比(Peak Signal to Noise Ratio,PSNR)的平均值基本不变的前提下(PSNR越高,表明图像的质量越好),实际输出的码率更加贴近于目标码率。
图1是现有技术的码率控制的原理图,具体说明如下:在带宽受限的网络环境中进行视频传输,必须对视频信息进行压缩,码率控制策略即将编码后生成的码流先保存到缓存区中,然后再从缓存区以固定的码率将码流输出到信道上。本发明主要是针对其中的码率控制部分和视频缓存区部分实行相应的改进策略,从而达到码率控制的优化。其中码率控制部分主要根据实际输出比特和目标比特之差在帧层增加补偿算法来调整当前帧的量化参数,缓存区则通过改善缓存区增长函数以限制缓存区的过快增长。
本发明针对背景技术部分提供的X264中的ABR码率控制算法提出了针对帧层和缓存区的改进方法,具体表现为:1、在帧层引入实际比特和目标比特的差值和已编码帧的平均量化参数这两个因子,通过对这两个因子的限制和调整在帧层设置帧层补偿算法对原算法在帧层获得的量化因子QP进行再次修正,即在帧层设置量化参数补偿算法,以获得更加精准的帧层量化因子QP,进而使得在PSNR变化不大的情况下,输出的码率更加接近于目标码率。2、引进差值因子的估计值,缓存区的增长设置每次以该差值因子作为缓存区增长参考来代替原始算法中缓存区大小增长的设置,以此限制了缓存区的过于宽泛,降低了缓存区的增长速度。
上述的第一方面的改进,即对帧层获得的量化参数进行修正的算法如下:
1、帧层补偿算法具体的原理阐述如下:在每帧获得QP后,若实际输出码率大小与目标码率差值的绝对值大于R值(R值是按照与目标码率的偏差百分比进行选取的,例如目标码率的1%),表明到当前帧为止,实际输出码率值与目标标率存在一定的差异,此时进入帧层补偿算法,并计算已编码帧的平均量化参数。已编码帧的平均量化参数间接表明已编码帧码率的一个变化状态,当已编码帧的实际输出码率与目标码率的差值大于R,且平均量化参数大于当前帧的QP,表明前面已编码的帧在每帧结束后输出码率正向偏离目标码率,此时增大当前帧的QP以减少输出码率的大小。而当目标码率与已编码帧的实际输出码率的差值大于R值,且平均量化参数小于当前帧的QP,表明前面已编码的帧在每帧结束后输出码率负向偏离目标码率,此时减少当前帧的QP以增大输出码率的大小。实验中帧层QP的调整值选取为2,在实际中可以根据目标码率的高低、画面复杂度的情况对QP调整值的大小进行修正。
下面是码率控制算法中在帧层的具体改进方法:
1)在每帧根据qscale获得QP后,根据已编码帧,获得到当前帧为止的实际输出码率(real_bit),并根据获得的real_bit计算出到当前帧为止real_bit和目标码率(target_bit)的差值(diff_bit);
diff_bit=real_bit-target_bit;
2)对获得的diff_bit值进行判断,若diff_bit值小于-R值,且获得的QP大于已编码帧的平均量化参数(avg_qp),则减少QP值,若diff_bit值大于R值,且获得的QP小于已编码帧的avg_qp,则增大QP值。
本发明改进的量化参数的确定算法的具体流程见图3所示,具体包含如下步骤:
步骤301)计算到当前帧为止的实际输出码率,该实际输出码率的计算方法在X264的原始算法中已经得出,它将根据已编码帧帧数数目的改变而改变。
步骤302)计算实际输出码率与目标码率的差值,并计算已编码帧的平均量化参数;
平均量化参数是对已编码帧的的量化参数的统计,它的值的大小等价于已编码帧的量化参数的总和与已编码帧的帧数之比。
步骤303)当所述差值大于目标码率的百分之一且所述平均量化参数大于量化参数时,对量化参数值得向大的方向进行微调;当所述差值小于目标码率的负百分之一且平均量化参数小于量化参数时,对量化参数向小的方向微调;其余的所有情况均不对量化参数进行调整;最后将调整后的量化参数对当前帧进行编码。
上述的第二方面的改进,即对帧层获得的量化参数进行修正的算法如下:
2、ABR算法中对qscale二次修正中的比特预测部分的缓存区采用的是开放型的缓存区,没有对缓存区进行合理的限制,使得缓存区的大小增长过快且没有极值,这样不利于码率的控制。针对此引进已编码帧的目标比特数累积和(total_bits)和已编码帧所产生的实际比特数累积和(wanted_bits)的差值因子(add_bits)作为控制缓存区大小增长的因子之一,缓存区的大小动态根据add_bits进行更改,通过对缓存区增长函数的修正,使得实际码率更加接近于目标码率。下面是码率控制算法中缓存区的具体改进方法:
在缓存区增长函数中新引进前面提到的add_bits因子,使得缓存区能够根据已编码帧的相关信息进行选择增长。当add_bits大于0时,表示已编码帧的目标比特大于已编码帧的实际比特,此时需要增大缓存区的大小,以使得实际码流接近目标码流,反之,则缓存区不增长,以限制产生过大的比特数。原算法中采用开方的方式限制缓存区的增长速度,本发明中则根据目标码率的大小选择合适的增长速率。其中,当目标码率较低时,采用较快的增长方式,当目标码率较高时,采用较慢的增长方式。具体流程见图4:
首先,进行缓存区的初始化工作,其中缓存区初始值为两倍的平均目标比特和瞬时码率容忍度的乘积,具体的计算公式如下:
abr_buffer_init=2*rate_tolerance*target_bit;
然后,根据差值因子是否大于0选择是否对缓存区的大小进行增长,若差值因子大于0,则根据差值因子增长缓存区的大小,否则,缓存区的大小则不增长。并在其中根据目标码率的高低选择差值因子合适的增长速率,具体为当目标码率较低时,采用较快的增长方式,即2、3…n倍差值因子进行递增增长;当目标码率较高时,采用较慢的增长方式,即倍差值因子进行递增增长。
图5是针对不同视频序列在目标码率400kb/s的条件下,改进算法与原始算法实际输出的码率的对比图,从图中可以清晰地看出改进后的算法使得实际输出的码率比原始算法更加接近于目标码率(如图中的400kb/s)。
3、仿真验证本发明的技术方案的技术效果:
在某些视频监控的特定场合只能使用3G网络,然而3G网络也是有限的,因此在视频监控中由于网络带宽的不足而引起视频信息传输的不流畅、断续等等的问题,此时需要考虑采用码率控制将码率的输出控制在一定的范围内,最终实现根据当前带宽值的码率自适应。
对改进算法的实验验证采用的X264版本为2009-02-16,参考帧数目为2帧,GOP为250帧,编码结构为IPPP,其他参数的设置均采用X264编码默认设置。其中同一序列采用的是标准序列Foreman,它的总帧数为300帧,大小为CIF(352x288)。不同的视频序列采用的是多个运动剧烈情况和图像的复杂度不同的标准测试序列,包括Tempete,Coastguard,Mobile和Paris。具体数据结果如表1、表2所示。
表1是针对同一视频序列(Foreman,CIF(352x288))在不同目标码率的
环境下,改进算法与原算法实际输出的码率值
表2是在不同的改进方式,不同的目标码率下,对Tempete,Coastguard,Mobile和Paris四种视频序列的原始算法与改进算法的实际输出码率结果
在实际中的实施中,选用Linux作为服务器平台,通过USB摄像头采集实时的视频信息,使用Linux V4L2(Video 4Linux 2)提供的API函数进行视频的采集模块的设计,用经过码率控制优化过的X264开源软件进行视频的软编码,将压缩后的.264视频数据通过USB接口传送到EM770W UMTS 3G传输模块进行实时的网络传输。客户端采用FFmpeg进行实时解码,SDL实时播放。EM770W UMTS模块为华为公司开发的3G模块,它适合于WCDMA网络,能在UMTS850/900/1900、2100MHz和GSM/GPRS 850/900/1800/1900Hz频段下支持语音、短消息等业务。
其中视频的软编码过程包括两个部分,一个是动态检测3G网络中带宽的值,另一个是X264的编码,具体来说,根据3G网络中返回的带宽值作为X264码率控制算法中的目标码率,X264根据目标码率(即3G带宽值)动态调整视频监控的输出码率,从而控制输出码率在3G带宽范围内。由于采用的是优化后的码率控制算法,从而使得实际输出的码率值更加接近于目标码率,缓解了3G网络的负荷,优化视频的传输。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (10)
1.一种3G网络中视频监控器码率控制的优化方法,该方法基于X264中的ABR码率控制算法,所述的方法包含:
步骤101)将3G网络中返回的带宽值作为X264码率控制算法中的目标码率;
步骤102)依据X264中的ABR码率控制算法获得量化参数;
步骤103)采用如下补偿算法优化上步骤的量化参数,获得最终的量化参数:
在每帧获得量化参数后,根据已编码帧,获得到当前帧为止的实际输出码率,并根据获得的实际输出码率计算到当前帧为止实际输出码率和目标码率的差值;
对获得的差值进行判断,若差值小于第一设定值,且获得的量化参数大于已编码帧的平均量化参数,则减小量化参数值;
若差值大于第二设定值值,且获得的量化参数值小于已编码帧的平均量化参数,则增大量化参数值;
其中,量化参数具体的调整值根据目标码率的高低或画面复杂度的情况进行修正;所述第一设定值为某一负数,第二设定值为某一正数且两个值是按照与目标码率的偏差百分比进行选取的;当所述差值和平均量化参数不满足上述两个条件中的任何一个时,保持步骤102)得到的量化参数不变;
步骤104)将经过上步骤处理后的量化参数对当前帧进行编码输出,完成3G网络中视频监控器的编码操作。
2.根据权利要求1所述的3G网络中视频监控器码率控制的优化方法,其特征在于,所述步骤102)进一步包含:
步骤102-1)计算图像当前帧的残差变换绝对值和SATD;
步骤102-2)利用当前帧的SATD值,计算图像当前的模糊复杂度:
步骤102-3)根据图像的模糊复杂度计算量化等级参数qscale;
步骤102-4)根据量化等级参数qscale计算该帧的量化参数QP。
3.根据权利要求1或2所述的3G网络中视频监控器码率控制的优化方法,其特征在于,所述步骤103)进一步包含:
步骤103-1)根据量化参数计算到当前帧为止的实际输出码率;
步骤103-2)计算实际输出码率与目标码率的差值,并计算已编码帧的平均量化参数;
步骤103-3)当所述差值小于目标码率的第一设定值且所述平均量化参数大于量化参数时,对量化参数值向大的方向进行微调;
当所述差值大于目标码率的第二设定值且平均量化参数小于量化参数时,对量化参数向小的方向微调;
当所述差值和平均量化参数不满足上述两个条件中的任何一个时保持所述量化参数不变;
其中,所述第一设定值与第二设定值的绝对值相等。
4.根据权利要求1所述的3G网络中视频监控器码率控制的优化方法,其特征在于,所述步骤104)之前还包含对缓存区增长方式进行调整的步骤,该步骤具体为:
用于获取差值因子的步骤,所述的差值因子为已编码帧的目标比特数的累积和和已编码帧所产生的实际比特数的累积和的差值;
当差值因子的值大于0时,增大缓存区的缓存空间;反之,则缓存区空间不增长。
5.根据权利要求4所述的3G网络中视频监控器码率控制的优化方法,其特征在于,所述缓存区每次以所述差值因子的估计值进行增长,且所述的差值因子估计值根据目标码率的大小选择合适的增长速率,具体为:当目标码率较低时,采用较快的增长方式,即2、3…n倍差值因子进行递增增长;当目标码率较高时,采用较慢的增长方式,即倍差值因子进行递增增长。
6.一种3G网络中视频监控器码率控制的优化系统,该系统基于X264中的ABR码率控制算法,所述系统包含:
目标码率获得模块,用于将3G网络中返回的带宽值作为X264码率控制算法中的目标码率;
量化参数获取模块,用于依据ABR码率控制算法获得量化参数;
量化参数修正模块,用于采用如下补偿算法优化上步骤的量化参数,获得最终的量化参数:
在每帧获得QP后,根据已编码帧,获得到当前帧为止的实际输出码率,并根据获得的实际输出码率计算出到当前帧为止实际输出码率和目标码率的差值;
对获得的差值进行判断,若差值小于-R值,且获得的量化参数大于已编码帧的平均量化参数,则减少量化参数值;
若差值大于R值,且获得的量化参数值小于已编码帧的平均量化参数,则增大QP值;
其中,量化参数QP的调整值根据目标码率的高低或画面复杂度的情况进行修正;所述R值是按照与目标码率的偏差百分比进行选取的;当所述差值和平均量化参数不满足上述两个条件中的任何一个时,保持量化参数获取模块输出的量化参数不变;和
编码模块,用于将量化修正模块输出的量化参数对当前帧进行编码输出,完成3G网络中视频监控器的编码操作。
7.根据权利要求6所述的3G网络中视频监控器码率控制的优化系统,其特征在于,所述量化参数获取模块进步一包含:
第一处理子模块,用于计算图像当前帧的残差变换绝对值和SATD;
模糊复杂度获取子模块,用于利用当前帧的SATD值,计算图像当前的模糊复杂度:和
量化等级参数获取子模块,用于根据图像的模糊复杂度计算量化等级参数qscale;和
第二处理子模块,用于根据量化等级参数qscale计算该帧的量化参数QP。
8.根据权利要求6或7所述的3G网络中视频监控器码率控制的优化系统,其特征在于,所述量化参数修正模块进一步包含:
第三处理子模块,用于根据第二处理子模块输出的量化参数计算到当前帧为止的实际输出码率;
第四处理子模块,用于计算实际输出码率与目标码率的差值,并计算已编码帧的平均量化参数;
量化参数调整模块,用于依据如下策略对第二处理子模块输出的量化参数进行调整:
当所述差值小于目标码率的第一设定值且所述平均量化参数大于量化参数时,对量化参数值得向大的方向进行微调;
当所述差值大于目标码率的第二设定值且平均量化参数小于量化参数时,对量化参数向小的方向微调;
当所述差值和平均量化参数不满足上述两个条件中的任意一个时保持所述量化参数不变;
其中,所述第一设定值与第二设定值的绝对值相等。
9.根据权利要求6所述的3G网络中视频监控器码率控制的优化系统,其特征在于,所述系统还包含:
差值因子获取模块,用于获取差值因子,所述的差值因子为已编码帧目标比特数累积和和已编码帧所产生的实际比特数的累积和的差值;和
缓存空间增加驱动模块,用于判断当差值因子的值大于0时,增大缓存区的缓存空间;反之,则缓存区空间不增长。
10.根据权利要求9所述的3G网络中视频监控器码率控制的优化系统,其特征在于,所述缓存区每次以差值因子的估计值进行增长,且所述的差值因子估计值根据目标码率的大小选择合适的增长速率,具体为:当目标码率较低时,采用较快的增长方式,即2、3…n倍差值因子进行递增增长;当目标码率较高时,采用较慢的增长方式,即倍差值因子进行递增增长。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210477795.6A CN103841418B (zh) | 2012-11-22 | 2012-11-22 | 一种3g网络中视频监控器码率控制的优化方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210477795.6A CN103841418B (zh) | 2012-11-22 | 2012-11-22 | 一种3g网络中视频监控器码率控制的优化方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103841418A CN103841418A (zh) | 2014-06-04 |
CN103841418B true CN103841418B (zh) | 2016-12-21 |
Family
ID=50804497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210477795.6A Expired - Fee Related CN103841418B (zh) | 2012-11-22 | 2012-11-22 | 一种3g网络中视频监控器码率控制的优化方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103841418B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2818891C1 (ru) * | 2020-11-27 | 2024-05-07 | Биго Текнолоджи Пте. Лтд. | Способ и устройство, вычислительное устройство и носитель данных для кодирования видео |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105282547B (zh) * | 2014-07-03 | 2019-06-25 | 深圳市腾讯计算机系统有限公司 | 一种视频编码的码率控制方法及装置 |
CN105376568B (zh) * | 2015-12-22 | 2018-11-06 | 广州通达汽车电气股份有限公司 | 一种abr视频编码码率控制的优化方法 |
CN107493519A (zh) * | 2016-06-13 | 2017-12-19 | 中兴通讯股份有限公司 | 一种基于用户视频体验的网络质量评估方法及装置 |
CN107613292B (zh) * | 2016-07-11 | 2020-04-07 | 合肥君正科技有限公司 | 一种图像复杂度评估方法及装置 |
CN107846590B (zh) * | 2016-09-19 | 2020-09-08 | 阿里巴巴集团控股有限公司 | 一种视频编码的方法和视频编码器 |
CN106937112B (zh) * | 2017-03-31 | 2019-09-24 | 西安电子科技大学 | 基于h.264视频压缩标准的码率控制方法 |
CN109218781A (zh) * | 2017-07-07 | 2019-01-15 | 华为软件技术有限公司 | 视频码率控制方法和装置 |
CN108924611B (zh) * | 2018-06-27 | 2020-11-27 | 曜科智能科技(上海)有限公司 | Abr编码码率控制优化方法、电子设备及存储介质 |
CN111050175A (zh) * | 2018-10-15 | 2020-04-21 | 华为技术有限公司 | 视频编码的方法和装置 |
CN111510715B (zh) | 2019-01-31 | 2022-03-01 | 上海哔哩哔哩科技有限公司 | 视频处理方法、系统、计算机设备及存储介质 |
CN112767953B (zh) * | 2020-06-24 | 2024-01-23 | 腾讯科技(深圳)有限公司 | 语音编码方法、装置、计算机设备和存储介质 |
CN111787318A (zh) * | 2020-06-24 | 2020-10-16 | 浙江大华技术股份有限公司 | 一种视频码率控制方法、装置、设备以及存储装置 |
CN111726656B (zh) * | 2020-07-20 | 2022-07-26 | 有半岛(北京)信息科技有限公司 | 一种直播视频的转码方法、装置、服务器和存储介质 |
CN112040246B (zh) * | 2020-08-27 | 2022-03-04 | 西安迪威码半导体有限公司 | 一种低时延低复杂度的固定码率控制方法 |
CN112165620A (zh) * | 2020-09-24 | 2021-01-01 | 北京金山云网络技术有限公司 | 视频的编码方法及装置、存储介质、电子设备 |
CN112272299A (zh) * | 2020-11-27 | 2021-01-26 | 广州市网星信息技术有限公司 | 一种视频编码的方法、装置、设备和存储介质 |
CN113301342B (zh) * | 2021-05-13 | 2022-07-22 | 广州方硅信息技术有限公司 | 视频编码方法、网络直播方法、装置和终端设备 |
CN113691814A (zh) * | 2021-07-26 | 2021-11-23 | 浙江大华技术股份有限公司 | 视频编码方法、装置、电子装置和存储介质 |
CN113660491B (zh) * | 2021-08-10 | 2024-05-07 | 杭州网易智企科技有限公司 | 编码方法、编码装置、存储介质及电子设备 |
CN113676730B (zh) * | 2021-08-12 | 2022-12-02 | 北京百度网讯科技有限公司 | 视频编码方法、装置、电子设备和存储介质 |
CN114374841B (zh) * | 2021-12-15 | 2024-07-02 | 杭州未名信科科技有限公司 | 视频编码码率控制的优化方法、装置及电子设备 |
CN114513664B (zh) * | 2022-04-18 | 2022-07-22 | 鹏城实验室 | 视频帧编码方法、装置、智能终端及计算机可读存储介质 |
CN117939134B (zh) * | 2024-03-22 | 2024-05-31 | 鹰驾科技(深圳)有限公司 | 一种无线视频通信方法及系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101188755A (zh) * | 2007-12-14 | 2008-05-28 | 宁波中科集成电路设计中心有限公司 | 一种对实时视频信号在avs编码过程中vbr码率控制的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5717465B2 (ja) * | 2011-02-25 | 2015-05-13 | 株式会社日立国際電気 | 動画像符号化装置及び動画像符号化方法 |
-
2012
- 2012-11-22 CN CN201210477795.6A patent/CN103841418B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101188755A (zh) * | 2007-12-14 | 2008-05-28 | 宁波中科集成电路设计中心有限公司 | 一种对实时视频信号在avs编码过程中vbr码率控制的方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2818891C1 (ru) * | 2020-11-27 | 2024-05-07 | Биго Текнолоджи Пте. Лтд. | Способ и устройство, вычислительное устройство и носитель данных для кодирования видео |
Also Published As
Publication number | Publication date |
---|---|
CN103841418A (zh) | 2014-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103841418B (zh) | 一种3g网络中视频监控器码率控制的优化方法及系统 | |
Sun et al. | Region-based rate control and bit allocation for wireless video transmission | |
US9215498B2 (en) | Video data transmission processing method, video data sending processing method, apparatus, network system | |
CN101895759B (zh) | 一种h.264码率控制方法 | |
CN100562118C (zh) | 一种视频编码的码率控制方法 | |
US7801222B2 (en) | Coding image signal | |
CN100425077C (zh) | 采用帧目标比特数不平均分配的视频压缩码率控制方法 | |
CN113766226A (zh) | 图像编码方法、装置、设备及存储介质 | |
CN108235016A (zh) | 一种码率控制方法及装置 | |
CN101743753A (zh) | 利用视频编码中的帧复杂性、缓冲水平和内部帧位置的基于缓冲的速率控制 | |
CN108012149B (zh) | 一种视频编码中码率控制的方法 | |
Heng et al. | End-to-end rate-distortion optimized MD mode selection for multiple description video coding | |
US20030152151A1 (en) | Rate control method for real-time video communication by using a dynamic rate table | |
CN103533359A (zh) | 一种h.264码率控制方法 | |
CN109120924A (zh) | 一种实时视频通信的质量评价方法 | |
CN101656887A (zh) | 码率控制算法的选择方法和装置 | |
CN110365983A (zh) | 一种基于人眼视觉系统的宏块级码率控制方法及装置 | |
CN101888561A (zh) | 一种率失真优化动态调整的多视点视频传输差错控制方法 | |
CN100448295C (zh) | 一种低复杂度的积分码率控制方法 | |
CN103339912A (zh) | 用于多媒体流的视频包调度方法 | |
CN108989818A (zh) | 一种图像编码参数调整方法及装置 | |
WO2007089916A2 (en) | Dynamic reference frame decision method and system | |
CN103051897A (zh) | 一种h264视频编码码率控制方法 | |
CN106658024A (zh) | 一种快速的视频编码方法 | |
CN109618156A (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: 20161221 Termination date: 20191122 |
|
CF01 | Termination of patent right due to non-payment of annual fee |