LTE⁃V2X下的实时视频流传输策略研究*
2021-07-05褚端峰王卓尔邱雨洁陆丽萍徐志豪吉鑫钰
褚端峰,王卓尔,邱雨洁,陆丽萍,徐志豪,吉鑫钰
(1.武汉理工大学,智能交通系统研究中心,武汉 430070;2.武汉理工大学计算机科学与技术学院,武汉 430070)
前言
近年来,我国提出大力发展集成人工智能、区块链和无线通信等先进技术的智能交通系统(intelligent transportation system,ITS),使道路和车辆具备感知数据、交互数据、处理数据的能力,实现一个安全高效的智能交通环境。在ITS中,V2X(vehicle⁃to⁃everything)技术是实现无线信息交互的基础。有关研究表明,LTE⁃V2X技术能够提升道路安全性和便利性,增加社会效益和经济效益[1]。基于V2X技术捕获周围道路环境的实时视频并分享给其他车辆,可以有效提升高级驾驶辅助系统,减少驾驶员视觉盲区带来的交通事故,帮助驾驶员提高驾驶安全性和交通效率[2]。
目前用于自适应视频传输的主流方法主要有3种:基于网络条件[3-4]、基于缓冲区状态[5-6]以及基于网络条件和缓冲区状态的混合方法[7-8]。其中基于网络条件的方法会基于当前网络优劣动态地调整服务器端发送的视频码率,在性能上很大程度取决于网络估计的准确性。基于缓冲区状态的方法会基于缓冲区填充比率动态调整视频码率,关于缓冲区初始缓冲时间、缓冲区状态与视频传输速率的关系设计都尤为重要,直接影响应用效果。混合方法综合这两大基础,基于真实的网络环境构建视频流缓冲区,有效减少视频播放冻结次数。Zhou等[9]获取车辆的速度和加速度估计车辆的轨迹,通过位置信道状态估计器计算数据传输速率,基于数据传输速率采取车辆协同的视频流传输策略。Xing等[10]基于缓冲区状态中的视频缓冲级别和传输速率,提出中继选择和自适应视频层选择的传输方案。Xu等[11]提出一种动态规划算法解决可伸缩视频流的传输问题,基于缓冲窗口和信噪比估算器来解决车辆高移动性的问题,通过图片组的自适应缓冲窗口提高资源利用效率和视频质量。
上述研究均未能考虑实际情况下车联网蜂窝小区内的实时视频流传输会遇到以下具体问题:首先,无线信道会遭受时变衰落、阴影和干扰的影响,导致链路吞吐量以及视频质量发生较大变化;其次,通信还受到车载网络的高移动性和动态特性的影响。如果系统内整体V2V用户通信吞吐量不高,那么实时视频流的传输画面质量势必会受到很大影响。
因此,本研究将从两个方面着手提高LTE⁃V2X下实时视频流传输的画面质量。首先,为提高蜂窝小区的系统性能以提升实时视频流传输质量,提出在不完美信道状态下,满足V2X用户异构服务质量的同时,最大化V2V通信吞吐量的资源分配算法;其次,使用可伸缩视频编码技术[12-13]将实时视频数据分为基础层和增强层,支持动态改变传输的视频画面质量,根据视频流质量快速完成缓冲区初始缓冲,设计视频传输建立协议和自适应传输算法以提高视频画面质量。
1 实时视频流传输系统架构
本文中所研究的LTE⁃V2X下的实时视频流传输场景如图1所示。蜂窝小区内,M辆DUE(D2D用户,进行V2V通信)与K辆CUE(蜂窝用户,进行V2I通信)共享通信链路。在该场景下,高速公路是双向直道,每个方向具有一个车道。当驾驶员遇到前方为大型车辆时,视角会受到遮挡,从而难以评估是否应该超车。因此,可通过摄像头、基于LTE⁃V的车载无线通信设备和显示器等硬件,建立智能网联汽车之间的无线视频传输连接,实时获取前车摄像头采集的视频数据。
图1 高速公路场景下的视频流传输
实现网联汽车之间可靠的实时视频流传输过程中,分别对视频编码、实时的网络感知方法、视频自适应传输策略进行研究,视频传输框架如图2所示。
如图2所示,首先摄像头实时采集视频流,传输到视频处理模块。接着视频处理模块中的视频编码器采用SVC(scalable video coding)技术进行编码,编码后的视频数据帧具有不同的视频质量等级。然后视频发送方进行网络感知,包括本车感知的信道质量和车辆密度,以及视频接收方的接收速率、分组丢包率、分组传输时延和缓冲区级别。下一步以网络感知的数据为基础,用自适应传输策略求解出传输视频质量等级。最后车载通信设备按照求解的视频等级进行无线传输。
图2 视频传输框架图
2 实时视频流传输问题建模
为提高LTE⁃V2X下实时视频流传输画面质量,从系统性能优化和视频传输算法优化两方面入手。系统优化目标是在蜂窝小区内使V2V链路的总吞吐量最大化,并满足V2I链路可靠性和V2V链路最低吞吐量的约束,尽可能减小V2V链路受到的干扰,从而提高系统性能,以改善智能网联汽车通过V2V进行实时视频流传输的视频质量;算法部分采用可伸缩视频编码技术把实时视频数据分为基础层和增强层,从而支持动态改变传输的视频画面质量。进行通信网络环境和视频接收缓冲区的建模,完成网络感知,并设计视频传输建立协议和自适应传输算法。
2.1 资源分配系统模型
在实现每个CUE用户与基站可靠通信的过程中,通过设置第m个CUE用户的信噪比sinrcm高于一个预设阈值,来保证数据包能被接收。基于不完美信道下的信道增益建模[14-15]和吞吐量计算方法,DUE用户总吞吐量可以表示为
该通信资源分配问题是一个优化问题,受到式(2)~式(7)的约束。
式(2)表示DUE用户的最低吞吐量约束:
式(5)保证CUE用户的发射功率不会超过最大发射功率。
式(7)表示一个DUE仅允许访问单个CUE的频谱。
该优化问题的求解结合了Liang等[16]求解V2I吞吐量的方法。
2.2 视频传输系统模型
2.2.1 视频编码
视频数据均采用可伸缩视频编码(SVC)技术进行编码。编码后的视频数据以一个GOP为单位,每个GOP对应一个图像组,所有GOP的持续时间都为TGOP。GOP中共有k层数据帧,包含1个基本层数据帧和k-1个增强层数据帧。在实际视频传输过程中,接收到越多的视频增强层数据,那么视频质量越高。定义传输视频质量共有k种等级,视频等级越高,对应收到的增强层数据帧数越多。且每种视频质量等级都对应固定的视频传输帧率、数据帧大小和比特率。其中视频质量等级j对应的比特率为Sj,视频质量等级越高的比特率越大。因此,在视频传输过程中,只要解得传输视频质量的等级,即可确定发送的视频数据帧大小和发送间隔。
2.2.2 网络感知
对视频接收方反馈参数和视频发送方的感知参数,以及每个参数对应的统计模型展开研究。
(1)视频接收方反馈
a.接收速率
定义接收速率为一定时间内视频发送方的数据帧通过LTE-V2V成功地被视频接收方接收的平均速率。它的计算方法为
式中:Tkbps表示接收速率,kbps;M为一个GOP的传输数据帧个数,该值由当前GOP对应的视频质量级别确定;TGOP表示完成一个GOP视频数据的时间长度,由当前GOP的最后一帧数据的时间序列减去第一帧收到的时间序列;Ci表示当前GOP中序号为i的数据帧大小,单位为字节;flag i的值为1或0,分别表示收到和未收到GOP中序号为i的数据帧。
b.分组丢包率
以一个GOP的数据帧为一个组,对丢包率PLR进行统计,即
c.分组传输时延
定义完成传输一个GOP为一个统计周期。视频数据帧在应用层添加时间戳,视频接收方在应用层收到时根据时间戳来计算一个数据帧的传输时延。通过该方法,在每个周期对视频接收方多个数据帧的平均传输时延进行统计,计算公式为
式中:Delayisec表示视频流中第i个GOP中数据帧的平均传输时延;ti,jrecv为视频流传输过程中接收方读到数据帧j时的时间戳;ti,jsend为发送方在数据传输前给数据帧j添加的当前时间戳。
凭借其灵活的开发能力与按照客户要求定制专业解决方案的能力,汉高广受赞誉。而这一成就得益于全球技术测试中心的支持,以及公司对研发和创新的高度重视。此外,公司拥有广泛的设备、工具和工程合作伙伴网络,为全球原始设备制造商和一级客户群提供服务。汉高为下一代电力驱动汽车系统设计并大批量生产了全系列粘合剂解决方案,彰显了公司致力于兑现其预测客户电气化需求的承诺。
视频流通过LTE-V2V传输时,数据帧j可能因为字节数过大而划分为n个数据包。在传输过程中,不可避免地会遇到数据包丢失的情况,从而影响第i个GOP的时延计算。本文中的解决方法是根据数据帧序号j和数据包序号n进行处理:若j=1的数据包丢失,则造成基本层数据帧不完整而GOP无法进行解码,此时直接将该GOP的传输时延赋为无穷大。若不是j=1的数据包丢失,计算方法为
d.缓冲区级别
缓冲区的设计目的是提高实时视频播放的流畅性,以及通过缓冲区的视频数据帧数量为视频传输决策提供帮助。缓冲区设计见图3。
图3 视频接收方缓冲区
(2)自身感知
a.车辆密度
在视频发送方,车辆密度ρ等于车辆数量除以智能网联汽车组成的总表面积。ρ越大,则说明周围的车辆越多,更大的概率发生通信干扰,计算公式为
式中:Ni表示与第i辆车在同一区域下的车辆数量,以接收到其他车的BSM数据包表示在同一个区域下;Si表示与第i辆车在同一区域下的总表面积,采用Immich等[17]中的近似凸包算法(bentley faust pre⁃parata,BFP)来进行计算。
在LTE-V2X中,信道质量指标(channel quality indicator,CQI)是描述信道状态信息的一项重要指标。CQI能反映当前信道质量的好坏,和信道的信号与干扰加噪声比SINR(signal to interference plus noise ratio)的大小有直接关系。当SINR越大时,表明当前的信道质量越好,对应的CQI值也就越大。调制和编码方案就是以CQI为基础进行选择的。
3 LTE⁃V2X下实时视频流传输策略
3.1 通信资源分配算法
3.1.1 功率分配
本算法用来在复用频谱资源的DUE-CUE中,对单个配对进行最佳功率分配。给定任意频谱复用的情况下,例如DUEk复用CUEm频谱,单个CUEDUE对的功率分配问题被简化为
式(16)保证CUE用户的发射功率不会超过最大发射功率:
图4 两种功率可行解区域
DUEk复用CUEm频谱资源并配对时,吞吐量计算公式为
3.1.2 频谱复用对匹配
经过以上计算,得到所有DUE-CUE的可行频谱复用对。在网联汽车V2X场景中,最终一个DUE至多选择一个CUE的信道进行复用并传输数据。因为本文考虑的是一个CUE被一个DUE复用的情况,所以一个CUE至多选择一个DUE组成对。因此,式(1)最终分配最优的资源分配问题可简化为一个最大权值二分匹配问题,即
该简化的资源分配问题受到式(26)和式(27)的约束。
式(26)表示一个CUE的频谱只能与单个DUE共享。
式(27)表示一个CUE的频谱只能与单个DUE共享。
利用匈牙利算法[18],可解得在满足V2I可靠通信的情况下,以最大化V2V总吞吐量为目标的资源分配方案,即CUE和DUE用户的发射功率控制和频谱复用选择。每一步的求解都基于上一步的结果,具体算法的伪代码如表1所示。
表1 通信资源分配算法
3.2 实时视频流自适应传输算法
当两辆智能网联汽车完成视频传输的建立后,开始实时视频流的传输。实时视频传输的过程分为两个阶段,第1阶段完成视频缓冲区初始缓冲,第2阶段实时进行视频流的传输。
第1阶段中,须完成缓冲时间为Tini的视频缓冲区。其中Tini的取值为TGOP的正整数倍,这是因为视频解码时以一个GOP为单位。
该方案较保守地提高视频发送方的视频质量级别,尽可能避免发生网络拥塞而增大延时。传输的带宽基于最近几组视频接收方的瞬时接收速率进行计算,且越靠近当前时间的瞬时接收速率权重越大。使用高斯函数进行接收速率的权重计算,当前时刻的平均速率Saver计算公式为
式中:N为计算平均速率时需要瞬时接收速率数据的个数;c决定高斯曲线的宽窄程度,越靠近当前时间的瞬时速率权重越大。其中N取30,c取12。实时视频缓冲第1阶段的流程如图5所示。
图5 视频缓冲流程图
在实时视频流传输的第2个阶段中,视频接收方开始对视频流数据帧进行解码播放。该阶段基于网络感知实时视频流的传输质量,并保证每个GOP基本层的数据被可靠接收。在视频发送方网络感知参数包括信道质量、车辆密度是视频接收方反馈的接收速率、分组丢包率、分组传输时延和缓冲区级别。分组丢包率由加权算术平均值计算而来,表示当前与未来的数据包丢失帧数与总数据帧数的比例,使用最近的5个丢包率作为输入数据,计算公式为
式 中:权 值wi参 考Immich[17]定 义,权 值 为{0.4,0.3,0.15,0.1,0.05};xi表示每组数据帧的丢包率,共有5组。其中权值0.4为最近xi的权值系数。采用该计算方法优点有:与隐马尔可夫模型来预测PLR相比,虽然结果不是高度准确,但可以快速获取比较可靠的结果;可以实时进行计算;该方法遵循无线网络的时变误差特性。Immich[19]经过大量视频序列的仿真表明:丢包率小于5%时视频质量是良好的;丢包率处于5%~22%之间时,用户可以忍受对应的视频质量。丢包率大于22%时视频质量变得很差。PLR表达式为
信道质量共有15级,根据调制和编码方式不同,有不同传输效率,且划分较细。在视频传输的过程中,并不需要精确的信道质量级别,且信道质量级别本身会存在细微误差。所以根据信道质量的调制方式划分为3个级别,即
式中:c为原始的信道质量级别,共划分为15级;QPSK、16QAM、64QAM分别为调制方式。
视频发送方在选择传输视频质量级别时,首先根据当前缓冲级别BL进行决策。缓冲级别可以反映当前缓冲的视频数据帧,直接影响视频的播放质量。例如当BL较小时,则说明缓冲的视频数据帧较少,接下来大概率会发生缓冲区视频数据帧用完导致视频播放停止的情况。所以BL在一定程度上也反映一段时间内网络状态的好坏。决策时,若BL小于丢弃阈值,则视频传输质量ql根据网络链路好坏赋值为0或ql减1。若BL大于丢弃阈值,则视频传输质量ql根据网络链路状态分为3个级别,与传输带宽相结合动态选择视频质量级别。其中当前丢弃阈值Dropi的计算公式为
式中:A为常数;ρi为车辆密度;Tini为初始缓冲时间;Dropi-1表示上个周期的丢弃阈值;Delaymin和Delaymax分别表示当前一个GOP中数据帧传输延时最小值和最大值。
图6为第2阶段基于网络环境和缓冲区级别进行实时视频的自适应传输流程图。当视频缓冲区级别小于丢弃阈值Dropi时,说明当前缓冲的视频数据帧较少,基于网络环境降低视频级别ql。当视频缓冲区级别大于丢弃阈值Dropi时,说明当前缓冲的视频数据帧较多,可以基于网络环境继续提高视频质量级别ql,进行视频自适应传输。当视频接收方不需要实时视频数据时,向视频发送方发送断开视频传输连接的请求。
图6 实时视频自适应传输流程图
4 仿真验证
基于开源的车辆网络仿真框架(vehicles in network simulation,Veins)LTE,完成仿真实验平台的搭建。基于仿真测试平台分别对提出的V2X资源分配和视频流传输算法进行验证分析。
4.1 V2X资源分配实验
高速公路场景模拟设置如下,该高速公路穿过一个以基站为中心的单个LTE蜂窝小区,每个方向有3个车道,每个车道宽度为3.75 m,穿过蜂窝小区的路段长度为800 m。LTE蜂窝小区的覆盖半径为500 m,噪声功率为-174 dBm/Hz。V2I用户和V2V用户在LTE蜂窝小区范围内的道路上均匀分布,其中V2I用户数量固定为20,V2V用户的对数在8~18之间选取。
资源分配系统的仿真参数见表2。
表2 资源分配系统仿真参数
图7比较本文资源分配算法、等功率资源分配算法和随机功率资源分配算法下LTE蜂窝小区系统V2V平均吞吐量随V2V用户数量的变化情况。其中V2V用户和V2I用户的最大发射功率都为23 dBm。
图7 V2V平均吞吐量随V2V用户对数变化
本文算法在求解频谱资源和功率分配方案时,考虑V2I可靠通信下保证V2V最低吞吐量,以及在LTE蜂窝小区内减小对V2V通信链路造成信号干扰。而等功率资源分配算法和随机功率资源分配算法在小区内没有很好地对每个V2V用户和V2I用户进行发射功率控制,所以V2V用户的通信链路受到干扰更大,平均吞吐量比本文提出的资源分配算法要小。
随着V2V用户对数增多时,图中3个算法的平均吞吐量都会减小。这是因为V2V用户数量增加时,LTE蜂窝小区内的部分V2V通信链路会受到更大的信号干扰。所以在保证可靠通信情况下,V2V用户频谱分配和功率分配过程中可选择的复用组合更少,V2V用户对的平均吞吐量会越来越小。在V2V用户对数增多时,本文提出的资源分配算法比等功率资源分配算法高出的吞吐量之差也越来越大。该现象表明,本文提出的资源分配算法在信号干扰加大的情况下,求解的频谱分配和发射功率对于V2V平均吞吐量的提高越来越明显。
4.2 视频流传输实验
视频仿真实验采用的视频文件为车载摄像头采集的真实数据,分辨率为640×360像素,帧速率为30帧/s。视频数据编码为一个基础层和5个增强层数据,每个GOP的持续时间TGOP为0.5 s。针对编码后的视频数据帧,对每个视频质量级别的数据帧大小和视频画面质量进行统计,得出平均比特率和峰值信噪比(peak signal to noise ratio,PSNR)。其中本文视频数据采用SVC编码后的视频分级见表3。
表3 SVC视频信息
在仿真实验中,初始视频缓冲时间Tini为0.5 s。环境车的数量为V2V用户数量的1/3。采用PSNR和平均冻结次数作为评价智能网联汽车之间视频传输质量的指标。将本文视频流传输算法与具有基础层保护的视频传输算法RALSB[20]和视频质量自适应传输算法VQAS[10]进行比较,如图8所示。
从图8可以看出,随着V2V用户数量的增加,3个算法的视频平均PSNR逐渐降低。这是因为实时视频流传输的V2V用户变多,导致系统负载增加,受到的信号干扰变大,所以实际平均传输速率减小,丢包率增大。
图8 视频平均PSNR随V2V用户数量变化
在V2V用户数量增加的过程中,本文提出的视频流传输算法的平均PSNR是最优的。RALSB算法在V2V用户数量在24~36之间时,平均PSNR的变化斜率最小,这是因为此时网络拥塞较大,该算法优先保证基础层视频数据帧,从而最大可能保证一个GOP能被正常的解码和播放。
图9为视频平均冻结次数随V2V用户数量变化。从图9中看出,V2V用户数量从12~36增加的过程中,本文提出的视频流传输算法在冻结次数上都要少于RALSB算法和VQAS算法,说明视频观看体验是最优的。同时表明本文提出的视频流传输算法在应对车载无线网络信道不稳定或网络拥塞的情况下,有着更好的网络感知能力和适应能力。
图9 视频平均冻结次数随V2V用户数量变化
5 结论
对V2X资源分配问题和实时视频传输问题进行深入研究,旨在提高蜂窝小区内的视频传输质量,增强智能网联汽车的视角盲区感知能力,并采用仿真进行验证和分析,得出如下结论。
(1)在V2V用户数量增加的过程中,本文提出的视频流传输算法在平均PSNR上要高于其他两个算法,说明本文提出的算法在视频平均质量上最优。
(2)本文提出的视频流传输算法在冻结次数上都要少于RALSB算法和VQAS算法,说明视频观看体验是最优的。同时表明本文提出的视频流传输算法在应对车载无线网络信道不稳定或网络拥塞的情况下,有着更好的网络感知能力和适应能力,所以能更加合理地改变视频传输级别,减小视频播放冻结的发生。
本文提出的算法是基于单个蜂窝小区完成的通信资源分配,如果考虑多个蜂窝小区的场景,需要在信道增益处考虑不同蜂窝小区之间的信号干扰,再采用本文的通信资源分配算法进行问题的求解。未来的研究工作主要集中在解决多个蜂窝小区场景下的通信资源分配问题,在视频流传输算法中加入路由算法,来提高通信链路的吞吐量和可靠性。