- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于帧率逐级自适应视频编码
基于帧率逐级自适应视频编码
【摘要】传统帧率控制算法当场景持续的大运动量变化时,会有帧率波动过大、忽快忽慢的不连贯性而造成的闪烁感。为了解决这个问题,我们设计了基于帧率逐级自适应的算法,通过采用逐级自适应地调整目标帧率,以降低跳帧控制中的一次性跳帧数目,来达到帧率平稳以及图像质量提高的目的。
【关键词】码率;帧率;自适应;场景变换检测
1.引言
在多媒体通信系统中,以下因素直接影响视频图像质量。
1.1视频编码器的过高的输出码率会导致网络拥塞、丢包,而造成图像质量急剧下降;而过低的输出码率,也会导致图像质量下降和对网络资源的浪费。
1.2帧率的波动大小,也会直接影响到对图像效果的主观感受。如图1所示,横坐标为时间(单位:秒),纵坐标为帧率(单位:fps),最大帧率和最小帧率变化剧烈,如此连贯性不一致的现象会造成图像中运动的人或物体跳动和闪烁的主观感受。
因此,为了最终获得质量较高的视频图像,不仅要使编码器的输出码率尽可能的有效利用网络带宽资源,还要考虑输出图像帧率的波动大小。
图1 一般帧率变化曲线
目前现有的控制帧率波动的算法是,通过对场景变换的检测,实现图像在场景变换较小的时候进行跳帧,以便给场景变换较大时,分配较多比特进行编码,保证图像质量和连贯性。如下图所示:
图 2 本发明相关方案原理图
这种算法的缺点是。
1.2.1当场景持续的大运动量变化时,虽然存在某一瞬时的场景变化较小,但是由于时间过短,而没有可用来跳过的帧数,最终导致该算法会失效。
1.2.2实际网络的状况会存在可用网络带宽资源不恒定的情况,而该方案没有考虑网络自适应性能。
为了克服帧率波动过大、忽快忽慢的不连贯性而造成的闪烁感,我们设计了基于帧率逐级自适应的算法,这种算法同时兼顾了网络带宽自适应。
2.基于帧率逐级自适应的算法介绍
基于帧率逐级自适应的算法在码率适应于网络的基础上,通过采用逐级自适应地调整目标帧率,以降低跳帧控制中的一次性跳帧数目,来达到帧率平稳以及图像质量提高的目的。算法系统框架,如下图所示。
图3 编码器系统框架图
S301:预测当前网络可用带宽资源。
S302:编码器根据可用带宽、帧率调整情况,对码率控制参数进行初始化,包括目标帧率、目标码率,及每帧的目标帧长等。
S303:根据图像复杂程度的变化情况,预测图像将要跳帧的数目。这里可根据编码器输出视频码流的大小计算跳帧数目。
S304:根据当前可用网络带宽资源以及跳帧的数目获得需要调整帧率的级数,在这里帧率被分为若干级,便于逐级调整;根据需要调整的帧率级数获取需要更新的目标帧率。在网络状况较差,逐级降低编码器的目标帧率,这样相当于把一次的大的跳帧数均匀的分配到一段时间,以获取帧率的平稳,并且分配给每帧图像的目标码率增多,而提高了图像质量。
在网络状况良好时,不仅可以进行逐步提高码率,而且对帧率进行逐级向上调整。这样,帧率变化就不会像图1所示波动过大,相反,在场景持续地、大运动量变换地情况下,经过帧率自适应,就可以达到如下效果。
2.1图像帧率变换平稳,并且可以看出在逐级提高或者逐级下降。
2.2从主观效果上看,忽快忽慢以及闪烁的现象改善了,并且图像质量有所提高。
S305:把更新的目标帧率反馈给编码器的码率控制参数。
假设初始目标码率为1Mbps,初始帧率为25帧/s,则初始目标帧长为40Kbits。假设某一秒的第一帧图像比较复杂需要用200Kbits,为了使实际输出码率不超过1Mbps,需要跳4帧,即第7、8、9、10帧被挑过。而基于帧率逐级自适应算法,由于第一帧图像需要用200Kbits,则将目标帧率下调至20帧/s,则此时的目标帧长为50Kbits,为了不使输出码率超过1Mbps,要跳三帧,即第2、3、4帧被跳过,对第5帧进行编码。如果第5证也比较复杂需要用200Kbits,则需要在跳三帧,即第6、7、8帧被跳过。通过比较可以看出,传统算法需要一词跳4帧,而根据就基于帧率逐级自适应算法,一次跳帧会减少至3帧,以一次大的跳帧数被分配到一段时间内进行多次跳帧。
根据传统算法,如果2秒内跳10帧,这10帧均在第一秒内连续被挑过,而第二秒没有跳帧,则第1秒和第2秒的帧率差别会很大;而基于帧率逐级自适应的算法,一次大的跳帧数被分配到一段时间内进行多次跳帧,结果是第1秒内跳6帧,第2秒内跳帧,则第1秒和第2秒的帧率差别不会太大。这显然可以减轻图像中运动的人或物体跳动和闪烁的主观感受。
3.帧率自适应模块实现方法
图4为帧率自适应模块原理图。
图4 帧率自适应原理图
S401:可用网络带宽和编码器内部
原创力文档


文档评论(0)