CN109274462A - 一种基于改进在线喷泉码的图像传输方法 - Google Patents
一种基于改进在线喷泉码的图像传输方法 Download PDFInfo
- Publication number
- CN109274462A CN109274462A CN201811157505.3A CN201811157505A CN109274462A CN 109274462 A CN109274462 A CN 109274462A CN 201811157505 A CN201811157505 A CN 201811157505A CN 109274462 A CN109274462 A CN 109274462A
- Authority
- CN
- China
- Prior art keywords
- coded identification
- receiving end
- degree
- decoding
- symbol
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0009—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Quality & Reliability (AREA)
- Multimedia (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明提供一种基于改进在线喷泉码的图像传输方法,涉及无线网络多媒体数据的可靠性传输领域。包括,编码端操作:统计待传输图像大小并分组;持续发送度为1的编码符号,持续产生度为2的编码符号,产生度为d的编码符号;译码端操作:初始化译码图并仅接收度为1的编码符号,将译码图中对应节点变成黑色;判断恢复输入符号数并接收度为2的编码符号;判断接收编码符号组成、连通分量规模、连通分量中是否全部为黑色节点;接收度为d的编码符号并判断其组成;访问缓存的编码符号并确认译码图中的符号全部为黑色,停止译码并发送“译码成功”给发送端。本方法给出度为1的编码符号数量,并将其用于编码过程,同时通过缓存部分节点,提高译码性能。
Description
技术领域
本发明涉及无线网络多媒体数据的可靠性传输技术领域,具体涉及一种基于改进在线喷泉码的图像传输方法。
背景技术
诸如LT码、无标度LT码和Raptor码等喷泉码能够提供大规模输入符号在删除信道中的可靠传输。给定输入符号集合和编码符号的度分布,喷泉码编码器能够持续产生编码符号直到译码器完全恢复所有的输入符号。传统喷泉码的译码器恢复所有输入符号后需要通过反馈信道给发送端发送“已完全成功译码”信息。然而,在编码过程中,反馈信道处于空闲状态。另外,LT码的译码性能随着输入符号数的减少而降低。近几年,研究人员尝试利用反馈信道发送反馈信息给发送端,使得发送端能够根据接收端的译码状态调整编码策略。基于此框架的喷泉码称为在线码,即,接收端给定任意编码状态,编码器能够决定优化的编码策略。
移位LT码(SLT码)基于接收端反馈的已译码符号数修正LT码的稳健孤子分布,提高LT码的译码性能。带有可选反馈的稳健LT码(LT-AF码)以编译码复杂度为代价,完全恢复给定长度的输入符号,所需的冗余信息和反馈次数更少。通过考察预处理集规模与输入符号被释放概率间的关系,Zhang等提出带有反馈和预处理集规模渐减的LT码。该编码方案能够进一步提高译码成功概率。上述方法主要关注于译码过程结束恢复所有输入符号的能力。然后,在一些图像和视频传输等实时多媒体应用中,接收端在只恢复部分输入符号就可以展示出质量稍差的图像或视频信息。因此,如何设计中间符号恢复速率较高的前向纠错码成为亟待解决的问题。
A.Talari等在《On the Intermediate Symbol Recovery Rate of RatelessCodes》中采用多目标优化方法找到多个编码符号的度分布,改进中间符号恢复率。S.Wu等在《Staged growth codes:intermediate performance and overhead analysis》一文中针对不同的译码阶段,编码端采用不同的度分布产生编码符号,通过最小化未释放符号概率,改进中间译码性能。Y.Cassuto等在《Online Fountain Codes with Low Overhead》一文中提出了一种低冗余的在线喷泉码编码方案。该编码方案根据译码状态信息将编码过程分成两个阶段:建立阶段和完善阶段。其中,建立阶段仅产生度为2的编码符号,完善阶段根据接收端的译码图计算下一个编码符号的度,并将其反馈给发送端用于产生下一个编码符号。上述三种方法中,A.Talari方法产生的度分布依赖于非支配帕累托解,不同的权重赋值造成不同的中间译码性能;A.Wu方法同样依赖于阶段数量,阶段数量的不同造成中间译码性能差别较大;Y.Cassuto提出方法中连接建立阶段的中间译码性能有待提高。因此,如何利用反馈信息,改进喷泉码完全恢复输入符号需要的编码符号数、反馈信息数量以及中间符号恢复率是目前的一个研究热点。
发明内容
针对现有技术存在的问题,本发明提供一种基于改进在线喷泉码的图像传输方法,改进已有基于反馈信息的在线喷泉码的译码成功概率、反馈次数及中间符号恢复率,进而提高图像和视频等多媒体信息传输的质量和可靠性。
为了实现上述目的,一种基于改进在线喷泉码的图像传输方法,包括编码端和译码端操作,以及二者的信息交互;
(1)编码端操作包括以下步骤:
B1:统计待传输图像文件大小,对待传输文件进行分组,每组的K个l比特信息构成了K个输入符号;
所述对待传输文件进行分组的过程如下:将待传输文件分成多组,每组包含K个l比特信息,其中,K和l均为正整数,且K>103,l≥1,若最后一组内数据量少于K×l比特,则将该分组内的剩余比特位补零;
B2:发送端持续发送度为1的编码符号,直到收到接收端的反馈信息“2”为止;
B3:编码器持续产生度为2的编码符号,直到接收到接收端新的反馈信息为止,其中,接收端新的反馈信息为接收端期望接收的编码符号的度;
B4:发送端产生度为d(d≥2)的编码符号,直到收到接收端反馈回“译码成功”信息,其中,d的值由接收端反馈得到;
(2)译码端操作包括以下步骤:
Y1:初始化译码图G=(V,E),其中,V为K个输入符号所在的节点集合,E为空集;
Y2:接收端仅接收度为1的编码符号,同时,译码器恢复产生接收端接收到编码符号的输入符号并且将译码图中对应被恢复输入符号的节点转变成黑色;
Y3:判断被恢复的输入符号数是否小于X,若是,则返回Y2,若否,则译码器发送消息“2”给发送端,继续Y4;
Y4:接收端持续接收度为2的编码符号;
Y5:判断接收端接收的编码符号组成成分,若编码符号由一个黑色节点和一个白色节点异或得到,则译码器恢复白色节点对应的输入符号的值并将它的颜色更新为黑色,同时在这两个节点间增加一条连边,继续Y6;若编码符号是两个来自不同连通分量的两个白色节点的异或,则在两个白色节点间增加一条连边,使两个独立的连通分量合并成一个连通分量,返回Y4;若编码符号是两个来自相同连通分量的白色节点对应输入符号的异或或者是两个黑色节点的异或,则丢弃该编码符号,返回Y4;
Y6:判断连通分量的规模是否达到β0K,若是,则继续Y7,若否,则返回Y4;
Y7:判断连通分量中是否全部为黑色节点,若是,则接收端计算最优度d,并将该最优度的值反馈给编码器端,继续Y9,若否,则译码器发送消息“1”给发送端,继续Y8;
Y8:接收端只接收度为1的编码符号,同时,译码器将译码图中与接收到的编码符号对应的输入符号转换为黑色节点,返回Y7;
Y9:接收端接收度为d的编码符号;
Y10:判断接收端接收的编码符号组成成分,若编码符号由黑色节点或者由来自同一连通分量的白色节点和可选的黑色节点异或得到,则丢弃该编码符号,返回Y9;若编码符号由三个或多个来自两个或多个不同连通分量的白色节点以及可选的黑色节点生成,则译码器在接收端缓存该编码符号,返回Y9;若编码符号由来自两个不同连通分量的白色节点和可选的黑色节点异或得到,则在这两个白色节点间增加一条新的连边,合并为一个连通分量,返回Y9;若编码符号由一个白色节点和其他黑色节点异或得到,则译码器恢复与该白色节点关联的输入符号,继续Y11;
Y11:接收端访问缓存的编码符号,并将所有被译码的输入符号转换为黑色;
Y12:接收端查看译码图中的符号是否全部为黑色,若是,则接收端停止译码并发送“译码成功”消息给发送端;若否,继续Y13;
Y13:接收端重新计算最优度d,若最优度d没有发生变化,则返回Y9;若最优度d发生变化,接收端反馈给发送端新的最优度值d,返回Y9。
进一步地,所述编码端操作步骤中,产生度为n的编码符号过程为:随机从K个输入符号中无重复地选择n个符号,编码符号的值为这n个编码符号的异或,其中,n为大于1的正整数,若n=1,则编码符号的值为被选输入符号的值。
本发明的有益效果:
本发明提出一种基于改进在线喷泉码的图像传输方法,考虑到若译码图中最大连通分量中的一个节点变为黑色,那么该最大连通分量内所有节点将立即能够译码,利用概率理论,给出最大连通分量中至少有一个节点变为黑色所需要的度为1的编码符号数量,并将其用于编码过程。另外,考虑到部分非冗余编码符号在完成阶段被丢弃的问题,本发明通过缓存这部分节点,提高译码性能,因此,本发明是一种具有较高中间符号恢复率、较高译码成功概率、较低译码冗余度的在线喷泉码编码方案,使得未完全恢复所有输入符号前提下,接收端仍可以得到原始图像的一个较差的版本。
附图说明
图1为本发明实施例中基于改进在线喷泉码的图像传输方法中编码端操作的流程图;
图2为本发明实施例中将比特数为N=1000×8的文件平均划分成1000个分组示意图;
图3为本发明实施例中生成度为1的编码符号示意图;
图4为本发明实施例中基于改进在线喷泉码的图像传输方法中译码端操作的流程图;
图5为本发明实施例中接收的编码符号由译码图中不在同一连通分量的一个黑色节点和一个白色节点异或得到而形成的Tanner图及更新的译码图示意图;
图6为本发明实施例中接收的编码符号由译码图中不在同一连通分量的两个白色节点异或得到而形成的Tanner图及更新的译码图示意图;
图7为本发明实施例中接收的满足第3类事件的编码符号所在Tanner图和译码图的示意图;
图8为本发明实施例中接收的满足第3类事件的编码符号转变为满足第2类事件的编码符号形成的Tanner图和译码图示意图;
图9为本发明实施例中接收的第3类事件的编码符号进一步转变为满足第1类事件的编码符号形成的Tanner图和译码图示意图;
图10为本发明实施例中构成的改进的在线喷泉码在给定接收编码符号数条件下与原始在线喷泉码在被译码符号数方面的比较曲线;
图11为本发明实施例中构成的改进的在线喷泉码在不同参数β0前提下与原始在线喷泉码在被译码符号数方面的比较曲线。
具体实施方式
为了使本发明的目的、技术方案及优势更加清晰,下面结合附图和具体实施例对本发明做进一步详细说明。此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
一种基于改进在线喷泉码的图像传输方法,包括编码端和译码端操作,以及二者的信息交互。
(1)编码端操作流程如图1所示,具体包括以下步骤:
B1:统计待传输图像文件大小,对待传输文件进行分组,每组的K个l比特信息构成了K个输入符号。
所述对待传输文件进行分组的过程如下:将待传输文件分成多组,每组包含K个l比特信息,其中,K和l均为正整数,且K>103,l≥1,若最后一组内数据量少于K×l比特,则将该分组内的剩余比特位补零。
本实施例中,采用Kotlin语言中FileUtils类中的readFileToByteArray()函数将文件转变成字节数组。假设每个输入符号包含1个字节=8比特数据,K=1000个输入符号作为一组输入到编码器中编码。
本实施方式中,2KB的文件正好可以被分成2组K=1000个1字节输入符号。然而,对于某些文件,并不能将文件正好划分为多个分组,即,划分后的最后一个分组数据量小于1000B。此时,需要在最后一个分组填充多个全零字节,使得最后一个分组足够1000个字节进行编码。如图2所示,为划分的1000个1字节输入符号。
本实施例中以一组1000个输入符号的编、译码过程为例,并初始化一个二部图G=(S,C,E),其中,|G|=1000,C=E=φ,下面阐述本发明实施方式中编码、译码过程的具体步骤。
B2:发送端持续发送度为1的编码符号,直到收到接收端的反馈信息“2”为止。
所述编码端操作步骤中,产生度为n的编码符号过程为:随机从K个输入符号中无重复地选择n个符号,编码符号的值为这n个编码符号的异或,其中,n为大于1的正整数,若n=1,则编码符号的值为被选输入符号的值。
本实施例中,产生度为1的编码符号过程为:将0-1.0范围划分成相等的1000个小区间,产生一个[0,1]之间的随机数,查看该随机数在第几个小区间,那么对应该编码符号由第几个输入符号的值决定。假设产生的随机数落在第1个小区间,那么被选输入符号为S1,则该编码符号的值为输入符号S1的值。如图3所示。在二部图中增加编码符号节点,连接该编码节点与生成它的输入符号节点。
B3:编码器持续产生度为2的编码符号,直到接收到接收端新的反馈信息为止,其中,接收端新的反馈信息为接收端期望接收的编码符号的度。
B4:发送端产生度为d(d≥2)的编码符号,直到收到接收端反馈回“译码成功”信息,其中,d的值由接收端反馈得到。
本实施例中,B3和B4所涉及到的产生度为d的编码符号过程为:将0-1.0划分为1000个小区间,产生一个[0,1]之间的随机数,查看该随机数在第几个小区间,则对应该输入符号作为生成该编码符号的候选输入节点,并加入到候选输入节点集合。重复产生[0,1]之间的随机数,查看随机数所在的区间,遍历候选输入节点集合,若候选输入节点集合中没有该区间对应的输入符号,那么将该输入符号放入候选输入节点集合,否则重复产生随机数,直到候选输入节点集合中包含了d个输入符号位置。假设新产生的编码符号为Cx,候选输入节点集合{Sx1,Sx2,...,Sxd},那么在二部图中,增加节点Cx,及边(Sx1,Cx),(Sx2,Cx),...,(SxdCx)。生成该编码符号的输入符号的序号作为该编码符号的首部信息,与编码符号的值一起发送给接收端。
(2)译码端操作流程如图4所示,具体包括以下步骤:
Y1:初始化译码图G=(V,E),其中,V为K个输入符号所在的节点集合,E为空集。
Y2:接收端仅接收度为1的编码符号,同时,译码器恢复产生接收端接收到编码符号的输入符号并且将译码图中对应被恢复输入符号的节点转变成黑色。
本实施例中的一个目标之一是提高预建立阶段和建立阶段的即时符号恢复率。假设t时刻,译码器共恢复T个输入符号,那么t时刻的即时符号恢复率为T/K。理想情况下,当建立阶段结束时在最大连通分量重的输入节点应均被恢复,即,至少有一个黑色节点位于建立阶段生成的最大连通分量中。根据概率理论,为使至少一个度为1的编码符号被包含在规模为βK的最大连通分量中的概率大于等于P,那么至少需要发送的度为1的编码符号数X的计算公式如公式(1)所示:
X≥log(1-P)/log(1-β0) (1)
仅当被恢复的输入符号数不少于X时,译码器发送消息“2”给发送端,指出接收端接下来需要度为2的编码符号。
Y3:判断被恢复的输入符号数是否小于X,若是,则返回Y2,若否,则译码器发送消息“2”给发送端,继续Y4;
Y4:接收端持续接收度为2的编码符号;
Y5:判断接收端接收的编码符号组成成分,若编码符号由一个黑色节点和一个白色节点异或得到,则译码器恢复白色节点对应的输入符号的值并将它的颜色更新为黑色,同时在这两个节点间增加一条连边,继续Y6;若编码符号是两个来自不同连通分量的两个白色节点的异或,则在两个白色节点间增加一条连边,使两个独立的连通分量合并成一个连通分量,返回Y4;若编码符号是两个来自相同连通分量的白色节点对应输入符号的异或或者是两个黑色节点的异或,则丢弃该编码符号,返回Y4。
本实施例中,查看接收到的编码符号的首部信息,在译码图G中找到首部信息对应的多个节点。(1)如果接收到的编码符号由一个黑色节点和一个白色节点异或而得,编码器将白色节点的值赋值为编码符号与黑色节点对应输入符号值的异或,生成连接这对白色节点和黑色节点的边;如图5所示,假设第一个编码符号C1为输入符号S1的值,那么接收端接收到C1,节可以立即恢复S1的值,同时在译码图中将节点S2转变为黑色节点。编码符号C2的值为S2和S4的异或,由于S2和S4在两个不同的连通分量内,在译码图中增加边(S2,S4)。所述接收到的编码符号由译码图中的一个黑色节点和一个白色节点异或得到,表示该编码节点满足第1类事件。(2)如果接收的编码符号由译码图中两个来自不同连通分量的白色节点异或得到,编码增加一条连接这两个白色节点的边,使得这两个连通分量融合为一个,此时,表示该编码节点满足第2类事件。如图6所示,假设编码符号C2由输入符号S3和S4异或得到,其中,{S3,S31,S32}、{S4,S41,S42}为两个连通分支,那么在译码图中增加边(S3,S4),将两个连通分支合并为一个{S3,S31,S32,S4,S41,S42}。(3)如果接收端由两个来自同一连通分量的白色节点或由黑色节点异或得到,那么该符号没有携带任何有用的信息,则丢弃该符号。
Y6:判断连通分量的规模是否达到β0K,若是,则继续Y7,若否,则返回Y4。
Y7:判断连通分量中是否全部为黑色节点,若是,则接收端计算最优度d,并将该最优度的值反馈给编码器端,继续Y9,若否,则译码器发送消息“1”给发送端,继续Y8。
Y8:接收端只接收度为1的编码符号,同时,译码器将译码图中与接收到的编码符号对应的输入符号转换为黑色节点,返回Y7。
Y9:接收端接收度为d的编码符号。
本实施例中,根据黑色节点在全部输入符号中所占的比例β,计算待反馈给发送端的最优度d,其计算公式如公式(2)所示:
Y10:判断接收端接收的编码符号组成成分,若编码符号由黑色节点或者由来自同一连通分量的白色节点和可选的黑色节点异或得到,则丢弃该编码符号,返回Y9;若编码符号由三个或多个来自两个或多个不同连通分量的白色节点以及可选的黑色节点生成,则译码器在接收端缓存该编码符号,返回Y9;若编码符号由来自两个不同连通分量的白色节点和可选的黑色节点异或得到,即第2类事件发生,则在这两个白色节点间增加一条新的连边,合并为一个连通分量,返回Y9;若编码符号由一个白色节点和其他黑色节点异或得到,即第1类事件发生,则译码器恢复与该白色节点关联的输入符号,继续Y11。
Y11:接收端访问缓存的编码符号,并将所有被译码的输入符号转换为黑色。
Y12:接收端查看译码图中的符号是否全部为黑色,若是,则接收端停止译码并发送“译码成功”消息给发送端;若否,继续Y13。
Y13:接收端重新计算最优度d,若最优度d没有发生变化,则返回Y9;若最优度d发生变化,接收端反馈给发送端新的最优度值d,返回Y9。
本实施例中,判断接收端接收的编码符号组成成分:
(1)如果该编码符号由译码图中(i)所有黑色节点或(ii)来自同一连通分量的白色节点和可选的黑色节点异或得到,该编码符号不包含任何额外信息,应该被丢弃。
(2)如果该编码符号由来自于两个或多个不同连通分量的三个或多个白色节点以及可选的黑色节点异或得到,即此时第3类事件发生,该编码符号被接收端缓存。所谓第3类事件为度为d的编码符号由3个在不同连通分量中的白色节点和d-3个黑色节点异或得到。如图7所示,接收端在时刻t1收到编码符号C1,该编码符号由输入符号S1,S2,S3异或得到,其中{S1,S11,S12,S13}、{S2,S21,S22}、{S3,S31}为3个不同的连通分量。虽然此时,该编码符号并不能立即释放,但是随着译码持续,第3类事件潜在能够转变成可立即译码的第2类事件和第1类事件。如图8所示,假设接收端在时刻tx(t1<tx)收到编码符号Cx,Cx由白色节点S2和黑色节点{Sb1,Sb2}异或得到,译码器更新C1的值,此时,C1可以看做是两个不在同一连通分量中的白色节点与1个黑色节点异或得到,即C1转变为满足第2类事件的节点。进一步如图9所示,接收端在时刻ty(t1<tx<ty)接收到编码符号Cy,Cy由白色节点S3和黑色节点{Sb3,Sb4}异或得到,则S3的值可以立即恢复,并且译码图中S3变为黑色节点。此时,编码符号C1可以看作由一个白色节点和两个黑色节点异或得到,即C1转变为满足第1类事件的节点。本实施方案缓存了满足第3类事件的编码符号,而原始的在线喷泉码丢弃了这部分编码符号。
(3)如果编码符号由来自两个不同连通分量的两个白色节点和其他可选的黑色节点异或得到,那么在这两个白色节点间增加一条连边,使得两个连通分量合并为一个连通分量,即第2类事件发生。
(4)如果编码符号由一个白色节点和多个黑色节点异或得到,即第1类事件发生,译码器将立即恢复与该白色节点对应的输入符号。由于添加到译码图中的连边均由于接收到的编码符号由两个在不同连通分量里面的白色节点和可选的黑色节点异或得到,则与该白色节点在同一连通分量内的所有节点对应的输入符号均可被恢复。译码器将所有被恢复输入符号对应的节点转变为黑色。接收端进一步访问缓存译码并更新译码图。由于被恢复输入符号所占的比例已经更新,译码器根据公式(2)重新计算最优度。如果该最优度不同于前一次计算得到的最优度,接收端将其反馈给发送端。如果所有的输入符号均被恢复,接收端反馈给发送端消息“译码成功”。
公式(2)为使得第1类事件和第2类事件发生概率和最大所得到的度。已知译码图中黑色节点所占的概率β,第1类事件发生的概率为第2类事件发生的概率为
为了验证本申请提供方法的可行性及优势,本实施例中从平均反馈次数、恢复给定输入符号所需的平均编码符号数、平均度以及给定接收编码符号数平均能够译码的输入符号数量几个方面与原始的在线喷泉码进行对比。
本实施例中,用于对比分析的输入符号数量分别为K=1000,1500,2000和2500。对比的编码方法为传统在线喷泉码和本文提出的在线喷泉码。每次仿真从发送端向接收端传输一个大小为2.77MB的JPG图像,假设信道的删除概率Pera=0.1。传输的图像被分成多个分组,其中每个分组包含K个输入符号,每个输入符号包含8bits信息。公式(1)中的概率阈值P设置为0.99,β0设置为0.65。在仿真过程中,记录每个分组的下列属性:
(1)每个编码符号的度,该属性与编译码复杂度相关;
(2)接收端完全恢复所有输入符号前发送的编码符号数量,该属性与码的有效性相关;
(3)从接收端传给发送端的反馈数量,该属性与反馈信道的使用有关。
完全恢复整个JPG文件后,进一步计算:
(1)编码符号的平均度
(2)完全恢复所有输入符号传输的平均编码符号数
(3)平均反馈次数
表1给出了原始在线喷泉码和本方法构造的在线喷泉码的特性。
表1原始在线喷泉码和本方法构造的在线喷泉码特性比较
分析表1可知,在原始在线喷泉码基础上,引入预建立阶段和增强的完善阶段,能够有效地改进包括恢复所有输入符号所需的编码符号数、平均反馈次数、平均度等编译码性能。
为了进一步验证方法在传输实时性方面的有效性,比较每接收一个编码符号所得恢复输入符号的数量。假设K=1000,β0=0.25,0.5和0.65。
图10给出了当β0为0.65时,接收的编码符号数与被译码的输入符号数量的平均值间的关系曲线。对于原始的在线喷泉码,初始阶段仅发送度为2的编码符号,此时没有输入符号能够被恢复。建立阶段后,输入符号开始被恢复,曲线上扬。与原始在线喷泉码相比,本方法构造的在线喷泉码能够在预建立阶段和建立阶段恢复更多输入符号。特别是,在接收到500-800个编码符号时,本方法与原始在线喷泉码相比能够得到更高的即时符号恢复率。另外,本方法需要接收较少的编码符号就可以完全恢复所有的输入符号。图11进一步比较了β0为0.25和0.5时,本方法与原始在线喷泉码的即时符号恢复率。从图中可以看出,预建立阶段设置的X越大,本方法的即时符号恢复率越高。
综上可知,通过本申请提供的方法可以直接应用于视频、图像等大数据量数据在无线信道中的可靠传输,且本方法是一种具有较高中间符号恢复率、较高译码成功概率、较低译码冗余度的在线喷泉码编码方案。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;因而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。
Claims (2)
1.一种基于改进在线喷泉码的图像传输方法,其特征在于,包括编码端和译码端操作,以及二者的信息交互;
(1)编码端操作包括以下步骤:
B1:统计待传输图像文件大小,对待传输文件进行分组,每组的K个l比特信息构成了K个输入符号;
所述对待传输文件进行分组的过程如下:将待传输文件分成多组,每组包含K个l比特信息,其中,K和l均为正整数,且K>103,l≥1,若最后一组内数据量少于K×l比特,则将该分组内的剩余比特位补零;
B2:发送端持续发送度为1的编码符号,直到收到接收端的反馈信息“2”为止;
B3:编码器持续产生度为2的编码符号,直到接收到接收端新的反馈信息为止,其中,接收端新的反馈信息为接收端期望接收的编码符号的度;
B4:发送端产生度为d(d≥2)的编码符号,直到收到接收端反馈回“译码成功”信息,其中,d的值由接收端反馈得到;
(2)译码端操作包括以下步骤:
Y1:初始化译码图G=(V,E),其中,V为K个输入符号所在的节点集合,E为空集;
Y2:接收端仅接收度为1的编码符号,同时,译码器恢复产生接收端接收到编码符号的输入符号并且将译码图中对应被恢复输入符号的节点转变成黑色;
Y3:判断被恢复的输入符号数是否小于X,若是,则返回Y2,若否,则译码器发送消息“2”给发送端,继续Y4;
Y4:接收端持续接收度为2的编码符号;
Y5:判断接收端接收的编码符号组成成分,若编码符号由一个黑色节点和一个白色节点异或得到,则译码器恢复白色节点对应的输入符号的值并将它的颜色更新为黑色,同时在这两个节点间增加一条连边,继续Y6;若编码符号是两个来自不同连通分量的两个白色节点的异或,则在两个白色节点间增加一条连边,使两个独立的连通分量合并成一个连通分量,返回Y4;若编码符号是两个来自相同连通分量的白色节点对应输入符号的异或或者是两个黑色节点的异或,则丢弃该编码符号,返回Y4;
Y6:判断连通分量的规模是否达到β0K,若是,则继续Y7,若否,则返回Y4;
Y7:判断连通分量中是否全部为黑色节点,若是,则接收端计算最优度d,并将该最优度的值反馈给编码器端,继续Y9,若否,则译码器发送消息“1”给发送端,继续Y8;
Y8:接收端只接收度为1的编码符号,同时,译码器将译码图中与接收到的编码符号对应的输入符号转换为黑色节点,返回Y7;
Y9:接收端接收度为d的编码符号;
Y10:判断接收端接收的编码符号组成成分,若编码符号由黑色节点或者由来自同一连通分量的白色节点和可选的黑色节点异或得到,则丢弃该编码符号,返回Y9;若编码符号由三个或多个来自两个或多个不同连通分量的白色节点以及可选的黑色节点生成,则译码器在接收端缓存该编码符号,返回Y9;若编码符号由来自两个不同连通分量的白色节点和可选的黑色节点异或得到,则在这两个白色节点间增加一条新的连边,合并为一个连通分量,返回Y9;若编码符号由一个白色节点和其他黑色节点异或得到,则译码器恢复与该白色节点关联的输入符号,继续Y11;
Y11:接收端访问缓存的编码符号,并将所有被译码的输入符号转换为黑色;
Y12:接收端查看译码图中的符号是否全部为黑色,若是,则接收端停止译码并发送“译码成功”消息给发送端;若否,继续Y13;
Y13:接收端重新计算最优度d,若最优度d没有发生变化,则返回Y9;若最优度d发生变化,接收端反馈给发送端新的最优度值d,返回Y9。
2.根据权利要求1所述的基于改进在线喷泉码的图像传输方法,其特征在于,所述编码端操作步骤中,产生度为n的编码符号过程为:随机从K个输入符号中无重复地选择n个符号,编码符号的值为这n个编码符号的异或,其中,n为大于1的正整数,若n=1,则编码符号的值为被选输入符号的值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811157505.3A CN109274462B (zh) | 2018-09-30 | 2018-09-30 | 一种基于改进在线喷泉码的图像传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811157505.3A CN109274462B (zh) | 2018-09-30 | 2018-09-30 | 一种基于改进在线喷泉码的图像传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109274462A true CN109274462A (zh) | 2019-01-25 |
CN109274462B CN109274462B (zh) | 2021-01-01 |
Family
ID=65194908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811157505.3A Active CN109274462B (zh) | 2018-09-30 | 2018-09-30 | 一种基于改进在线喷泉码的图像传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109274462B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110191248A (zh) * | 2019-06-07 | 2019-08-30 | 天府新区西南交通大学研究院 | 一种基于反馈的Bats Code的无人机图像传输方法 |
CN113890683A (zh) * | 2021-10-11 | 2022-01-04 | 东北大学 | 一种基于不等差错保护在线喷泉码的分级视频传输方法 |
CN114978419A (zh) * | 2022-04-26 | 2022-08-30 | 青海师范大学 | 水声网络基于改进在线喷泉码的数据编解码方法 |
CN115883021A (zh) * | 2022-12-07 | 2023-03-31 | 西北工业大学 | 一种基于在线喷泉码的水声网络数据可靠传输方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101286745A (zh) * | 2008-05-07 | 2008-10-15 | 中兴通讯股份有限公司 | 一种交织编码方法及装置 |
CN101453297A (zh) * | 2007-12-07 | 2009-06-10 | 中兴通讯股份有限公司 | 低密度生成矩阵码的编码方法和装置、及译码方法和装置 |
CN101582744A (zh) * | 2009-06-19 | 2009-11-18 | 重庆邮电大学 | 一种基于迭代方法的rs喷泉码的编译码方法 |
CN101814923A (zh) * | 2009-02-20 | 2010-08-25 | 华为技术有限公司 | 一种喷泉码解码方法及装置 |
CN101826940A (zh) * | 2010-04-19 | 2010-09-08 | 中兴通讯股份有限公司 | 一种对喷泉码中预译码集优化的方法和系统 |
US20110274202A1 (en) * | 2010-05-07 | 2011-11-10 | Postech Academy Industry Foundation | Apparatus and method for channel coding in a communication system |
CN102571104A (zh) * | 2012-01-15 | 2012-07-11 | 西安电子科技大学 | Ra码的分布式编译码方法 |
US20140068386A1 (en) * | 2012-08-31 | 2014-03-06 | Industrial Technology Research Institute | Apparatus and method for accelerating the encoding of raptor codes |
-
2018
- 2018-09-30 CN CN201811157505.3A patent/CN109274462B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101453297A (zh) * | 2007-12-07 | 2009-06-10 | 中兴通讯股份有限公司 | 低密度生成矩阵码的编码方法和装置、及译码方法和装置 |
CN101286745A (zh) * | 2008-05-07 | 2008-10-15 | 中兴通讯股份有限公司 | 一种交织编码方法及装置 |
CN101814923A (zh) * | 2009-02-20 | 2010-08-25 | 华为技术有限公司 | 一种喷泉码解码方法及装置 |
CN101582744A (zh) * | 2009-06-19 | 2009-11-18 | 重庆邮电大学 | 一种基于迭代方法的rs喷泉码的编译码方法 |
CN101826940A (zh) * | 2010-04-19 | 2010-09-08 | 中兴通讯股份有限公司 | 一种对喷泉码中预译码集优化的方法和系统 |
US20110274202A1 (en) * | 2010-05-07 | 2011-11-10 | Postech Academy Industry Foundation | Apparatus and method for channel coding in a communication system |
CN102571104A (zh) * | 2012-01-15 | 2012-07-11 | 西安电子科技大学 | Ra码的分布式编译码方法 |
US20140068386A1 (en) * | 2012-08-31 | 2014-03-06 | Industrial Technology Research Institute | Apparatus and method for accelerating the encoding of raptor codes |
Non-Patent Citations (3)
Title |
---|
ANYA APAVATJRUT等: ""Toward Increasing Packet Diversity for Relaying LT Fountain Codes in Wireless Sensor Networks"", 《IEEE》 * |
ZHU ZHILIANG等: ""Performance analysis of LT codes with different degree distribution"", 《IEEE》 * |
赵玉丽等: ""一类具有稳健无标度特性的LT码及其性能"", 《CNKI》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110191248A (zh) * | 2019-06-07 | 2019-08-30 | 天府新区西南交通大学研究院 | 一种基于反馈的Bats Code的无人机图像传输方法 |
CN110191248B (zh) * | 2019-06-07 | 2020-09-29 | 天府新区西南交通大学研究院 | 一种基于反馈的Bats Code的无人机图像传输方法 |
CN113890683A (zh) * | 2021-10-11 | 2022-01-04 | 东北大学 | 一种基于不等差错保护在线喷泉码的分级视频传输方法 |
CN113890683B (zh) * | 2021-10-11 | 2024-06-25 | 东北大学 | 一种基于不等差错保护在线喷泉码的分级视频传输方法 |
CN114978419A (zh) * | 2022-04-26 | 2022-08-30 | 青海师范大学 | 水声网络基于改进在线喷泉码的数据编解码方法 |
CN114978419B (zh) * | 2022-04-26 | 2023-02-10 | 青海师范大学 | 水声网络基于改进在线喷泉码的数据编解码方法 |
US11722245B2 (en) | 2022-04-26 | 2023-08-08 | Qinghai Normal University | Data encoding and decoding method for underwater acoustic networks (UANs) based on improved online fountain code |
CN115883021A (zh) * | 2022-12-07 | 2023-03-31 | 西北工业大学 | 一种基于在线喷泉码的水声网络数据可靠传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109274462B (zh) | 2021-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109274462A (zh) | 一种基于改进在线喷泉码的图像传输方法 | |
Jiang et al. | Deep source-channel coding for sentence semantic transmission with HARQ | |
CN106452460B (zh) | 一种极化码与重复码级联的纠错编码方法 | |
CN102164026B (zh) | 基于深空通信环境下的喷泉码编译方法 | |
KR101643976B1 (ko) | 낮은 복잡성 및 전력 효율적인 오류 정정 코딩 방식 | |
CN101034953B (zh) | 应用低密度奇偶校验码进行数据传输的方法 | |
CN112600647B (zh) | 基于网络编码续航的多跳无线网络传输方法 | |
CN111327397B (zh) | 一种信息数据纵向冗余校验纠错编解码方法 | |
US11438097B2 (en) | Media content-based adaptive method, device and system for forward error correction (FEC) coding and decoding of systematic code, and medium | |
CN103716134B (zh) | 一次反馈条件下度渐增的喷泉码的编码方法 | |
CN106998242B (zh) | 空间通信分布式动态网络拓扑的不等保护纠删编码方法 | |
Paaske | Improved decoding for a concatenated coding system recommended by CCSDS | |
CN113890683B (zh) | 一种基于不等差错保护在线喷泉码的分级视频传输方法 | |
CN103944676A (zh) | 一种基于深空通信环境的lt码编译码方法 | |
CN110430011B (zh) | 基于规则变量节点度分布的bats码编码方法 | |
CN100525120C (zh) | 分集错误控制编码与解码的方法与装置 | |
CN108259138A (zh) | 一种利用喷泉码多次反馈的安全传输方法 | |
KR20070034532A (ko) | 확장형 컨벌루션 인코더 디바이스, 무선 시스템, 컨벌루션코드 확장 방법 | |
CN112436920A (zh) | 一种适用于多跳中继通信的网络编解码方法 | |
CN100576920C (zh) | 联合ldpc信道码和h.264的视频编解码方法 | |
CN109728900B (zh) | 离散变量量子密钥分发中ldpc纠错码率自适应方法及系统 | |
Abdulkhaleq et al. | Decoding of lt‐like codes in the absence of degree‐one code symbols | |
CN109417432A (zh) | 数据编解码 | |
CN109905130A (zh) | 一种极化码编码、译码方法、装置及设备 | |
CN106533614B (zh) | 一种基于部分信息反馈的分布式卢比变换编码方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |