精华内容
下载资源
问答
  • matlab实现图像的联合信源信道编码
    2021-04-22 08:48:24

    Joint source-channel coding of images

    Simulation of transmission of SPIHT encoded images over unreliable channels. Requires the MATLAB Communications Toolbox. Scripts for measuring the channel error rate, RCPC code characteristics and Rate-Distortion (R-D) curve of the SPIHT compression for the input image and selected channel characteristics.

    Functions:

    awgn_EsN0 - Simulation of the Additive White Gaussian Noise (AWGN) channel

    BSC_BER - Simulation of the Binary Symemtric Channel (BSC)

    GE_awgn - Simulation of the Gilbert-Elliot (GE) channel, using two AWGN channels

    get_channel - Loads a predefined channel (saved in a txt file)

    get_RCPC_code - Loads a predefined RCPC code from a default code family ('Punct_codes.txt')

    RCPC_encode - Rate Compatible Punctured Convolutional (RCPC) coding of the binary stream

    RCPC_test_equal_data - Transmission of packets with constant data part, using RCPC

    RCPC_test_equal_packet - Transmission of packets with constant size, using RCPC

    optimal_RCPC_equal - Computes the Equal Error Protection (EEP) scheme for a given image and channel

    send_image_equal - Transmission of SPIHT encoded image using EEP

    send_image_equal_RS - Transmission of SPIHT encoded image using EEP and Reed-Solomon protection

    optimal_RCPC_unequal - Computes the Unequal Error Protection (UEP) scheme for a given image and channel

    send_image_unequal - Transmission of SPIHT encoded image using UEP

    script_channel_performance - Measures the BER and PER values for RCPC transmission on a given channel

    RDcurveBytePrec - Runs SPIHT over range of target bitrates and stores the R-D curve

    The source and some instructions are also on Github (under /JSCCImage):

    https://github.com/nsprljan/ImageCodingResearchTools

    Fork it, send me a pull request with your patches or add issues.

    更多相关内容
  • 提出一种基于伴随式(Syndrome)的具有抗差错性能的分布式联合信源信道编码方案。在不增加编码端复杂度的前提下,设计一种新的基于伴随式的编码器,使其同时具有压缩和抗差错的性能;其次,设计相应的译码器,并改进...
  • 联合信源信道编码基本框架 腾讯天籁联合信源信道编码的基本框架进行介绍: 系统可以分解为发送端、网络侧、接收端。 发送端将新方案的码流发往上行媒体代理。其中,cFEC提供了信源侧抗性,带外和流控,根据实际的...

    前言

    2020年疫情的突如其来,让数字通信成为了人与人沟通的重要手段;同时也对实时音视频通信(RTC)的稳定性和通讯效果提供了极大考验。由于业务量激增,在保障用户体验方面,RTC业务面临着诸多困难,包括但不限于通话质量、最小化卡顿、端到端延时、带宽成本等。在网络传输过程中,RTC方案,需要面对用户体验、运营成本的双重约束,挑战巨大。本白皮书,将聚焦RTC业务中网络抗性下的体验保障这一命题展开讨论。本文首先对相关技术的特点进行描述。然后,本文重点介绍腾讯天籁推出的音频联合信源信道编码方案。该方案已经在腾讯会议、TRTC等产品推广和部署;在保障用户体验同时,显著降低带宽和延时。

    1.背景介绍     

    图1. 端到端视角下音频通话体验的影响因素

    VoIP是一个复杂的链式系统,以单侧的发送端到接收端通信为例,要经过采集、前处理、编码、传输、解码、增强、回放等多个阶段。每个阶段都会影响最终体验。从端到端到角度,影响通话体验的因素,可以分成信源和信道(链路)两个部分。信源部分,主要干扰因素是声学侧的噪声、回声等物理特征;一般地,通过优化音频信号处理方案(包括结合深度学习技术等)进行质量保证。如果说,信源决定最终体验的上界,信道则决定了体验“打折”后的上界。

    图2. 语音丢包

    RTC业务中,一个重要的挑战就是传输过程中出现丢包;丢包导致接收端解码声音不连续或卡顿,影响体验(图2)。因此,网络抗性提升是RTC业务绕不开的话题。然而,任何一种抗性提升手段,避免不了增加带宽冗余、CPU消耗等。同时,任何一种单一手段,并不能很完美解决上述问题。因此,打造一个好的RTC通话体验,需要联合信源和信道,自顶向下地设计系统。本文将重点讨论如何提升RTC系统中的网络抗性。

    2.相关技术概述

    1)WebRTC        

    图3. WebRTC引擎

    RTC主流商用方案,始于开源。目前的开源体系中,WebRTC使用得最为广泛[1]。WebRTC实现了基于网页的RTC视频会议能力,核心技术包括音视频的采集、编解码、网络传输、显示等功能,并且还支持跨平台:Windows,Linux,Mac,Android。相对全面的平台能力,使得RTC公司优选其作为开发平台,搭建自主品牌的SDK。

    因此,相当一部分RTC厂商采用的策略,是完全基于WebRTC,不做底层的改动;针对应用场景,发力于易用性等方面的改进。

    然而,在疫情这一特殊背景下,用户对实时音视频通信的稳定性和通讯效果提出了更高要求。简单地基于开源平台改动,并不能从根本上,将通话体验提升一个档次。因此,具备更多核心能力、底层技术的方案,将在市场上更具竞争力。

    2)嵌入式编码技术(分层编码)

    嵌入式编码,也叫分层编码,通过对信源中不同成份,进行分层处理,以适应网络抗性方面的要求(图4)。原理可以概述为:

    • 通过带通滤波器,将输入的语音信号分离成窄带和宽带部分。

    • 对窄带部分使用更多码率进行压缩,减少失真。如果还有带宽资源,会先花少量码率对高频进行高效率的参数编码,恢复出质量可接受的高频。进一步,如果还有更多带宽资源,对高频做更为精细编码,恢复出高质量的高频。

    • 上述编码的码流,将使用不同优先级传输保障策略,发给接收端。特别地,网络非常差情况下,只发送窄带部分的码流。

    • 如果接收端至少收到低频部分,可恢复出窄带语音,基础质量可以保障。根据收到不同编码精度的高频,输出不同质量水平的宽带语音。

    图4. 嵌入式编码基本架构

    嵌入式编码,在视频编码系统中被普遍采纳;语音编领域,在2000-2010年这个区间,流行过一段时间,比如ITU-T G729.1和G.718 ,以及相关标准的超宽带演进版本[2, 3]。

    然而,嵌入式编码,对于语音业务,存在效率不高的问题。究其原因,语音业务的基础码率偏低,比如20kbps;如果引入嵌入式编码,为了2kbps的分层编码,系统需要做复杂的分层逻辑,在QoE综合质量上不见得是最优策略。因此,2010年之后的主流标准,如IETF OPUS[4],并没有采用嵌入式编码。一般地,即使未采用嵌入编码,相关的编码标准也会采纳多速率编码技术,即支持多种编码码率,用户根据业务特点进行合理配置。

    3)多描述编码技术(MDC)

    多描述编码(MDC)是一种码流分离技术,具体说,就是将一段音频信号,分离成不同子部分(称之为“描述”);每个部分分别组包,并使用不同的传输路径进行传输。接收端如果收到部分的描述,可以恢复出低质量的音频;如果收到全部描述,可以恢复出高质量的音频[5]。

    一个最简单的MDC实施方式是,对一段音频信号进行奇偶抽样;奇数抽样和偶数抽样分别组包传输;接收端即使只收到奇数或者偶数抽样相关的数据包,通过解码和插值,即可恢复出低质量的音频。更为复杂的MDC,包括对奇偶帧进行反复残差分析,确定失真最小的组合变量进行编码和传输。一般地,MDC编码器包含了多个描述的编码器和描述残差关系的编码器,编码器复杂度很高。

    MDC的设计理念,假设了网络状态一定不好。MDC的代价,是牺牲(同等码率)天花板质量。一般地,在理想信道下,需要额外消耗20-30%带宽完成MDC。因此,MDC并不会降低带宽的使用量;并且,MDC主要用于窄带部分,宽带部分还是结合了结合了嵌入式编码、频带扩展等技术,提升带宽利用率;否则,带宽使用量会增加。

    4)RED机制

    RED机制,即IETF RTP Payload for Redundant Audio Data[6]。这个机制提出,跟上文提到的音频码率偏低有关。比如说,每20ms语音帧进行打包操作,包头假设是10kbps、有效载荷是20kbps;这样一种分配,码率浪费严重。因此,RED的建议是,将相邻两个20ms的有效载荷合并成一个数据包。这样,一个数据包中有效载荷比例可达80%。OPUS就沿用了RED机制,甚至将相邻60ms数据合并成一个数据包,共享一个包头。然而,RED机制并没有任何包内抗性;如果没有其它抗性保障,一旦包丢失,影响连续40-60ms数据。

    5)带外FEC       

    图5. 带外FEC示意图

    带外FEC,即在包层进行数据冗余操作的技术[7]。举个例子:如果分组是4,那么在网络传输过程中任意丢掉一个,在接收端任意收到任何顺序的4个属于本分组的数据包,那就可以把丢失的包恢复。具体包括,发送端:将数据包按照参数下发,对数据包进行分组(block),对分组数据加冗余。接收端:收齐分组后即可恢复数据(丢失不超过冗余包数),因为要等分组到齐,存在FEC恢复算法上的延时, FecDelay = Block * 帧长。

    6)ARQ重传

    所谓ARQ重传,即包确定丢失且无法恢复时,通过请求重传,以增加延时的方式,提升网络抗性[8]。音频快速重传ARQ是“选择重传”算法作为基本的请求策略,算法的关键特色在于重传请求与Jitter Buffer的紧密配合上。几个基本准则包括:

    • 请求重传模块记录并缓存所有重传数据包的重传成功所消耗的时间,并将重传延时ArqDelay告知JitterBuffer模块,提高了数据的缓冲等待时长的高可控性。

    • 接收端通过ARQ请求,在数据缓冲队列的数据帧被播放之前,当还未重传成功的数据帧在已经达到播放时间时,接收端通过ACK通知取消请求重传,减少无用请求。

    3.联合信源信道编码架构

    1)方案的设计理念

    如前文所述,针对网络抗性问题,主流的RTC解决方案还是围绕信道侧方法进行;特别地,通过加网络冗余,维护一个高的抗性水平。然而,如果完全依赖信道侧方法,实际应用中又面临其它问题:

    • 如果网络抗性完全来自于带外,带宽成本激增。

    • 重传等操作,带来了包的组合、解析等迭代操作,增加时延。

    因此,腾讯天籁的解决方案优先从信源入手,优化带内FEC。所谓带内FEC,最直观的解释就是在第T个包中除了包头和第T帧以外,还包含第T-1帧的信息。事实上,OPUS已经支持上述带内FEC的功能。经过测算,OPUS带内FEC帧的有效载荷约为普通帧的70-80%;然而,只能提供20%丢包率的抗性;投入产出比偏低。

    综合上述考虑,腾讯天籁提出下列的联合信源信道编码策略:

    • 首先,提升信源侧方法的能力上界。相对于标准带内FEC,新的信源侧FEC,需要更强的单独抗性;比如,支持40%丢包率。

    • 其二,灵活调用带外和带内抗性。以期在抗性稳定性和带宽消耗上有一个更为灵活的折衷。相关的控制参数,依赖于测试平台提供的经验数据,进行迭代升级。

    • 第三,前向兼容性问题,要保证新旧两种协议无互通问题。

    2)方案框架         

    图6. 联合信源信道编码基本框架

    腾讯天籁联合信源信道编码的基本框架进行介绍:

    • 系统可以分解为发送端、网络侧、接收端。

    • 发送端将新方案的码流发往上行媒体代理。其中,cFEC提供了信源侧抗性,带外和流控,根据实际的网络状态,下发具体配置,确保最小带宽和延时成本下的QoE保障。

    • 上行媒体代理处,将新方案对应的协议,转换成标准协议。

    • 下行媒体代理处,将标准协议转换成新方案的协议,并发给接收端。

    • 接收端接收新方案的协议,具备了联合信源信道的能力;以更少的带宽和延时,获得稳定可靠的网络抗性能力。此外,接收端也集成cPLC丢包补偿模块处理突发丢包状态。实时策略,由带外和流控模块控制。在网络有损的情况下,带外FEC或者ARQ重传,最大程度保障数据包可以完整发送到接收端。如果仍然有丢包发生,首先基于cFEC的带内抗性进行质量保障;如果有更多连续数据包丢失,则启动cPLC进行丢包补偿。

    3)核心模块

    a.信源侧FEC(cFEC)

    腾讯天籁的cFEC方案,充分借鉴了语音信号的时间上相关性建模,提升带宽利用率。因此,在带宽有限情况下,大幅度提升抗性。

    图7是cFEC与OPUS原生FEC的效果比较。除了纯净网络外, cFEC相对OPUS原生FEC,可以提升0.1-1.1MOS。特别地,在40%这种比较大丢包率下,采用cFEC技术仍然将MOS分保持在3.0以上。信源侧单独抗性提升,为联合信源信道编码实施提供了足够保障。

    图7. cFEC技术与OPUS原生FEC的抗性能力对比

    我们以40%丢包率为例,展示自研cFEC技术,相对现有技术,在抗性提升方面的能力。每个文件的前一段为OPUS原生技术处理结果,后一段为cFEC处理结果。从主观体验看,cFEC处理后的语音质量和连续性非常显著。

    40%丢包率下,OPUS与cFEC原生技术效果对比(上为女生,下为男生)

    b.自适应带外控制策略

    首先一个概念就是“流控”。我们可以从三种不同维度去描述“流控”。第一,它是一个配置系统,无论双人或多人通话,系统所需要的基础配置参数,做到云端可控。第二,“流控”是把源端到目标端的传输行为,进行动态的能力交换。第三,基于网络拥塞控制(Congestion control),进行自适应控制;这样,就实现了丢包的时候怎样去抗丢包,抖动的时候怎么样去抗抖动,所有流程进行动态控制。拥塞控制,通过实时监控端到端延时的变化量(Jitter),从而判断当前这个网络是否趋于达到网络拥塞的情况,并给出当前一个合理的带宽预测值。基于带宽预测值,系统会动态配置带外FEC和ARQ策略,从而实现自适应带外控制策略。

    c.媒体代理与前向兼容问题的解决

    联合信源信道编码应用挑战,是与线上老版本的协议兼容问题、或者说,新旧客户端之间的互联互通问题。如果不进行全面考量,客户端接收到不兼容的码流,解码错误后会引起杂音等问题。如图6所示,我们通过媒体代理处部署相关的协议转录器,进行各种标准或者非标准协议之间的转换,对特定的客户端,接收或者发送对应的协议数据包。

    d.基于上下文的连续丢包补偿(cPLC)

    丢包补偿技术部署在解码端。它是在带外和带内FEC均失效情况下,根据已经恢复的语音帧,去预测丢失帧。这项技术无需额外带宽,兼容性好。主流PLC只能恢复约20ms的丢失内容,效果十分有限。随着深度学习的发展,工业界和学术界均在尝试引入深度学习,解决连续丢包补偿的问题[9]。这些方案,包括基于谱回归或者生成模型等方式,预测出相关的频谱或者信号。一般地,上述方案可以最多补偿120ms连续丢包数据。但模型大、复杂度高。

    腾讯天籁提出的cPLC方案,通过加大了信号处理在算法建模过程中的权重,提取上下文关系进行参数建模,并调用深度学习网络,重建丢失语音。cPLC方案不仅复杂度低,还有着零延时、部署难度低和兼容性好等优势。

    图8展示了离散丢包和突发丢包场景下,cPLC与OPUS原生PLC的补偿效果。实验结果表明,在所有测试条件下,cPLC在质量上均优于OPUS原生PLC技术。特别地,在突发丢包场景下,cPLC的优势更为明显。

      

    图8. cPLC技术与OPUS原生PLC的能力对比

    4.实验结果

    目前,腾讯天籁联合信源信道编码方案已经在腾讯会议上线。经过测试,可以降低带宽30%;同时,进一步降低延时40-60ms,进一步提升用户体验。

    5.结论

    RTC场景下,抗性提升是决定用户体验的重要因素。本文分析了几种典型的机制,并对每种机制的特点进行了描述。然而,疫情背景下,RTC产品的稳定性和通讯效果面临更多挑战,对新方案的需求更为强烈。腾讯天籁联合信源信道编码方案,通过有效地组合信源和信道侧的抗性策略,保证用户体验的同时,有效降低带宽和延时成本。从效果上看,结合了信源、信道的联合优化策略、结合经典信号处理和深度学习的新技术,将成为未来RTC解决方案中的关注点。

    参考资料

    [1] https://webrtc.org/

    [2] ITU-T G.729.1 : G.729-based embedded variable bit-rate coder: An 8-32 kbit/s scalable wideband coder bitstream interoperable with G.729

    [3] ITU-T G.718 : Frame error robust narrow-band and wideband embedded variable bit-rate coding of speech and audio from 8-32 kbit/s

    [4] https://opus-codec.org/

    [5] V. K. Goyal, "Multiple Description Coding: Compression Meets the Network," IEEE Signal Processing Magazine, vol. 18, no. 5, pp. 74–94, Sept. 2001.

    [6] IETF RFC6354: RTP Payload for Redundant Audio Data.

    [7] J. Bolot, etc. The Case for FEC-based Error Control for Packet Audio in the Internet. 1997.

    [8] H. Seferoglu, etc. Rate Distortion Optimized Joint ARQ-FEC Scheme for Real-Time Wireless Multimedia. In ICC 2005.

    [9] https://ai.googleblog.com/2020/04/improving-audio-quality-in-duo-with.html

    展开全文
  • 为提高异构网络视频传输质量,提出一种基于晶格量化的异构网络视频联合信源信道编码方法。首先,利用多描述联合信源信道编码的信号源并行信道传输方案,建立高斯视频源传输的多描述独立的并行信道传输框架;其次,...
  • 针对JPEG2000码流的渐进传输特性,提出了一种多参数优化的联合信源信道编码方法,即MPO-JSCC。在码率分配的基础上,动态地选择Turbo码交织长度、迭代译码次数,通过优化编码器多个参数更好地执行不等差错保护策略,...
  • 信息论的经典结果表明,信源信道分离编码是渐进最优的。但现代通信系统对时延、带宽等愈发敏 感,分离设计对解码具有无限计算能力这一假设难以成立...带宽有限时,相对于信源信道联合编码,分离编 码已被证明是次优的。
  • 根据 JPEG2000中的一般位移法和最大位移法在处理感...仿真结果表明,在传输全视觉图像时,采用非等差错保护信道编码可以使感兴趣区域的峰值信噪比得到明显提高,并且使感兴趣区域的图像质量远 高于背景区域的图像质量。
  • 电信设备-基于联合信源信道编码的图像传输速率自适应分配方法.zip
  • #资源达人分享计划#
  • 电信设备-基于联合信源信道编码调制的渐进图像传输系统及方法.zip
  • 联合信源信道编码在超宽带信道中的应用,杨晏鸷,蒋挺,本文将联合信源信道编码应用于超宽带(UWB)信道中,信源编码采用基于层次树的集分割算法(SPIHT)嵌入式码流编码,信道编码采用码率兼容
  • LDPC码在联合信源信道编码中的应用.......................
  • 1、不经过信道编码与译码,图像经过BSC信道传输后的误码率,此处的编码方法为霍夫曼编码。MATLAB仿真程序如下: clear all clc I0=imread('Penguinshead3.jpg'); I1=rgb2gray(I0); subplot(1,3,1),imshow(I0),...

    以一幅灰度图像为例对通信系统的通信过程进行仿真,过程如下图所示:
    图1 通信过程
    1、不经过信道编码与译码,图像经过BSC信道传输后的误码率,此处的编码方法为霍夫曼编码。MATLAB仿真程序如下:

    clear all
    clc
    I0=imread('Penguinshead3.jpg');
    I1=rgb2gray(I0);
    subplot(1,3,1),imshow(I0),title('原图')
    subplot(1,3,2),imshow(I1),title('灰度图')
    [m,n]=size(I1);
    I=reshape(I1,m*n,1);
    P_value=zeros(1,256);
    %---------------------------------------概率;
     for i=0:255
         P_value(i+1)=length(find(I==i))/(m*n);  %各像素值概率
     end
    f=numel(I);                                      %频数
    P_symbol=zeros(m*n,1);
    for i=1:m
        for j=1:n
            P_symbol(i,j)=length(find(I==unique(i)))/f;%各信源符号概率矩阵
        end
    end 
    %--------------------------------霍夫曼编码
    k=0:255;
    dict=huffmandict(k,P_value);           %生成编码字典
    huffmancode=cell(length(I),2);         %元胞数组存放对应编码
    for i=1:m*n
        huffmancode{i,1}=I(i);
    end
    for i=1:length(I)
        for j=1:256
            if huffmancode{i,1}==dict{j,1}
                huffmancode{i,2}=dict{j,2};
            end
        end
    end
    %----------------------------通过BSC信道
    bsc_code=huffmancode;        %通过bsc信道后的编码
    for i=1:length(I)
        bsc_code{i,2}=bsc(huffmancode{i,2},0.001);
    end
    % --------------------------------译码
    bsccode=bsc_code{1,2};
    for i=2:length(I)
        bsccode0=bsc_code{i,2};
        L=length(bsccode0);
        bsccode(end+1:end+L)=bsccode0;       %转换为一串字符
    end
    deco=huffmandeco(bsccode',dict);         %译码
    %----------------------------------------译码后存在错误
    rdeco=zeros(length(I),1);                      %错误处理
    L=length(I)-length(deco);
    if L<=0
        rdeco=deco(1:end-abs(L));                  %截断
    else
        a=ones(abs(L),1);                          %补足   
        rdeco(1:length(deco))=deco;
        rdeco(length(deco)+1:end)=195*a;  
    end
    Ideco=reshape(rdeco,m,n);
    subplot(1,3,3),imshow(uint8(Ideco));title('经BSC信道传输后的图像');
    error=length(find(Ideco~=I1));
    fprintf('误码率:%.4f\n',error/length(I));
    

    传输结果如下图所示:
    图2 无信道译码与编码
    上图表示的是仅经信源编码与译码,新宿的得到的结果。可以看到图像存在失真,此时的误码率为:
    在这里插入图片描述
    2、经过信道译码,此处的信道编码采用汉明码。MATLAB仿真程序如下:

    clear all
    clc
    I0=imread('Penguinshead3.jpg');
    subplot(1,3,1),imshow(I0),title('原图')
    I1=rgb2gray(I0);
    subplot(1,3,2);imshow(I1);title('信源发出的消息');
    [m,n]=size(I1);
    I=I1(:);
    P=zeros(1,256);
    %---------------------------------------概率;
    for i=0:255
        P(i+1)=length(find(I==i))/(m*n);
    end
    %---------------------------------------编码译码
    k=0:255;
    dict=huffmandict(k,P);                    %生成霍夫曼码字典
    enco=huffmanenco(I,dict);                 %霍夫曼码信源编码
    code=encode(enco,15,11);                  %汉明码信道编码
    bsc_code=bsc(code,0.001);                 %通过BSC信道
    rcvcode=decode(bsc_code,15,11);           %汉明码信道译码
    deco=huffmandeco(enco,dict);              %霍夫曼码信源译码
    Ireco=reshape(deco,m,n);
    subplot(1,3,3);imshow(uint8(Ireco));title('信宿接收的消息');
    error=length(find(Ireco~=I1));            %误码数
    fprintf('误码率:%0.4f\n',error/length(I));
    

    经信道传输后的图像如下图所示:
    图3 经过信源信道编码与译码
    此时图像无失真,误码率为:
    在这里插入图片描述
    可以明显看到第二种方式的误码率远远小于第一种方式的误码率,由此可看出在通信过程中进行信道编码与译码的重要性。
    而方式1的误码率高的原因有以下三点:
    (1)传输图像较小,像素值少。图像越小,编码表的码字越少,经信道传输后,越容易出现非编码表码字。(2)对于编码表码字处理的译码译码方式简单,对于译码后的编码像素值采用舍弃译码后末尾的像素值与补足像素值(由于使用的图像右下角的像素值在195左右,因此对与译码后长度不足的像素值序列,补充像素值为195的像素)的方式存在较大的误差。(3)未经过信道编码与译码。
    必须说明的是由于上述第(2)点原因,在BSC信道的转移概率比较大的时候(p>0.1)时,方式1能够运行通过的概率很低,当信道的转移概率很小时,该方式的误码率也会比较小。

    展开全文
  • 摘要:信源编码是一个数据压缩的过程,其目的是尽可能地将信源中的冗余度去掉;而信道编码则是一个增加冗余的过程,通过适当加入冗余度来达到抵抗信道噪声,保护传输数据的目的。

    本文分享自华为云社区《基于深度学习的信源信道联合编码》,原文作者:技术火炬手 。

    信源编码是一个数据压缩的过程,其目的是尽可能地将信源中的冗余度去掉;而信道编码则是一个增加冗余的过程,通过适当加入冗余度来达到抵抗信道噪声,保护传输数据的目的。

    经典端对端无线通信系统如下图所示:

    • 信源 xx 使用信源编码,去除冗余得到比特流 ss
    • 对 ss 进行信道编码(如 Turbo、LDPC 等)得到 yy,增加相应的校验位来抵抗信道噪声。
    • 对比特流 yy 进行调制(如 BPSK、16QAM 等)得到 zz,并经物理信道发送。
    • 接收端对经信道后的符号 \bar{z}zˉ 进行解调、解码操作得到 \bar{x}xˉ。

    根据定义信道方式不同,基于深度学习的信源信道联合编码(Deep JSCC)可以分为两类。

    第一类,受无编码传输的启发,将信源编码、信道编码和调制联合设计为编码器。

    系统模型如下图所示:

    第二类,将通信系统中的调制、噪声信道、解调模块抽象为离散的二进制信道。

    系统模型如下图所示:

    第一种模型称为基于物理信道的符号编码,第二种称为基于抽象信道的比特编码。

    另一方面,信源可根据其是否具有结构化特征划分为两类:

    • 结构化信源,如图像、视频。
    • 非结构化信源,如高斯信源。

    结构化信源是 Deep JSCC 的主要研究场景。由于神经网络对结构化数据具有强大的特征获取能力,并且有针对各种结构化数据设计的网络结构的出现。

    因此,Deep JSCC 相较于传统设计更具有优势。

    图像/视频等具有空间拓扑结构信源适合 CNN 网络结构,文本/语音等具有时间序列化结构信源适合 RNN 网络结构。

    对于非结构化信源,Deep JSCC 则稍显羸弱。因为非结构化信源内部相关性弱,难以去除冗余。

    基于物理信道的符号编码

    结构化信源

    Gunduz 团队1 提出了一个传输高分辨率图像的 Deep JSCC 框架。发送端和接收端都使用 CNN 网络,并在训练时加入了高斯白噪声和瑞利衰减噪声。

    提出的 Deep JSCC 框架如下图所示:

    实验表明,从 PSNR 和 SSIM 数据来看,提出的信源信道联合编码比信源信道分离方案更优,在低信噪比的信道环境下,优势尤其明显。

    Gunduz 团队2 在前一个方案的基础上,提出将噪声反馈模块融入传输系统,以增强编解码器对变换信噪比的鲁棒性。

    解码器将一部分经过噪声信道的接收到的符号 \bar{z}zˉ 反馈给编码器,编码器根据 \bar{z}zˉ 重新计算信噪比,并对编解码网络参数进行改进,以适应变换的信噪比环境。

    其通信方案如下图所示:

    Jankowski3 提出了一种使用 Deep JSCC 来进行图像检索的方案,先提取图像特征,然后使用 Deep JSCC 编码传输图像特征子,接收端接收解码特征子并基于特征对图像进行检索。

    系统架构如下图所示:

    非结构化信源

    Saidutta4 提出了一种应用双编码解码结构的 Deep JSCC 方案对高斯信源进行编码传输。
    训练时采用 MSE 优化器。

    系统架构如下图所示:

    在前面工作的基础上,Saidutta5 提出了基于变分自编码器对高斯信源编码的 Deep JSCC 方案,通过假设接收信号和重构信号的高斯统计特性,给出了正则化 MSE 损失的可变上限证明。

    Xuan6 提出了一种基于 RNN 对高斯信源编码的 Deep JSCC 方案。

    其不需要获取信源的先验信息,并在理论上证明了 Deep JSCC 的有效性,同时证明了基于深度学习的编码器与基于混沌动态系统(Chaotic Dynamical System)的编码函数之间的相似性。

    系统框架如下图所示:

    基于抽象信道的比特编码

    与传统符号流的 Deep JSCC 方案不同,二进制信道下传输离散比特流无法计算反向传播梯度。因此,离散信道的嵌入也比物理信道的嵌入更为复杂。

    近年来,神经网络离散化7和离散自编码器8的发展,为上述难点提供了解决思路。针对离散化神经网络的问题,一个简单的方法是使用得分函数估计器替代梯度9。由于该估计方差较高,一部分工作提出了不同的公式和控制变量来解决该问题10。

    另外,为了达到使离散随机变量连续化的目的,Jang 和 Maddisonet 分别提出了 Gumbel-Softmax 分布11和 Concrete 方案12。

    结构化信源

    Choi13 提出了一种使用离散自编码器对图像进行抽象信道的比特编码方案。为了保留编码的硬离散性,使用了多样本变分下界目标,用于获得低变差梯度。

    系统结构如下图所示:

    其使用图像及其二进制表示的互信息的变分下界来训练模型,以获得更好的鲁棒性。

    Song14 提出了新的正则化方法 IABF(Infomax Adversarial Bits Flip) ,以增强 NECST 的压缩和纠错能力,提升鲁棒性。并提出了新的损失函数,实现了网络对高维数据更有效的优化。

    Shao15 基于轻量级 CNN 网络提出了可部署到计算能力有限的移动设备中的低功耗 Deep JSCC。

    系统架构如下图所示:

    Farsad16 提出了基于 RNN 结构的 Deep JSCC 方案,以对文本信源进行编码传输。采用里德-所罗门(ReedSolomon)码对信道进行编码;结果表明,当编码比特较短时,该方案比传统方法具更低的单词错误率。

    系统架构如下图所示:

    非结构化信源

    Carpi17 提出了一种基于强化学习的 Deep JSCC 方案,采用了比特位翻转解码(bitflipping decoding)、残差信念传播(residual belief propagation)和锚解码(anchor decoding)三种算法,让解码器由数据驱动去学习最佳的解码策略。

    1. [2019 TCCN]
      Deep Joint Source-Channel Coding for Wireless Image Transmission
    2. [2020 JSAIT]
      DeepJSCC-f: Deep Joint Source-Channel Coding of Images with Feedback
    3. [2019 ICASSP]
      Deep Joint Source-Channel Coding for Wireless Image Retrieval
    4. [2019 DCC]
      M to 1 Joint Source-Channel Coding of Gaussian Sources via Dichotomy of the Input Space Based on Deep Learning
    5. [2019 ISIT]
      Joint Source-Channel Coding for Gaussian Sources over AWGN Channels using Variational Autoencoders
    6. [2020 SPCOM]
      Analog Joint Source-Channel Coding for Gaussian Sources over AWGN Channels with Deep Learning
    7. [2019 TPMI]
      Learning Deep Binary Descriptor with Multi-Quantization
    8. [2018 NIPS]
      DVAE#: Discrete Variational Autoencoders with Relaxed Boltzmann Priors
    9. [1992 ML]
      Simple Statistical Gradient-Following Algorithms for Connectionist Reinforcement Learning
    10. [2017 NIPS]
      REBAR: Low-variance, unbiased gradient estimates for discrete latent variable models
    11. [2016 ML]
      Categorical Reparameterization with Gumbel-Softmax
    12. [2016 ML]
      The Concrete Distribution: A Continuous Relaxation of Discrete Random Variables
    13. [2018 ML]
      Neural Joint Source-Channel Coding
    14. [2020 AAAI]
      Infomax Neural Joint Source-Channel Coding via Adversarial Bit Flip
    15. [2020]
      BottleNet++: An End-to-End Approach for Feature Compression in Device-Edge Co-Inference Systems
    16. [2018 ICASSP]
      Deep Learning for Joint Source-Channel Coding of Text
    17. [2019 AACCCC]
      Reinforcement Learning for Channel Coding: Learned Bit-Flipping Decoding
    18. [2020 电信科学]
      基于深度学习的信源信道联合编码方法综述

     

    点击关注,第一时间了解华为云新鲜技术~

    展开全文
  • 一共七篇,目录如下 Distributed Arithmetic Coding for the Slepian–Wolf Problem DISTRIBUTED IMAGE COMPRESSION FOR SENSOR NETWORKS USING ...基于多描述的联合信源信道编码 图像通信中的不等差错保护技术
  • 主要简介了信源信道联合编码的发展历程,及其研究现状,及其研究学校及其导师。
  • 基于极化码的信源信道联合编码研究
  • 一种基于分布式压缩传感的信源信道联合编码方法,张波,刘佳,本文针对无线传感网(WSN)中存在的数据拥塞、能量空洞等问题在描述分布式传感联合稀疏模型的基础上,根据传感器节点间数据采集的
  • 为了研究数据压缩的协作通信编码,提出一种联合信源信道的LDPC编码方案,并设计了一种迭代解码的中继框架。首先,源节点借助一个中继节点向目的地节点发送相关内容,并在两个节点处应用分布式联合信源信道的LDPC编码...
  • 信源编码与信道编码

    万次阅读 多人点赞 2017-03-26 17:02:44
    信源编码和信道编码的发展历程 信源编码:  最原始的信院编码就是莫尔斯电码,另外还有ASCII码和电报码都是信源编码。但现代通信应用中常见的信源编码方式有:Huffman编码、算术编码、L-Z编码,这三种都是无损...
  • 信道编码作业matlab.doc

    2021-04-23 11:26:12
    信道编码作业matlab.doc 信道编码 MATLAB 仿真作业 09274070 王若闻 思源 0903 1 现给出循环码及卷积码的编解码程序,理解各程序,完成以下习题。将程序运行结果及各 目 的解答写入 word 中: 运行结果如下 1.用 ...
  • 基于H.264立体视频信源信道联合编码技术研究,张景正,张小频,立体显示技术的不断发展使得立体视频编解码技术受到人们越来越多的关注。然而立体视频数据量大且难于传输的问题一直制约着立体视
  • 对有噪信道下基于小波变换的图像编码传输实现和失真估计问题及多误码率OFDM自适应调制比特功率优化分配问题进行了建模和分析,使得信源量化编码与OFDM调制能够方便地结合起来,并进一步得到了相应的信源信道联合优化...
  • 信源编码和信道编码

    千次阅读 2018-12-06 15:14:59
    信源编码和信道编码的发展历程 信源编码:  最原始的信院编码就是莫尔斯电码,另外还有ASCII码和电报码都是信源编码。但现代通信应用中常见的信源编码方式有:Huffman编码、算术编码、L-Z编码,这三种都是无损...
  • 为了提高矢量量化对信道误码的鲁棒性,同时又不影响无误码时的量化性能,该文提出了一种COVQ与非等重保护(unequal error protection,UEP)相结合的信源信道联合编码方案。该方案利用了COVQ在抗误码方
  • 基于深度学习的信源信道联合编码方法综述.pdf
  • 通信系统的优化可用最优编码方式实现,不同的系统优化指标可产生不同的最佳编、译码方式。从通信系统的优化理论入手,论证了用信源信道联合编码(joint source
  • 信源编码与信道编码区别(十一)

    千次阅读 2021-06-02 17:55:43
    信源编码和信道编码的发展历程 信源编码: 最原始的信院编码就是莫尔斯电码,另外还有ASCII码和电报码都是信源编码。但现代通信应用中常见的信源编码方式有:Huffman编码、算术编码、L-Z编码,这三种都是无损编码...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 856
精华内容 342
关键字:

联合信源信道编码

友情链接: cehesion.rar