一种视频容错控制系统及方法

文档序号:7656570阅读:205来源:国知局
专利名称:一种视频容错控制系统及方法
技术领域
本发明涉及视频通信领域,更具体地说,涉及一种视频容错控制系统及方法。
背景技术
随着网络应用的发展,经由网络的视频通信已广泛应用于即时通信、聊天 室等场合。在视频通信中,通常将视频序列中的图像帧编码为I帧和P帧进行传输,其中I帧是帧内编码帧,其不依赖其它帧而独立解码,编码码流较大; P帧是帧间编码帧,其依赖于它前面的I帧或P帧才可解码,因为P帧参考了 前一帧图像,故码流较小。为了适应网络传输,需要将每一帧的码流按照网络 带宽等情况分成若干个较小的数据包进行发送。然而,在实际传输过程中(例如IP网络、无线网络等),由于网络问题, 可能出现丟包现象。对应I帧,只要其本身的数据包都收到,接收端就可以解 码恢复;而P帧图像,则除其本身的数据包外,它前面的最近的I帧和该I帧 后的所有P帧都要收到才可以解码恢复。例如图1中Io到h之间包括5个P 帧,若第3个P传输中丢失,则即便接收端接收到第4、第5个P帧也不能解 码。随着无线网络和多媒体技术应用的广泛和深入,在不可靠信道上传输视频 的需求日益增长,视频编码和传输中的错误控制问题已经引起了广泛关注。专 利申请号为"200510097644.8"的中国专利公开了 一种视频容错控制方案,其 将I帧插入到序列的中间,I帧前面的P帧后向参考这个I帧,从而实现容错。 然而,该方案却造成编码复杂度增加、解码延时增大的问题,并且该方案的容 错效果也不是很理想。
发明内容本发明要解决的技术问题在于,针对视频通信中因为数据包丟失而造成可 察觉的视频流畅性降低的问题,提供一种视频容错控制系统及方法。本发明解决上述技术问题的技术方案是,提供一种视频容错控制系统,包 括位于发送端的拆分单元、编码单元以及传输单元、位于接收端的解码单元和恢复单元,其中所述拆分单元,用于将一见频序列中的完整图#>帧均匀地拆分为至少两个子 序列;所述编码单元,用于将每一所述子序列独立编^冯为码流;所述传输单元,用于将各子序列的编码码流分别发送到接收端;所述解码单元,用于解码接收的各子序列编码码流;所述恢复单元,在所有子序列成功解码时才艮据原始拆分的空间关系恢复原 始图像帧,或在部分子序列解码成功时根据解码成功的子序列进行空间插值计 算恢复原始图像帧。在本发明所述的一种视频容错控制系统中,所述拆分单元将完整图像帧以 隔行、隔列或隔行隔列方式拆分为至少两个子序列。在本发明所述的一种视频容错控制系统中,所述编码单元在对各子序列进 行编码时,使各子序列的I帧间的间隔相异或各子序列的I帧有序交错。在本发明所述的一种视频容错控制系统中,所述传输单元将各子序列的编 码码流按时间顺序交替发送。在本发明所述的一种视频容错控制系统中,所述发送端还包括调节单元, 用于根据网络状况进行反馈调节、空间拆分调节和/或I帧交错调节。本发明还提供一种视频容错控制方法,包括以下步骤(a) 在发送端将3见频序列中的完整图像帧均匀地拆分为至少两个子序列;(b) 将每一子序列独立编码为码流,并将各子序列的编码码流分别发送 到4妄收端;(c) 接收端在所有子序列成功解码时根据原始拆分的空间关系恢复原始 图像帧,或在部分子序列解码成功时根据解码成功的子序列进行空间插值计算
恢复原始图像帧。在本发明所述的一种视频容错控制方法中,所述步骤(a)中,所述完整 图像帧以隔行、隔列或隔行隔列方式拆分为至少两个子序列。在本发明所述的一种视频容错控制方法中,所述步骤(b)包括 (bl)将各个子序列分別编码为码流,在所述编码码流中1帧间的间隔相 异或各子序列的I帧有序交错;(b2)将各子序列编码码流封装为数据包发送到接收端。 在本发明所述的一种视频容错控制方法中,所述步骤(b2)进一步包括 (b21)将各子序列的数据包按照时间顺序交替发送到接收端。 在本发明所述的一种视频容错控制方法中,所述步骤(c)包括 (cl)接收端接收到来自发送端的数据包后将数据包恢复为码流数据,并 解码上述码流数据;(c2 )判断是否所有子序列的码流均解码成功,若所有子序列都解码成功, 则执行(c3);否则执行(c4);(c3)根据原始的拆分空间关系,恢复原始视频图像帧;(c4 )根据解码成功的子序列进行空间插值计算恢复原始图像帧。在本发明所述的一种视频容错控制方法中,还包括发送端根据网络状况 进行反馈调节、空间拆分调节和/或I帧交错调节。本发明所述的一种视频容错控制方法,通过在发送端对视频序列的单帧图 像进行拆分编码,在接收端进行空间插值恢复原图像,实现了网络丢包情况下 的高流畅性视频通信。


下面将结合附图及实施例对本发明作进一步说明,附图中图l是现有视频通信中的数据包的示意图;图2是本发明一种视频容错控制系统实施例的示意图;图3是图2中的拆分单元拆分图像帧的示意图;图4是图2中的恢复单元恢复图像帧的示意图; 图5是图2中的编码单元编码子序列的示意图; 图6是图2中的编码单元以另一方式编码子序列的示意图; 图7是本发明一种视频容错控制方法实施例的流程示意图; 图8是图7中编码并发送子序列步骤实施例的流程图; 图9是图7中解码并恢复图像帧步骤实施例的流程图。
具体实施方式
针对视频传输过程中因数据包丢失造成的可察觉视频流畅性降低,本发 明提供了一种提高视频流畅性的容错控制系统及方法。本发明在视频通信的发 送端将视频序列的单帧图像拆分成两个或多个子序列,并对各个子序列进行独 立编码,在视频通信的接收端对接收到的各子序列的码流进行解码,并在仅接 收到图像的部分子序列码流可解码时,根据该解码子序列进行空间插值恢复原 图像。如图2所示,是本发明一种视频容错控制系统的一个实施例的结构示意 图。该系统包括拆分单元11、编码单元12、传输单元13、解码单元21和恢 复单元22,其中拆分单元ll、编码单元12以及传输单元13位于发送端10, 解码单元21和恢复单元22位于接收端20。拆分单元11用于将视频序列中的单帧图像均匀地拆分为至少两个子序 列。该拆分单元11在进行拆分时,其拆分的方式可以是隔列拆分为两个子 序列、隔行拆分为两个子序列、隔行隔列拆分成四个子序列。例如在图3所示 的实例中,原始视频图像大小是320x240,其可以隔列拆分为两个大小为160 x240的子序列。当然,具体的拆分方式可以有多种,并不局限于上述方式, 拆分的原则是尽量对称均匀,从而有利于根据部分子序列恢复原始图像。编码单元12用于将拆分单元11拆分获得的每一子序列独立编码为码流。 为了提高容错性,编码单元12在具体实现时,将各个子序列的I帧尽量交错。 例如编码单元12可以通过图5和图6的方式实现子序列的I帧交错。在图5 所示的方式中,各子序列的I帧间隔相同,后续子序列相对于前面的子序列的 I帧延时插入,从而保证各子序列的I帧有序交错。在图6所示的方式中,各
子序列的I帧间隔相互不同,例如可以使用互质的整数个P帧进行间隔,从而 使各子序列的I帧无序交错。传输单元13用于将各子序列的编码码流分别发送到接收端20。在本实施 例中,传输单元13将各子序列编码码流按照网络最大传输单元分包。为了保 证视频通信的连续性,传输单元13将各子序列的数据包按照时间顺序交替发 送,例如先发第一子序列的1个数据包,再发第二子序列的1个lt据包;或者 在延时和緩冲许可范围内交替发送多个数据包,例如先发送第一子序列的3 个数据包,再发送第二子序列的3个数据包。解码单元21用于解码接收的各子序列编码码流。该解码单元21可使用现 有的解码芯片实现。恢复单元22用于在所有子序列成功解码时根据原始拆分的空间关系恢复 原始图像帧,或在部分子序列解码成功时根据解码成功的子序列进行空间插值 计算恢复原始图像帧。例如图3中当隔列拆分为两个子序列的图像帧,仅解码 成功其中一个,则恢复单元22采用横向插值方式,将解码成功的子序列恢复 为原始图像帧。当原始图像只解码成功第一子序列(即图3中的白色子序列) 图像,第二子序列(即图3中的斜线子序列)图像解码失败,恢复单元22 按原始空间拆分逆向操作,将原始序列图像的奇数列用解码的第 一子序列图像 的各像素填充(图4中的白色条带),而偶数列像素(图4中的斜线条带)可 根据其近邻的白色条带像素插值得到,这样就近似恢复了原始序列图像,如图4所示。此外,由于在不同的通信过程或者同一过程中网络状况随时变化,可才艮据 对方的反馈信息调整发送端IO的发送策略。在上述系统中,发送端IO还可包 括一个调节单元,从而根据不同的网络状况选用不同容错级别的发送策略。该 调节单元可用于进行常规的反馈调节,此外该调节单元还提供空间拆分调节和 /或I帧交错调节。该调节单元的空间拆分及I帧交错调节策略可以但不限于如 下形式在丟包率低的网络,空间拆分为两个子序列,I帧间隔可稍大,I帧 交错可有序;而在丟包率特别高时,可以空间拆分为更多的子序列,I帧间隔 小些,I帧无序交错等。
如图7所示,是本发明一种视频容错控制方法的一个实施例的示意图。该 方法用于实现发送端和接收端之间的视频通信,具体包括以下步骤步骤S71:在发送端将视频序列中的完整图像帧均匀地拆分为至少两个子 序列。在该步骤中,可将完整图像帧以隔行、隔列或隔行隔列方式拆分为两个 或两个以上子序列。在进行图像帧拆分时,其拆分的方式可以是隔列拆分为两个子序列、隔 行拆分为两个子序列、隔行隔列拆分成四个子序列。当然,具体的拆分方式可 以有多种,并不局限于上述方式,拆分的原则是尽量对称均匀,从而有利于根 据部分子序列恢复原始图像。步骤S72:将每一子序列进行独立编码为码流,并将各子序列的编码码流 分别发送到接收端。步骤S73:接收端在所有子序列成功解码时根据原始拆分的空间关系恢复 原始图像帧,或在部分子序列解码成功时根据解码成功的子序列进行空间插值 计算恢复原始图像帧。例如当隔行拆分为两个子序列的图像帧中,仅解码成功其中一个,则采用 综向插值方式,将解码成功的子序列恢复为原始图像帧。如图8所示,是图7中编码并发送子序列步骤(步骤S72)实施例的流程 图。该步骤具体包括步骤S81:将各个子序列分别编码为码流,在每一子序列的编码码流中, 将P帧插入到I帧间,从而使I帧尽量交错。通过I帧交错,可以显著提高容 错性。例如可以通过图5和图6的方式实现子序列的I帧交错。在图5所示的 方式中,各子序列的I帧间隔相同,后续子序列相对于前面的子序列的I帧延 时插入,从而保证各子序列的I帧有序交错。在图6所示的方式中,各子序列 的I帧间隔相互不同,例如可以使用互质的整数个P帧进行间隔,从而使各子 序列的I帧无序交错。步骤S82:将各子序列编码码流进行封装为数据包,例如可以按照网络最 大传输单元分包。步骤S83:将各子序列的数据包包按照时间顺序交替发送到接收端,例如
先发第一子序列的l个数据包,再发第二子序列的1个数据包;或者在延时和 緩冲许可范围内交替发送多个数据包,例如先发送第一子序列的3个凄t据包, 再发送第二子序列的3个数据包。这样,通过顺序发送各子序列的数据包,可 保证视频通信的连续性。如图9所示,是图7中解码并恢复图像帧步骤(步骤S73 )实施例的流程 图。该步骤具体包括步骤S91:接收端接收到来自发送端的数据包后将数据包恢复为码流数 据,并解码上述码流数据。步骤S92:判断是否所有子序列的码流均解码成功。若所有子序列都解码 成功,则执行步骤S93;否则执行步骤S94。步骤S93:根据原始的拆分空间关系,按原始空间拆分逆向操作,恢复原 始视频图像帧。步骤S94:根据解码成功的子序列进行空间插值计算恢复原始图像帧。例 如图3中,当原始图像只解码成功第一子序列(即图3中的白色子序列)图 像,第二子序列(即图3中的斜线子序列)图像解码失败,按原始空间拆分 逆向操作,将原始序列图像的奇数列用解码的第 一子序列图像的各像素填充 (图4中的白色条带),而偶数列像素(图4中的斜线条带)可根据其近邻的 白色条带像素插值得到,这样就近似恢复了原始序列图像,如图4所示。此外,为了适应不同的网络状况,上述方法还可包括在发送端进行反^t贵调 节、空间拆分调节以及I帧交错调节等。使用本发明的系统及方法,可以显著提高视频传输的容错抗丢包能力,提 高视频播放的流畅性,改善用户体验。以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局 限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易 想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护 范围应该以权利要求的保护范围为准。
权利要求
1、一种视频容错控制系统,其特征在于,包括位于发送端的拆分单元、编码单元以及传输单元、位于接收端的解码单元和恢复单元,其中所述拆分单元,用于将视频序列中的完整图像帧均匀地拆分为至少两个子序列;所述编码单元,用于将每一所述子序列独立编码为码流;所述传输单元,用于将各子序列的编码码流分别发送到接收端;所述解码单元,用于解码接收的各子序列编码码流;所述恢复单元,在所有子序列成功解码时根据原始拆分的空间关系恢复原始图像帧,或在部分子序列解码成功时根据解码成功的子序列进行空间插值计算恢复原始图像帧。
2、 根据权利要求1所述的一种视频容错控制系统,其特征在于,所述拆 分单元将完整图〗象帧以隔4亍、隔列或隔4亍隔列方式拆分为至少两个子序列。
3、 根据权利要求1所述的一种视频容错控制系统,其特征在于,所述编 码单元在对各子序列进行编码时,使各子序列的I帧间的间隔相异或各子序列 的I帧有序交错。
4、 根据权利要求1所述的一种视频容错控制系统,其特征在于,所述传 输单元将各子序列的编码码流按时间顺序交替发送。
5、 根据权利要求1所述的一种视频容错控制系统,其特征在于,所述发 送端还包括调节单元,用于根据网络状况进行反馈调节、空间拆分调节和/或I 帧交错调节。
6、 一种视频容错控制方法,其特征在于,包括以下步骤(a) 在发送端将视频序列中的完整图像帧均匀地拆分为至少两个子序列;(b) 将每一子序列独立编码为码流,并将各子序列的编码码流分别发送 到接收端;(c) 接收端在所有子序列成功解码时根据原始拆分的空间关系恢复原始 图像帧,或在部分子序列解码成功时根据解码成功的子序列进行空间插值计算 恢复原始图像帧。
7、 根据权利要求6所述的一种视频容错控制方法,其特征在于,所述步 骤(a)中,所述完整图像帧以隔行、隔列或隔行隔列方式拆分为至少两个子 序列。
8、 根据权利要求6所述的一种视频容错控制方法,其特征在于,所述步 骤(b)包括(bl)将各个子序列分别编码为码流,在所述编码码流中I帧间的间隔相 异或各子序列的I帧有序交错;(b2 )将各子序列编码码流封装为数据包发送到接收端。
9、 根据权利要求8所述的一种视频容错控制方法,其特征在于,所述步 骤(b2)进一步包括(b21 )将各子序列的数据包按照时间顺序交替发送到接收端。
10、 根据权利要求6所述的一种视频容错控制方法,其特征在于,所述步 骤(c )包括(cl)接收端接收到来自发送端的数据包后将数据包恢复为码流数据,并 解码上述码流数据;(c2 )判断是否所有子序列的码流均解码成功,若所有子序列都解码成功, 则执行(c3 );否则执行(c4 );(c3 )根据原始的拆分空间关系,恢复原始视频图像帧;(c4 )根据解码成功的子序列进行空间插值计算恢复原始图像帧。
11、 根据权利要求6所述的一种视频容错控制方法,其特征在于,还包括: 发送端根据网络状况进行反馈调节、空间拆分调节和/或I帧交错调节。
全文摘要
本发明公开了一种视频容错控制系统,包括位于发送端的拆分单元、编码单元以及传输单元、位于接收端的解码单元和恢复单元,其中所述拆分单元,用于将视频序列中的完整图像帧均匀地拆分为至少两个子序列;所述编码单元,用于将每一所述子序列独立编码为码流;所述传输单元,用于将各子序列的编码码流分别发送到接收端;所述解码单元,用于解码接收的各子序列编码码流;所述恢复单元,在所有子序列成功解码时根据原始拆分的空间关系恢复原始图像帧,或在部分子序列解码成功时根据解码成功的子序列进行空间插值计算恢复原始图像帧。本发明还提供一种相关方法。本发明可以显著提高视频传输的容错抗丢包能力,提高视频播放的流畅性。
文档编号H04N7/64GK101127918SQ20071012362
公开日2008年2月20日 申请日期2007年9月25日 优先权日2007年9月25日
发明者陈敬昌 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1