APP下载

用于水下单光子视频通信的联合编码研究

2021-06-07戴伟辉鄢秋荣

光电工程 2021年5期
关键词:单光子译码误码率

戴伟辉,鄢秋荣,王 明,洪 珠,杨 程

南昌大学信息工程学院,江西 南昌 330031

1 引 言

近年来,水下无线光通信(underwater optical wireless communication,UOWC)在环境检测、海上勘探等领域中发挥着重要的作用,受到越来越广泛的关注[1-4]。它具有带宽高、速度快、抗电磁干扰能力强等优点,但由于传输时会受到严重的吸收和散射影响,存在通信距离受限的问题[5]。为了实现远距离的水下无线光通信,运用具有单光子限灵敏度的单光子探测器探测接收端的微弱光信号,并从探测器输出的离散脉冲序列中提取通信信号[6-10]。

视频由于可以直观地传达信息,因此在水下无线光通信中运用广泛。要实现水下单光子视频通信,需要经过视频压缩编码和纠错编码,以提高传输的有效性和可靠性。传统的视频编码方法,如MPEG 系列或者H.26X 系列采用预测编码和变换编码结合的混合编码方法进行视频压缩,视频帧之间关联性较强,一帧数据的丢失会对其他帧的解码造成很大困难[11-12]。又由于光量子效应和光子探测的随机过程,在水下单光子通信系统中,时隙内探测到的光子可能出现符号删除现象,导致数据丢包。若采用传统视频编码方法,视频恢复的效果差且复杂度极高。而利用字典学习进行视频稀疏编码,每帧视频图像传送的是稀疏矩阵信息,并且各视频帧之间的解码互不影响。同时,水下单光子通信中删除符号出现的概率较大,而由暗计数脉冲和背景光脉冲引起的错误符号非常少,其呈现出很强的删除信道特性[13-15]。LT 数字喷泉码是专门应对各种删除信道而设计的,只要接收到足够的喷泉包就可还原数据。但由于译码开销很大,通过级联LDPC码纠正错误码元以降低译码开销。要实现高有效性和高可靠性的水下单光子视频通信,关键是要研究适用于水下单光子信道特点的视频压缩编码与纠错编码方法[16-18]。

2006 年Micha 等人提出一种用于设计稀疏表示的过完备字典的K-SVD(K-singular value decomposition)算法,并表示字典学习在图像增强和压缩两方面都可以成功地取代常用的表示方法[19]。文献[20]提出了一种基于单像素相机兼容字典学习的分布式压缩视频感知框架,以直接获取压缩视频,学习字典可以为视频重建提供更好的基础,而不需要基于学习的基础。文献[21]提出了一种基于在线字典学习的帧内视频编码方法,该方法利用了自然图像的纹理稀疏性,所提出的方法能够从先前的帧中学习基本的纹理元素,从而通过有效的字典来稀疏表示传入的帧。文献[22]提出了一种基于自适应正则字典学习的稀疏时空表示方法和一种低比特率的视频编码方案,选择关键帧的子集以原始分辨率进行编码,而其余部分则通过稀疏时空近似下进行采样和重构。文献[23]为了克服大气衰减和光强起伏对自由空间光通信性能的影响,采用数字喷泉码抑制大气湍流的影响,以提高自由空间光通信信道的可靠性。文献[24]研究了LT 喷泉码在大气无线光通信连接中的纠错性能,从编码、译码的角度研究喷泉码的性能提高方法。文献[25]采用低密度奇偶校验(low density parity check,LDPC)码作为信道编码应用于无线光通信中,得出LDPC 码在弱湍流信道具有优越的纠错能力。文献[26]针对深空通信中对长纠删码的需求,提出了LT码和q-LDPC码的级联编码方案,并设计了两种短8-LDPC 码,并对整个级联系统的纠错性能进行分析。文献[27]将LDPC 码作为信道编码技术运用于大气激光通信系统中,并给出了一种便于硬件实现的半随机π-旋转LDPC 码,在PPM(pluse position modulation)调制的情形下,对不同的典型天气情况下的性能进行了分析。

为了在高误码率与数据易丢包的条件下,实现水下单光子视频有效可靠的传输,本文提出了一种基于字典学习和LT 码级联LDPC 码的视频联合编码方案。该方案提高了数据压缩率和数据编码效率,实现传输质量与传输效率同步达优。

2 系统原理及实现

为了在水下单光子通信系统中实现视频传输,设计了水下单光子视频通信实验系统方案如图1 所示。整个系统由发送端和接收端两部分组成,利用资源丰富、运算能力强、编程灵活的MATLAB 软件来实现视频帧序列的联合编码、联合译码、误码率分析和数据处理;采用具有并行高速处理能力的FPGA 来实现基于光子时间间隔的调制解调;计算机和FPGA 两平台之间通过UDP 网口协议实现数据传输。

图1 水下单光子视频通信实验系统方案Fig.1 Experimental system scheme of underwater single-photon video communication

图2 为水下单光子视频通信系统实物图。在该系统中,采用了长度为1.5 m 的水管作为水下信道,但为了模拟远距离弱链路的水下通信,在发送端增加了多块衰减片及光阑,并调弱光强,使光源在极弱光下,以单光子态进行传输。通过对系统水下信道建模,计算出理论上可实现的水下通信距离约为389 m[9]。同时,系统中反馈回路通过导线直接连接,以确保反馈信息可靠快速传输至发送端。

图2 水下单光子视频通信系统图Fig.2 Diagram of underwater single-photon video communication system

发送端计算机1运用MATLAB软件对视频流进行字典学习稀疏编码,再进行数据帧设计和LT 编码级联LDPC 编码。将得到的发送数据包通过网口加载到FPGA 电路板1 进行OOK 调制,调制后的信号驱动LED 灯亮灭闪烁表示传输的二进制比特流信息。经过水下信道衰减后,单光子探测器接收到微弱光信号并输出离散的单光子脉冲序列,送至FPGA 电路板2 进行处理和信息解调,解调后的数据通过网口传输至计算机2。计算机2 利用MATLAB 软件对接收到的信息进行LT 译码级联LDPC 译码,若译码失败,则再通过反馈回路重新进行级联编译码。最后,通过字典学习稀疏译码重构出原始视频流。

用均方误差(mean-square error,MSE)、峰值信噪比(peak signal to noise ratio,PSNR)性能指标对重构的视频帧图像与原始图像进行客观评价,其中MSE 表达式为[28]

其中:I (i,j) 和 K (i,j) 分别代表原始图像和重构后图像的像素值,且1 ≤ i ≤m,1 ≤ j ≤n,则PSNR 的表达式为[28]

3 编码基本原理

3.1 字典学习

字典学习稀疏编码方法是从数据中不断学习得到最佳稀疏表示的过程,使字典基能够包含需要表示图像的基本信息,本文采用的字典学习算法是K-SVD 算法[19]。

字典学习的主要思想是,利用原子数为K 的字典矩阵D∈Rm×K,稀疏线性表示原始视频数据帧矩阵Y∈Rm×n(其中m,n 分别表示视频数据帧矩阵的行数与列数),即有Y=DX,其中X∈RK×n为稀疏矩阵,将上述问题用数学语言描述为如下优化问题[19]:

其中:xi(i=1,2,.....,K)为稀疏矩阵中的行向量,ε 为允许的误差。

3.2 LT 码

LT 码的编码由W 个的原始数据包生成任意数量的编码包,译码器接收编码包中的任意Z 个,即可高概率通过译码恢复出全部原包。其编解码实现过程如下:首先从度分布函数ρ(d)中随机选择一个度值d;从W 个原始数据包中随机地等概率选取d 个不同原始数据包,并将这d 个原包进行模二和运算,生成一个编码包,重复上述过程,即可得到任意数量编码包;最后再利用高斯消元法即可完成LT 码译码过程[29]。

3.3 LDPC 码

LDPC 码是一种线性分组码,其校验矩阵H的结构对码的性能有决定性影响。本文采用Gallager 的随机构造法产生校验矩阵H;然后通过矩阵换算得到生成矩阵G,再通过信息矩阵与生成矩阵相乘得到LDPC码的编码矩阵;最后采用置信传播译码算法完成LDPC 码的译码[27]。

4 联合编码方案

4.1 总体方案

本文提出的一种基于字典学习和LT码级联LDPC码的视频联合编码方案如图3 所示。发送端为了压缩视频数据,首先将数帧背景变化不大的视频流作为一个图像组,并随机选取信息作为初始字典,通过K-SVD 算法得到图像组的字典基;然后利用字典基、每帧图像的矩阵信息与设定的稀疏度经过正交匹配追踪(orthogonal matching pursuit,OMP)算法得到每帧图像的稀疏矩阵[30]。假设一个图像组有M 帧,每帧是N×N 大小的矩阵,设置稀疏度为K,原子数为E,对一个图像组进行字典学习稀疏编码之后得到一个字典和M 个稀疏矩阵,并将非零数值作为有效信息进行传输,则图像组的压缩率为(compression ratio,CR):

发送端为可靠的发送数据并确保接收端可以高质量恢复,将得到的字典基和稀疏矩阵进行信道编码。采用具有很强纠删能力的LT 码作为外码,为了确保LT 码的编码数据是有效的,发送端接一级反馈回路。采用纠错能力很强的LDPC 码作为内码,对每次LT编码的编码包进行再编码。接收端进行相应的LDPC译码以及LT 译码,但为了确保级联译码的数据误码率处在较低值,再接一级反馈回路至发送端。最后,再进行字典学习稀疏译码,还原出图像组,并重建出视频流。

4.2 发送数据包帧格式设计

将经字典学习稀疏编码后得到的字典基和稀疏矩阵通过信道编码送入水下信道传输,其发送数据包的帧格式设计如图4 所示。首先字典数值在(-1,1)范围内,按照符号、矩阵数值打包作为字典的数据帧;从稀疏矩阵的数值中按符号、序号、整数部分和小数部分打包作为稀疏矩阵的数据帧;经过LT 编码和CRC 校验后转成包含信息数据、度信息和校验位的帧格式;再经LDPC 编码后转成包含信息位和冗余位的帧格式;在每个发送数据包的前面加上FF FF FF FF 的帧头,得到设计的发送数据包帧格式,按该帧格式将数据包发送至水下信道进行传输。

图3 基于字典学习和LT 码级联LDPC 码的视频联合编码方案Fig.3 Video joint coding scheme based on dictionary learning and the concatenation of LT code and LDPC code

图4 发送数据包帧格式Fig.4 Frame format of sending data packet

4.3 级联编码实现过程

在信道编码过程中,LT 码虽然具有显著的纠删能力,但仍然存在译码失败概率、译码开销过大等问题。针对译码失败的问题,本文提出一种LT 码译码成功双反馈机制,即发送端不断发送编码包,第一级反馈确保发送的数据是有效数据;接收端不断译码,第二级反馈确保最终LT 译码成功。针对译码开销过大的问题,本文采用LDPC 码作为内码,通过纠正各编码包的误码,达到提升有效编码包数,从而实现较低译码开销下的数据传输。

图5 展示了LT 码级联LDPC 码的码字设计和实现过程:首先,将数据1 进行LT 编码,得到n 个编码包,并对n 个编码包直接译码来判断是否是有效数据,如果不是,则编码包数加1 并重新编码,直至为有效数据,得到n+i 个编码包;将n+i 个编码包分别进行LDPC 编码得到n+i 个级联编码包,并送入水下通信信道。其次,由于信道的删除特性,丢失m 个数据包,只接收到n+i−m 个级联译码包,分别进行LDPC译码与LT 译码。最后,判定LT 译码是否成功,若成功,则得到数据2;否则,编码包数加1,重新再进行编码,直到译码成功。级联编码实现了在较低的译码开销下,抑制丢包带来的影响,将误码率降到最低且译码成功率为1。

图5 LT 码级联LDPC 码的码字设计和实现过程Fig.5 Codeword design and implementation process of the concatenation of LT code and LDPC code

5 实验结果与分析

5.1 仿真实验与分析

由于LT 编码具有较强的纠删性能,数据包的丢失对译码性能影响较小。但存在译码失败概率、译码开销较大等问题。为此,通过级联LDPC 码,利用该码较强的纠错能力,达到提升有效编码包数和减少译码开销的目的;采用LT 码译码成功双反馈机制,确保发送的喷泉包数据是有效数据,且使译码成功率为1。通过仿真实验验证以LT 码作为外码,LDPC 码作为内码的级联编码方案的可行性。

根据LT 码的译码成功具有一定的随机性,为确定最佳的编码包数及译码开销情况,在仿真实验中,计算机运行次数设置在10 万次,设置LT 编码的原包数为64,包的大小为16 bit,译码成功判定阈值为0.05,信道误码率为0.005。统计了译码成功时不同编码包数出现的次数,如图6 所示。结果显示,编码包数目出现的次数近似服从泊松分布。将出现次数最多的编码包数认定为最佳编码包数,将最佳编码包数与原包数之比定义为译码开销[30]。

图6 编码包数的统计分布情况Fig.6 Statistical distribution of the number of encoded packets

图7 为在不同信道误码率和编码方式下,译码开销随译码成功判定阈值的变化情况。从图中可以看出,随着译码成功判定阈值的增加,LT 码的译码开销逐渐减少,而级联码的译码开销缓慢减少。这是因为LT编码方式在较小的译码成功判定阈值下,需要花费较大的译码开销才可译码成功;而在级联编码方式下,LDPC 码较强的纠错性能使得译码开销比较稳定。并且,信道误码率增加0.01,LT 码的译码开销最大增加了5 个单位左右,可见信道误码率是影响LT 码译码开销的重要因素。

另外,由于系统模拟了远距离弱链路情形,因此系统处于高误码率条件下。而文献[31]研究了LDPC码级联RS 码在光纤传输系统中的应用,通过系统实验得出纠错极限可以达到约2×10-2。本文研究的水下无线光通信系统中LT 码级联LDPC 码以及提出的译码成功双反馈机制,甚至可以在信道误码率为6×10-2的条件下实现水下通信。同时,级联编码与LT 编码方式相比,可显著减少译码开销,由图7 可知,译码开销的数据量最大可减少64.5%左右。文献[32]提出的基于部分信息LT 码的修正转移鲁棒孤子分布方法,可以实现译码开销降低1%∼2%。与该文献相比,本文通过级联LDPC 码的方法可以大大降低LT 码的译码开销。

图7 译码成功判定阈值与译码开销关系Fig.7 The relationship between the judgement thresholds of decoding success and the encoding consumption

图8 给出了在不同的视频压缩率下,信道误码率设置为0.06 时,译码成功判定阈值与平均PSNR 值关系曲线。从图中可以看出,随着译码成功判定阈值的增加,视频帧平均PSNR 值逐渐降低。说明了在译码成功判定阈值较大时,允许系统在较大误码率下还原信息,从而导致平均PSNR 值较小。同时,视频压缩率越大,平均PSNR 值越小。这表明在视频压缩率较大时,系统传输的信息数据量较少,从而还原信息时平均PSNR 值较小。

图8 译码成功判定阈值与平均PSNR 关系Fig.8 The relationship between the judgement thresholds of decoding success and the average PSNR

5.2 系统实验与分析

前面已经通过仿真实验验证了以LDPC 码作为内码克服了LT 编码的缺点,并提高了信道的可靠性,表明级联编码方法的可行性。同时,为了减少信源数据量,通过字典学习稀疏编码可以对视频起到压缩作用,说明了在仿真条件下水下单光子视频传输中联合编码方案的可行性。下面通过实验系统进一步验证该方案的可实施性。

在系统实验中信道误码率测得为0.06,波特率设置为500 kbps。图9(a)为视频中的四帧原图;9(b)为未加信道编码单光子视频传输结果;9(c)为级联编码时无反馈电路的单光子视频传输结果;9(d)为一级反馈下的单光子视频传输结果。图9 显示,无信道编码时平均PSNR 值仅为1.0125 dB,直观效果很差;级联编码后也只将PSNR 值提升至7.7488 dB,效果依旧很差;最后在发送端加入一级反馈,图片效果提升明显,但平均PSNR 值也只有15.0811 dB。上述说明,加入级联编码以及一级反馈对单光子视频传输结果中图片质量有一定的改善,但质量依旧不佳。

图9 不同处理方式下的四帧图像比较Fig.9 Comparison of four frames of images under different processing methods

针对上述问题,加入级联编码以及二级反馈回路,结果如图10 所示。该图显示了在不同视频压缩率下,单光子视频传输结果及其图像的平均PSNR 值。在视频压缩率分别为75.6%、69.7%、58.0%时,图像的平均PSNR 值分别为37.4921 dB、39.3372 dB、42.7223 dB,说明了视频压缩率越大,图像的平均PSNR 值越小,并且重建的图像直观效果优良。因此,在水下单光子视频传输中,联合编码方案可以实现在视频压缩率为75.6%的情况下,以图像平均PSNR 值为37.4921 dB 重建出优良的视频流。而文献[28]研究了一种基于分布式压缩感知的单光子视频传输系统,该方案实现了在测量率为66.7%(即压缩率为33.3%)时,以平均PSNR值大约34.5 dB 重建视频帧。与该文献实验结果相比,无论是从压缩率还是图像重建质量,本文的技术指标都有一定的提升。

图10 不同压缩率下的四帧图像比较Fig.10 Comparison of four frames of images under different compression ratios

6 结 论

本文搭建了水下单光子视频通信系统,为实现高有效性和高可靠性的视频传输,提出并验证了一种基于字典学习和LT 码级联LDPC 码的视频联合编码方案。采用字典学习稀疏编码方式,极大地减少了视频数据的传输量,提高了通信系统的有效性。实验分析了编码方式与译码成功判定阈值对译码开销的影响,结果证明,级联编码可以克服LT 码译码开销过大的缺点;同时,译码开销随译码成功判定阈值的增加而减小。本文提出的译码成功双反馈机制,不仅解决了LT 码存在的译码失败概率问题,也实现了在高误码率的通信环境下清晰恢复视频帧。实验结果表明,随着视频压缩率增加,平均PSNR 越小;当信道误码率处于10-2数量级、视频压缩率为75.6%时,可以实现平均PSNR 为37.4921 dB 重建视频帧。

猜你喜欢

单光子译码误码率
面向通信系统的误码率计算方法
基于校正搜索宽度的极化码译码算法研究
“完美的单光子源”为量子精密测量奠定基础
IQ-单光子发射计算机断层扫描门控静息心肌灌注图像不同重建参数对测定左心室功能的影响
从霍尔的编码译码理论看弹幕的译码
中科大实现综合性能国际最优的单光子源
核医学设备单光子发射计算机成像系统性能现状调查
LDPC 码改进高速译码算法
泰克推出BERTScope误码率测试仪
关于OTN纠错前误码率随机波动问题的分析