视频流分片编码的无人机视频传输方法 下载: 1201次
1 引言
近年来,消费级无人机(UAV)以价格低、操作简单等优势,成为年轻和入门级消费群体的首选,在航拍、超低空自拍等领域得到了广泛应用。然而,受通信带宽的限制,消费级无人机在传输高清图像、实时视频时存在实时性差、可靠性低等问题,限制了其进一步的应用。如何在现有带宽的条件下提高图像传输的实时性和可靠性,成为该领域的热点问题。
文献[ 1]设计的一种编码正交频分复用(COFDM)无线视频传输系统具有传输速率快、频谱利用率高、绕射能力强等显著特点,虽然能够满足市场上的部分需求,但是由于在实际工作中无线衰落信道的不确定性,容易引起多普勒频移效应。文献[ 2]提出一种基于传输控制协议(TCP)的网络视频传输系统,该系统能够保证传输数据的可靠性,但是由于TCP对失败数据的重发机制,传输数据在传输中附加了校验数据,增加了网络的负担。文献[ 3]提出一种基于JPEG2000(joint photographic experts group 2000)压缩标准的无线图像传输方案,该方案对原始图像进行分块分解,对各分量进行小波变换、量化并组成矩形编码块,后续对编码块的系数进行位平面编码,进而得到可传输的压缩码流。该方案在传输低分辨率图像时能够保证很好的实时性,但是传输高分辨图像时有一定的时延性且不能保证实时性。文献[ 4-5]提出一种基于改进量化表的JPEG图像压缩算法,该算法很好地改善了压缩比和编解码速度,更有利于图像传输,其中量化表的设定比较复杂,资源消耗较大。文献[ 6]将JPEG2000图像压缩算法应用在Android平台,在网络传输方面,JPEG2000更具有优势。文献[ 7-8]在GPU上对JPEG2000图像压缩算法进行加速处理,实验表明像素为1024×720的高清图像进行离散小波变换(DWT)的时间为6ms左右,压缩后的图像更适合于高清图像传输。
网络时延、传输帧率、视觉可观性等指标在高清图像传输中极为重要,是影响无人机高清视频传输质量的重要因素。在图像传输过程中,常用的都是基于像素级的传输,传输字节数为图像的分辨率乘以通道数,对于普通摄像头拍摄到的图像(尺寸为640×480×3),基于像素访问的图像传输需要传输921600字节,这对于网络资源的消耗很大,同时也无法保证图像数据的可靠性,容易造成视频卡顿。
2 所提算法
针对现有方法在消费级无人机视频传输中存在时延较大和可靠性低的问题,本文研究消费级无人机高清图像传输,提出一种视频流分帧分片、基于JPEG2000压缩编码的高并发的视频传输算法[3]。旨在实现低时延的图像传输,采用基于用户数据协议(UDP)的图像传输机制传输图像数据,以解决TCP重发机制中的传输中断。在不影响视频质量的前提下采用略有压缩的编码算法,以降低图像在网络传输中的负荷。对网络传输模型进行相应改动,实现低时延、高速率的图像多并发传输。
在发送端中,颜色转换模块(color transform)用来提取输入图像的YCrCb分量;三级离散小波正变换模块(third-level FDWT)用来对输入分量的三级小波进行分解[9];量化模块(quantization)对小波分解的样本值进行整数量化处理,结果经位平面分解模块(bit plane decomposition)处理后得到三维二进制矩阵;数据流编码模块(code stream)负责组织码流,通过并行发送模块(concurrent send)传输数据。接收端与发送端过程相逆,数据缓存模块(buffer pool)负责缓存接收图像;图像质量评价模块(quality evaluation)负责对输入图像和输出图像进行质量评估。
3 可靠性传输方案设计
3.1 构建传输模型
目前网络传输协议主要有TCP和UDP。庞大的视频流数据传输时容易造成传输网络的严重瘫痪。选择基于图片流的形式,每秒传输多帧图像,从而形成连续的视频流。UDP具有资源消耗小、处理速度快、无需建立握手环节等特点,更适用于视频图像流的传输,相对TCP更具有优势,因此采用UDP进行图像数据传输。但是UDP传输层无法保证数据的可靠性,为了保证视频的可靠性传输,通过基于UDP的应用层来保证数据的可靠性传输,实现确认机制、重传机制、窗口确认机制。发送流程包括包分片编号、包确认、包重发;接收流程包括顺序调包、包序号确认。通过抓包和发包有请求的方式实现可靠性传输。
为保证接收端视频流数据的流畅稳定,采用队列方式实现数据码流的接收,接收端信号经解码反量化复原处理后存入缓存区中,等待后续操作。在数据传输端对图像数据流进行分片处理、并行传输,提高了传输效率,减小了传输时延[10-11]。
3.2 图像压缩编码
对分块数据进行处理,采用帧间数据压缩技术实现视频流数据的压缩。选用DWT,将图像数据从空间域变换到频率域,所构成的基向量与图像内容无关,对于图像的噪声也具有一定的抑制作用。图像经过DWT,其频率系数主要集中分布在比较小的范围内,且主要分布在低频部分[12]。将频谱中能量较小的部分舍弃,尽可能地保留主频率分量,提高数据压缩比[12-14]。
1)图像偏移及归一化
图像像素值均为0~255,包含较大的直流分量。为使图像数据动态范围关于0对称,设n位无符号整数分量的样本值
将每个像素值均减去128,保证小波变换系数动态范围的稳定,这更利于编码。采用实数型DWT将图像数据除以128,实现数据的归一化。
2)分量变换
目前常用的图像色彩是RGB三通道,人眼对RGB三通道的视觉敏感程度不是独立的。在YCbCr颜色空间中,Y代表亮度,Cb和Cr分别代表蓝色分量和红色分量,两者合称为色彩分量。YCbCr颜色空间具有将色度与亮度分离的特点。对比RGB和YCbCr,当光强发生变化时,RGB空间中R,G,B分量会同时发生变化,而在YCbCr空间中,色彩分量受光强度影响不大。为了去除三通道之间的相关性,对其进行线性变换,表达式为
式中:
3) 离散小波正变换(FDWT)和离散小波逆变换(IDWT)
对采集到的一帧图像进行小波离散分解,输出结果如
图 4. 小波分解细节图。(a)详细信息;(b)水平细节; (c)垂直细节;(d)对角细节
Fig. 4. Wavelet decomposition detail diagram. (a) Detailed information; (b) horizontal detail; (c) vertical detail; (d) diagonal detail
从
小波变换可以生成大量0或者近似0的变换系数,当小波系数低于阈值时,将小波系数设置为0, 故而可以得到较高的压缩率。在高清视频流传输时,保证视觉不受影响的前提下,将稀疏化地处理高频,直接传输处理后的低频分量LL3,得到有损压缩的视频流数据。
式中:
4)量化与反量化
有损压缩中样本值均为实数,为了在传输系统中进行传输,需将其量化为整数,以便使用有限个符号表示。量化可以减小非零系数的幅度值和增加0值系数的数目,在一定主观保真的前提下,可以丢弃对视觉效果影响不大的信息。量化是图像质量下降的主要原因[15]。假设子带b中的系数为
qb(u,v)=sign
式中:
5)平面分解与码流组织
将具有256个灰度级的图像分解为8个位平面,所谓位平面就是依次取出每个像素点的数值组成一个位平面。每个像素点的灰度值可由8个二进制位来表示。对一幅用多个比特表示灰度值的图像来说,每个比特可看作1个二值的平面即位面。
由于编码解码过程中消耗大量的时间及资源,编解码的复杂度对高清视频流数据的实时传递具有极大的影响,现有方法为了提高压缩比,增大了编码空间复杂度,不适用于无人机视频传输。因此本文弱化编码解码的过程,直接采用小波变换,对得到的
4 实验结果与分析
借鉴JPEG2000图像编码压缩思想,采用设计的实时视频传输系统对原始图像的三分量进行三级FDWT分解、量化、位平面分解,以简化编解码的过程,降低算法复杂度,进而提高传输的效率。在局域网WIFI环境,视频采集端与接收端距离20m,两台Window10 操作系统、Intel(R) Core(TM) CPU i7-8700HQ 3.20GHz 8G内存电脑平台上采用Python3软件进行仿真实验,一台负责实时采集视频,一台负责实时视频的接收。摄像头采用通用串行总线(USB)摄像头,输出640×480和1280×720两种分辨率。
4.1 收发传输实验
1)采集端
表 5. 采集图像和接收图像的各参数统计结果
Table 5. Statistical results of each parameter of collected and received images
|
表 2. 尺寸为640×480图像质量的定量描述
Table 2. Quantitative description of 640×480 image quality
|
表 1. 传输过程中指标对比
Table 1. Comparison of indicators in transmission process
|
表 4. 不同算法的性能对比
Table 4. Performance comparison of different algorithms
|
表 3. 尺寸为1280×720图像质量的定量描述
Table 3. Quantitative description of 1280×720 image quality
|
图 9. 采集端三分量分解量化输出图。 (a) Y; (b) Cr; (c) Cb
Fig. 9. Three-component decomposition quantization output images at acquisition end. (a) Y; (b) Cr; (c) Cb
2)接收端
图 10. 接收端三分量复原输出图。 (a) Y; (b) Cr; (c) Cb
Fig. 10. Three-component restoration output images at receiving end. (a) Y; (b) Cr; (c) Cb
4.2 传输图像质量评价
采用定量和定性两种描述方法对所设计的传输系统进行验证与分析。
1)定性描述
对比4.1节收发实验中采集端和接收端的图像,在视觉效果上差异不大。如
2)定量描述
结构相似性(SSIM)是一种衡量两幅图片相似度的指标,从亮度、对比度及结构角度对图像质量进行评价。SSIM的输入为待评价相似性的两张图像[16]。假设输入的两张图像分别是
其中
式中:
SSIM(x,y)=
SSIM具有对称性,即
式中:
SSIM越接近于1,RMSE越小,图像之间的差异就越小,相似程度就越高。
4.3 图像传输算法性能对比分析
通过传输实验和图像质量分析,初步验证了所提传输算法的可行性。在设计的传输系统上搭建不同传输算法进行性能对比分析。
采用Opencv软件中二进制编解码函数(imencode/imdecode)实现JPEG格式的图像压缩,在压缩率P为80、分片参数R为0时,只能实现640×480图像的压缩传输。JPEG2000和所提算法相比,JPEG2000图像失真更为明显,时延也有所增加,这主要是因为JPEG2000量化熵编码过程中的损失[20]。奇异值分解(SVD)中的奇异值S越大,图像质量越好,相应的时延会变大[21]。所提算法直接传输的是经位平面分解得到的三维二进制矩阵,避免了JPEG2000熵编解码消耗时间,同时提高了接收端图像质量,但是接收端时延增大、帧率降低。所提算法能较大程度地保证图像的传输质量,同时图像分片编码的思想能够最大程度地发挥硬件设备优势,保证在载荷范围内充分利用板载资源进行图像传输。综上所述,所提算法能够满足消费级无人机视频传输需求,具备一定的实际可行性。
4.4 实时视频传输测试
消费级无人机实时视频的传输过程中主要关注三个指标,即时延、帧率、分辨率,其中传输时延影响显示帧率,分辨率影响视频像素。主要针对640×480和1280×720两种分辨率,在10分片下进行实时视频传输指标测试。对于网络时延和视频帧率,采用每10帧图像的各指标平均值进行一次数据的统计,传输网络时延和显示频率以10帧时间为间隔。
从
4.5 低时延可靠性分析
为验证设计的基于视频流分片编码的无人机视频传输算法的实际可行性,针对640×480和1280×720两种分辨率,在10分片下对接收端进行疲劳测试,依旧采用10帧为时间间隔,横坐标表示连续采集90×10帧图像数,纵坐标表示接收帧率,对接收时延和接收帧率绘制连续变化曲线,分别如
从
5 结论
为了保证消费级无人机视频的低时延可靠性传输,提出一种基于分片编码多并发的低时延无人机视频传输算法。采用各分量压缩编码的方式,在图像发送时,首先对视频图像进行分帧分片,采用分量变换得到Y,Cr,Cb;对各分量的低频系数进行FDWT,保证压缩后的图像能量更为集中;然后采用位平面分解得到三维二进制矩阵,对压缩后的数据流进行协议编码;最后采用多线程并行传输图像数据。图像接收时,首先利用接收图像数据,并采用图像解码、三级离散小波逆变换、组帧等方式实现图像还原,然后将完整数据存入二级缓存区等待后续处理。实验结果表明,所提算法能够保证视频在视觉效果上基本不受影响,能够满足消费级无人机在超低空拍摄时高清视频流传输的要求,具有一定的实际可行性。
[1] 李德伟. 应急领域中基于COFDM的无线传输系统研究和应用[J]. 无线电工程, 2019, 49(8): 695-698.
[2] 郭志涛, 韩海净, 孔江浩, 等. 基于Android移动终端的多功能视频监控系统设计[J]. 现代电子技术, 2018, 41(16): 96-99, 103.
[3] 刘锦杨, 戚飞虎. 一种基于JPEG2000的无线图像传输方法[J]. 计算机工程, 2004, 30(13): 140-142.
[4] 饶哲宇, 王进华. 基于人眼视觉系统的JPEG压缩算法[J]. 广东化工, 2018, 45(1): 22-23, 31.
Rao Z Y, Wang J H. An algorithm of JPEG image compression based on human visual system[J]. Guangdong Chemical Industry, 2018, 45(1): 22-23, 31.
[5] 张雅媛, 孔令罔. 一种基于改进量化表的JPEG图像压缩算法[J]. 包装工程, 2016, 37(13): 189-194.
Zhang Y Y, Kong L W. A JPEG image compression algorithm based on improved quantization table[J]. Packaging Engineering, 2016, 37(13): 189-194.
[6] 季通明, 鲍胜利. JPEG2000图像压缩算法在Android平台的应用[J]. 计算机应用, 2017, 37(S2): 203-206.
[7] 李玉峰, 吴蔚, 王恺, 等. 基于GPGPU的JPEG2000图像压缩方法[J]. 电子器件, 2013, 36(2): 163-168.
Li Y F, Wu W, Wang K, et al. JPEG2000 image compression method based on GPGPU[J]. Chinese Journal of Electron Devices, 2013, 36(2): 163-168.
[8] 张敏华, 张剑贤, 裘雪红, 等. 基于OpenCL的JPEG压缩算法并行化设计与实现[J]. 计算机工程与科学, 2017, 39(5): 855-860.
Zhang M H, Zhang J X, Qiu X H, et al. Parallel design and implementation of JPEG compression algorithm based on OpenCL[J]. Computer Engineering & Science, 2017, 39(5): 855-860.
[9] 张盼, 张为. 多级离散小波变换的高效超大规模集成架构[J]. 光学学报, 2019, 39(4): 0412004.
[10] 李其虎, 文运丰, 贾瑞才, 等. 无人飞行器超低延时高速并行图像压缩系统[J]. 光学精密工程, 2013, 21(11): 2914-2921.
[11] 穆晓芳, 邓红霞, 郭虎升, 等. 基于彩色可见光的大数据视频流并行编码与传输算法[J]. 重庆理工大学学报(自然科学), 2019, 33(6): 158-164.
Mu X F, Deng H X, Guo H S, et al. Parallel coding and transmission algorithm for big data video streaming based on color visible light[J]. Journal of Chongqing University of Technology (Natural Science), 2019, 33(6): 158-164.
[12] 李旭东. 抗JPEG压缩攻击的DWT域图像量化水印算法[J]. 光电子·激光, 2012, 23(2): 342-348.
Li X D. JPEG-compression-attack resistant image quantization watermarking algorithm in DWT domain[J]. Journal of Optoelectronics·Laser, 2012, 23(2): 342-348.
[13] 王云会, 杨明华, 谭励, 等. 一种基于帧内压缩的视频实时传输方法[J]. 计算机应用研究, 2014, 31(9): 2824-2827, 2831.
Wang Y H, Yang M H, Tan L, et al. Method on real-time video transmission based on intra-frame compression[J]. Application Research of Computers, 2014, 31(9): 2824-2827, 2831.
[14] 惠巧娟, 李洪安, 陆焱. 一种基于小波变换和人类视觉系统的图像压缩算法[J]. 电子测量与仪器学报, 2016, 30(12): 1838-1844.
Hui Q J, Li H A, Lu Y. Image compression algorithm based on wavelet transform and HVS[J]. Journal of Electronic Measurement and Instrumentation, 2016, 30(12): 1838-1844.
[15] 姚军财, 刘贵忠. 一种基于人眼对比度敏感视觉特性的图像自适应量化方法[J]. 电子与信息学报, 2016, 38(5): 1202-1210.
Yao J C, Liu G Z. An adaptive quantization method of image based on the contrast sensitive characteristics of human visual system[J]. Journal of Electronics & Information Technology, 2016, 38(5): 1202-1210.
[16] Wang J X, Jun E. VLSI design of a high throughput JPEG2000 9/7 discrete wavelet transform[J]. Journal of Southeast University (English Edition), 2015, 31(1): 19-24.
[17] 朱新山, 姚思如, 孙彪, 等. 图像质量评价: 融合视觉特性与结构相似性指标[J]. 哈尔滨工业大学学报, 2018, 50(5): 121-128.
Zhu X S, Yao S R, Sun B, et al. Image quality evaluation: fusion of visual characteristics and structural similarity index[J]. Journal of Harbin Institute of Technology, 2018, 50(5): 121-128.
[18] Wang Z, Bovik A C, Sheikh H R, et al. Image quality assessment: from error visibility to structural similarity[J]. IEEE Transactions on Image Processing, 2004, 13(4): 600-612.
[19] 李一凡, 李朝锋, 桑庆兵. 四元数小波变换优化单目图的无参考立体图像质量评价[J]. 激光与光电子学进展, 2019, 56(18): 181006.
[20] 孔繁锵, 周永波, 沈秋, 等. 基于卷积神经网络的端到端多光谱图像压缩方法[J]. 中国激光, 2019, 46(10): 1009001.
[21] 蔡剑华, 肖永良, 黎小琴. 基于广义S变换和奇异值分解的近红外光谱去噪[J]. 光学学报, 2018, 38(4): 0430005.
Article Outline
李亮亮, 吕志刚, 郭锦, 李晓艳, 杨永侠. 视频流分片编码的无人机视频传输方法[J]. 激光与光电子学进展, 2020, 57(24): 241021. Liangliang Li, Zhigang Lü, Jin Guo, Xiaoyan Li, Yongxia Yang. UAV Video Transmission Method Based on Video Stream Slicing and Coding[J]. Laser & Optoelectronics Progress, 2020, 57(24): 241021.