CN105357536A - 基于残差分布式压缩感知的视频软组播方法 - Google Patents

基于残差分布式压缩感知的视频软组播方法 Download PDF

Info

Publication number
CN105357536A
CN105357536A CN201510660508.9A CN201510660508A CN105357536A CN 105357536 A CN105357536 A CN 105357536A CN 201510660508 A CN201510660508 A CN 201510660508A CN 105357536 A CN105357536 A CN 105357536A
Authority
CN
China
Prior art keywords
frame
measured value
formula
decoding
reference frame
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
Application number
CN201510660508.9A
Other languages
English (en)
Other versions
CN105357536B (zh
Inventor
王安红
刘珊珊
王海东
李素月
卓东风
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Taiyuan University of Science and Technology
Original Assignee
Taiyuan University of Science and Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Taiyuan University of Science and Technology filed Critical Taiyuan University of Science and Technology
Priority to CN201510660508.9A priority Critical patent/CN105357536B/zh
Publication of CN105357536A publication Critical patent/CN105357536A/zh
Application granted granted Critical
Publication of CN105357536B publication Critical patent/CN105357536B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种基于残差分布式压缩感知的视频软组播的方法,属于视频编解码和无线传输技术领域。包括发送端编码,传输信道,接收端解码。发送端:读入视频序列并分块,对视频块观测,得到每帧的观测值,然后在一个图像组里面,把非参考帧的观测值分别减去参考帧的观测值得到残差观测值,然后将其残差观测值和参考帧的观测值平均分配到多个数据包中,同时,对每个包里面的观测值进行能量分配,使其能量失真最小。传输信道:数据包经过简单的星座映射,进入OFDM信道传输到解码端。解码端:用户根据自身的接受能力得到不同数目的观测值。由观测值和观测矩阵得到初始解,进行维纳滤波,并利用视频间的相关性进行多方向的运动估计和运动补偿,用SPL算法更新,反复迭代到解码结束;不同的用户根据实际接受的数据包解码恢复出不同的视频质量。

Description

基于残差分布式压缩感知的视频软组播方法
技术领域
本发明属于视频编解码和无线传输技术领域,具体涉及一种基于残差分布式压缩感知的视频软组播方法。
背景技术
随着无线网络发展,各种广播服务得到了快速的发展,如移动电视、新闻广播、多媒体共享,进行实时可靠的无线视频传输已成为必然需求。无线组播的目的是将同一个编码的视频流传输给多个用户,然而大量异构用户面临的不同信道状况和不同的实际接受能力,因此,如何在无线环境中实现数据同时传输到多个用户成为无线组播技术的关键。
传统的无线视频组播常采用两种信源编码框架,分别是分层编码和多描述视频编码方法。无线视频传输时,分层编码不能选择分层和码率,信道的连续变化会引起视频产生悬崖效应,即:当噪声的能量大于一定的阈值,视频码流会导致传输损失和错误,导致解码失败。多描述编码框架只能发出一个特定的信源码率,只有与发送码率匹配的接受用户才能恢复视频,不能满足多个接收者同时享受视频的要求。Jakubczak等提出了一种新无线视频软组播(SoftCast),SoftCast传输的不再是被编码的二进制码流,而是经过编码后的实数序列,简单的星座图映射在OFDM中信道传输,消除了悬崖效应。范晓鹏等在SoftCast的基础上提出了DCast,利用了帧间相关性,提高了SoftCast性能。但是编码后的码流被打包时,每个包里的数据仍有重要性区分,不同用户在丢包时仍然有重要性区分,不符合组播的特性。
压缩传感(CompressedSensing,CS)是近几年内刚刚发展起来的一种新颖的信号处理方法。CS理论指出,只要信号是可压缩的或在某个变换域是稀疏的,那么就可以用一个与变换基不相关的观测矩阵将变换所得的高维信号投影到一个低维空间上,然后通过求解一个优化问题就可以从这些少量的投影中以高概率重构出原始信号。其核心思想是将压缩与采样合并进行,首先采集信号的非自适应线性投影(观测值),然后根据相应重构算法由观测值重构原始信号。CS的优点在于信号的投影观测数据量远远小于传统采样方法所获的数据量,突破了奈奎斯特采样定理的瓶颈,使得高分辨率信号的压缩采样成为可能。
由于CS理论还不完善,因此在实际应用中还面临许多问题,如:观测矩阵需要的存储空间过大,重构算法过于复杂等。对此,LuGan提出一种针对图像编码的块压缩传感(BlockCompressedSensing,BCS)方法,采用分块观测的方式降低了观测矩阵的大小;同时,一些快速恢复算法也被提出,如M.A.T.Figueiredo等人提出的GPSR算法、T.D.Tran等人提出的基于结构化随机矩阵(StructurallyRandomMatrices,SRM)的快速压缩传感算法,J.E.Fowler等人提出了基于图像的BCS-SPL算法和基于视频序列的MC-BCS-SPL算法。但是利用压缩感知在无线视频组播中传输仍然面临很多的挑战。
发明内容
本发明的目的是提供一种能够适应信道带宽变化和不同噪声信道的基于残差分布式压缩感知的视频软组播方法,可有效地克服现有方法存在的缺点,本发明是这样实现的,其特征在于操作步骤是:
第一步:编码
(1)对每一帧每个像素值减去128,并将每一帧分为多个B×B大小的不重叠图像块,B为正整数;
(2)生成一个B2×B2大小的正交高斯随机矩阵作为观测阵ΦB,即 Φ B ∈ R B 2 × B 2 ;
(3)对每一个图像块进行CS全观测,如公式(1):
yj=ΦBxj,(1)
其中,1≤j≤MB,MB是每帧图像包含的全部块数,ΦB是第j个图像块xj的观测矩阵,设定的观测率为1;yj是第j个图像块xj的观测值;
(4)将每帧中所有块的观测值组成一个集合Yi;其中1≤i≤m,m为正整数,m是一个图片组GOP的大小,Yi是第i个视频帧的观测值;
(5)将非参考帧的观测值减去参考帧的观测值,得到残差观测值,如公式(2):
Y k r = Y k - Y 1 - - - ( 2 )
其中,2≤k≤m,是非参考帧的残差观测值;
(6)计算参考帧的观测值Y1的协方差并计算非参考帧的残差观测值的协方差 Λ Y k r = E [ Y k r · Y k r T ] ;
第二步:以图片组GOP为单位进行数据打包
(1)从每个图片组GOP每帧每个块中取一个观测值,参考帧取其初始观测值,非参考帧取其残差观测值,然后放入一个数据包中,据此,一个图片组GOP可以生成N=B×B个数目的数据包;
(2)将数据包中每个观测值进行四舍五入取整,并给每个数据包分配一个索引值 s ⊆ { 1 , 2 , ... N } , N为正整数;
(3)为了更好的保护参考帧,我们需要对每个包内的参考帧观测值和非参考帧的残差观测值进行能量分配,假设Yl,k是第l包中第k帧的全部观测值,则gl,k为其对应的能量分配的伸缩因子,如下公式所示:
Al,1=gl,1Yl,1(3)
A l , k r = g l , i Y l , k r - - - ( 4 )
Y l , k r = Y l , k - Y l , 1 - - - ( 5 )
其中,2≤k≤m,1≤l≤N,Al,1分别为参考帧和非参考帧能量分配后的观测值,其中伸缩因子gl,k是由能量失真优化得到的;
首先,推导得出一个包内总能量失真函数:
D l = δ 2 [ 1 g l , 1 2 + Σ k = 2 m ( 1 g l , 1 + 1 g l , k ) 2 ] , - - - ( 6 )
而最优化能量分配的目标是最小化总失真Dl,因此可以用如下公式表示:
minD l = minδ 2 [ 1 g l , 1 2 + Σ k = 2 m ( 1 g l , 1 + 1 g l , k ) 2 ] = δ 2 min [ 1 g l , 1 2 + Σ k = 2 m ( 1 g l , 1 + 1 g l , k ) 2 ] - - - ( 7 )
其约束条件为:
gl,1 2λl,1+gl,2 2λl,2+…+gl,m 2λl,m=λl,1l,2+…+λl,m(8)
其中,λl,m是第m帧观测值矩阵第l行的方差;
对公式(7)和(8)描述的优化问题,运用Matlab编程语言里面自带的fmincon函数来求解这个优化函数;
第三步:OFDM传输信道,包括如下步骤:
(1)以数据包为单位,将每一数据包内的每一对相邻整数值映射为一个符号,形成一个长度为Ns的符号串,并将此符号串经过“串并转化”,转为大小为的矩阵β,表示向上取整,NC表示子信道的个数,如果Ns/NC不是整数,将矩阵β的最后一列进行补零填充;
(2)对β进行反傅里叶变换IFFT,对IFFT之后的矩阵前端插入大小为的保护间隔得到ξ,最后再将ξ进行“并串转换”得到长度为的OFDM传输符号symbol;
(3)将symbol发送进入高斯白噪声信道AWGN;
第四步:接收端的去噪重构
(1)接收端的每个用户接受到不同数目的有噪声数据包,即带噪声的OFDM符号,将每个包内数据经过“串并转换”,傅里叶变换(FFT),去除保护间隔,“并串转换”;
每个用户得到不同数目的观测值,此时观测值具有一定程度的噪声,假设n为信道噪声,那么接收到的符号可以用以下公式表示:
A ^ l , 1 = A l , 1 + n = g l , 1 Y l , 1 + n - - - ( 9 )
A ^ l , k r = A l , k r + n = g l , k Y l , k r + n - - - ( 10 )
其中,2≤k≤m,1≤l≤N,分别为参考帧和非参考帧接收到的观测值;
变换公式(9)和公式(10)得出每个包的带噪声观测值:
Y ^ l , 1 = A ^ l , 1 g l , 1 = A l , 1 + n g l , 1 = g l , 1 Y l , 1 + n g l , 1 = Y l , 1 + n g l , 1 - - - ( 11 )
Y ^ l , k r = A ^ l , k r g l , k = A l , k r + n g l , k = g l , k Y l , k r + n g l , k = Y l , k r + n g l , k - - - ( 12 )
其中2≤k≤m,1≤l≤N;
(2)对接收包进行解包得到每帧的带噪声观测值然后运用线性最小均方误差LLSE来估计每帧的去噪观测值得到YLLSE,LLSE估计的观测值可以用如下公式表示:
Y L L S E = Λ y · ( Λ y + Σ ) - 1 · Y ^ . - - - ( 13 )
其中ΛY和Σ分别是观测值和噪声的协方差矩阵;
对于丢包情况,YLLSE可以用如下公式去噪:
Y L L S E = Λ Y ( * s , * s ) · ( Λ Y ( * s , * s ) + Σ ( * s , * s ) ) - 1 · Y ^ * s - - - ( 14 )
其中, Λ Y ( * s , * s ) = E [ Y * s · Y * s T ] , Σ ( * s , * s ) = E [ n * s · n * s T ] , 表示丢掉第s包后的观测值,同理,n*s是n丢掉第s包后的噪声值,
(3)LLSE之后,假设参考帧的估计值为YLLSE(1),非参考帧的估计值为进而利用下列公式(15-16)得到每帧观测值的去噪重构值:
Y ^ 1 = Y L L S E ( 1 ) - - - ( 15 )
Y ^ k = Y L L S E ( k ) r + Y ^ 1 - - - ( 16 )
其中,2≤k≤m;
第五步:CS解码,每个用户对其收到的所有去噪观测值进行CS解码恢复,包括独立解码和帧间解码,以下简单介绍解码算法的步骤:
1、求取不同用户的观测值
(1)设P为用户对应的丢包率,则其接收到的数据包个数为M=P×N;
(2)在解码端,用一个与编码端相同的随机种子来生成观测阵该随机种子是用压缩感知通用的方法来生成,由接收数据包的索引值抽取ΦB中对应的行数,如公式(17),这样,不同的用户得到各自对应的观测矩阵Φu∈RM×N
Φu=(ΦB)*s(17)
其中(ΦB)*s表示ΦB去掉第s行后的观测矩阵;
(3)根据接收数据包的索引值,将得到的M个数据包解包成对应位置上的观测值得到不同用户带噪声的观测值,如公式(18)
Y ^ M × N = Y M × N + n - - - ( 18 )
其中,n表示噪声,YM×N表示不同用户对应编码端传输的观测值;
(4)接收到的观测值先利用公式(14)的LLSE方法降低信道噪声的影响,估计出观测值
2、独立解码
在一个图片组GOP中,设定图片组GOP的第一帧和最后一帧作为关键帧,其余的为非关键帧,首先对关键帧进行独立解码,步骤如下:
(1)通过公式(19)得到图像的初始解:
X ^ ( 0 ) = Φ 0 T Y ^ L - - - ( 19 )
其中,Φ0是由Φu组成的块对角矩阵;
(2)设第一次迭代时为对第i次迭代的进行维纳滤波,以消除图像的块效应;
(3)对于滤波后中的每一个块通过PL算法进行更新,如公式(20)所示:
X ~ j ( i ) = X ^ j ( i ) + Φ u T ( Y ^ L j - Φ u X ^ j ( i ) ) - - - ( 20 )
其中,表示经过LLSE后的第j个块的观测值;表示更新后的第j个图像块;
(4)通过公式(21)对进行离散余弦变换DCT,得到的稀疏表示,
θ ( i ) = Ψ X ~ ( i ) , - - - ( 21 )
其中,表示更新后的图像解,θ(i)在DCT基下的系数,Ψ为DCT变换基;
(5)对θ(i)进行阈值处理,得到更加稀疏的系数,如公式(22)所示:
θ ^ j ( i ) = e j ( i ) , | θ j ( i ) | ≥ τ ( i ) 0 , e l s e - - - ( 22 )
其中rows和cols表示的行数和列数,λ是一个收敛控制常数,是θ(i)的中位数估计值;
(6)通过公式(23)对进行反DCT变换IDCT,得到本次迭代的近似解:
X ‾ ( i ) = Ψ - 1 θ ^ ( i ) ; - - - ( 23 )
(7)对于中的每一个块通过公式(24)进行更新:
X ^ j ( i + 1 ) = X ‾ j ( i ) + Φ u T ( Y ^ L j - Φ u X ‾ j ( i ) ) ; - - - ( 24 )
(8)重复进行步骤(2)—(7),直到得到的解满足精度要求;
对图片组GOP中的关键帧帧进行上述的独立解码,并加128最后得到关键帧独立恢复的重构帧:
X ^ = X ^ + 128 - - - ( 25 )
3、帧间解码
以关键帧独立恢复的重构帧为初始值,只对非关键帧进行如下的帧间解码;
(1)对于1<t≤m/2帧,第t帧以第t-1帧作为参考帧,进行前向运动估计;而m/2+1<t<m帧以第t+1帧作为参考帧,进行后向运动估计;中间帧t=m/2+1以t-1帧和t+1帧作为参考帧,进行双向运动估计,如公式(26)所示,
X ^ r e f = X ^ t - 1 1 < t &le; m / 2 X ^ t - 1 , X ^ t + 1 t = m / 2 + 1 X ^ t + 1 m / 2 + 1 < t < m - - - ( 26 )
(2)当前解码帧以参考帧进行运动估计和运动补偿得到补偿帧对补偿帧基于块观测得到观测值如公式(27)
Y ^ m c = &Phi; u X ^ m c - - - ( 27 )
(3)求出观测值的残差如公式(28)
Y ^ r = Y ^ L j - Y ^ m c - - - ( 28 )
(4)通过公式(29)得到残差图像的初始解:
X ^ r ( 0 ) = &Phi; 0 T Y ^ r - - - ( 29 )
其中,Φ0是由Φu组成的块对角矩阵;
(5)重复进行上述独立解码的步骤(2)—(7),直到得到的解满足精度要求;
对图片组GOP的每个非关键帧进行上述的帧间解码,最后得到重建的残差视频
(6)求取非关键帧的最后重建值为:
X ^ = X ^ m c + X ^ r + 128
本发明的优点及积极效果是:
1、本发明的基于残差分布式压缩感知的无线视频软组播系统,同时采用了基于压缩感知的块编码方法以及采用简单的差值方法来提高传输效率,采用抗丢包的方式进行打包,为了使得能量失真最小化,并在包内进行能量分配,采用了OFDM传输信道绕过了前向纠错编码和量化,利用视频间的相关性,采用了双向运动估计压缩感知技术,实现了渐进的无线视频组播系统。
2、与传统的无线视频广播方法相比,本发明的创新点以及优势体现在以下几个方面:1)采用基于块压缩感知技术,既降低了观测矩阵对存储空间的要求。2)在编码端利用帧间的相关性,我们采用了简单的差值方法,有效的减少了传输能量,提高了传输效率。3)合理的打包方法,每个包都可以独立解码且含有整个图片组GOP视频帧的足够多信息,同时保证每个数据包的重要性是相同的。4)在包内进行了能量分配,可以更好的保护参考帧,使得能量失真最小化。5)采用了OFDM传输信道绕过了前向纠错编码和量化,消除了悬崖效应。6)在解码端为了进一步提高性能,我们采用了帧内独立解码和帧间联合解码,实现了异构用户根据接受包的数目渐进恢复视频序列,最终得到满足要求的视频效果。
3、本发明适合于一些要求“低复杂度编码”的通信设备以及不同信道带宽和对视频有可伸缩要求的应用场合,如移动电视,多媒体共享、无线视频监控。
附图说明
图1是本发明编解码端的系统实施框图;
图2是本发明中任意一帧打包的结构示意图;
图3是本发明的信道结构示意图;
图4是本发明的解码算法程序流程图;
图5是本发明的在不同的SNR下和不同的丢包率下,foreman序列得到的PSNR的对比图,其中:(a)图为SNR等于25dB,(b)图为SNR等于20dB,(c)图为SNR等于15dB;
图6是本发明的在不同的SNR下和不同的丢包率下,coastguard序列得到的PSNR的对比图,其中:(a)图为SNR等于25dB,(b)图为SNR等于20dB,(c)图为SNR等于15dB;
图7是本发明的在不同的SNR下和不同的丢包率下,container序列得到的PSNR的对比图,其中:(a)图为SNR等于25dB,(b)图为SNR等于20dB,(c)图为SNR等于15dB;
图8是本发明的在不同的SNR下和不同的丢包率下,motheranddaughter序列得到的PSNR的对比图,其中:(a)图为SNR等于25dB,(b)图为SNR等于20dB,(c)图为SNR等于15dB;
图9是本发明在信道SNR为25dB,丢包率为0.2条件下,foreman序列和motheranddaughter序列的第30帧恢复图像的对比图;
具体实施方式
我们对本发明提出的基于残差分布式压缩感知的视频软组播方案,做了初步的测试实验。采用四个标准测试序列:foreman序列,container序列,coastguard序列,motheranddaughter序列;各取了前119帧做测试,序列的分辨率都是240×352。采用的图片组GOP大小为8,图像块的大小为8×8。使用dell工作站做仿真,工作站参数为:Intel(R),Xeon(R)Quad-CoreCPU,2.8GHz,4.00GB-DDR3内存。软件平台为MatLab2010,用MatLab语言编程实现了无线视频广播方案。
本发明主要是对读入的视频进行分块,对视频图像块进行块观测,进行差值运算,然后将观测值打包,在包内进行能量分配,通过信道传输到解码端解码得到恢复的视频序列。具体操作为:
第一步:编码
(1)对每一帧每个像素值减去128,并将每一帧分为多个8×8大小的不重叠图像块,因为每个视频序列的分辨率为240×352,所以总共分成(240×352)/(8×8)=1320个块;
(2)生成一个64×64大小的正交高斯随机矩阵作为观测阵ΦB,即ΦB∈R64×64
(3)对每一个图像块进行CS全观测,如公式(1)所示:yj=ΦBxj,我们设定的观测率为1,得到第j个图像块xj的观测值yj,大小为64×1;
(4)将每帧中所有块的观测值组成一个集合Yi,其大小为64×1320;
(5)将非参考帧的观测值减去参考帧的观测值,得到残差观测值,如公式(2),在一个图片组GOP里面,一般我们将第一帧为参考帧,其余各帧为非参考帧;
(6)分别计算参考帧的观测值Y1的协方差和非参考帧的残差观测值的协方差其大小分别是64×64;
第二步:以图片组GOP为单位进行数据打包
(1)从每个图片组GOP每帧每个块中相同位置取一个观测值,参考帧取其初始观测值,非参考帧取其差值观测值,放入一个数据包中。据此,一帧可以生成8×8个数目的数据包,每个包里面都包含了这一个GOP里面所有帧的部分信息;
(2)将数据包中每个观测值进行四舍五入取整,并给每个数据包分配一个索引值 s &SubsetEqual; { 1 , 2 , ... 64 } ;
(3)对每个包内的观测值进行能量分配,因为每个包里面包含了一个GOP为8的里面所有帧的部分信息,包括非参考帧的残差观测值和参考帧的原始观测值,所以为了最小化能量失真,我们在这一个包内对这8帧之间做能量分配,推导出能量失真优化函数,根据公式(11)和(12)可以得到如下公式:
Y ^ l , k = Y ^ l , k r + Y ^ l , 1 = Y l , k r + n g l , k + Y l , 1 + n g l , 1 = Y l , k + n g l , 1 + n g l , k - - - ( 31 )
其中,k=2,3,…,8,l为包的个数,实验中总共有64个包。
依据公式(11),可以得到在每一个包内参考帧的重构失真,用如下公式表示:
D l , 1 = E &lsqb; ( Y ^ l , 1 - Y l , 1 ) 2 &rsqb; = E &lsqb; ( Y l , 1 + n g l , 1 - Y l , 1 ) 2 &rsqb; = &delta; 2 g l , 1 2 - - - ( 32 )
其中,δ2是信道噪声n的方差。同理,我们可以得到在每一个包内全部非参考帧的重构失真,用如下公式表式:
&Sigma; k = 2 8 D l , k = &Sigma; k = 2 8 E &lsqb; ( Y ^ l , k - y l , k ) 2 &rsqb; = &Sigma; k = 2 8 E &lsqb; ( Y l , k + n g l , 1 + n g l , k - Y l , k ) 2 &rsqb; = &delta; 2 &Sigma; k = 2 8 ( 1 g l , 1 + 1 g l , k ) 2 - - - ( 33 )
那么一个包内的总失真Dl为:
D l = D l , 1 + &Sigma; k = 2 8 D l , k = &delta; 2 g l , 1 2 + &delta; 2 &Sigma; k = 2 8 ( 1 g l , 1 + 1 g l , k ) 2 = &delta; 2 &lsqb; 1 g l , 1 2 + &Sigma; k = 2 8 ( 1 g l , 1 + 1 g l , k ) 2 &rsqb; - - - ( 34 )
最优化能量分配的目标是最小化总失真Dl,因此可以用如下公式表示:
minD l = min&delta; 2 &lsqb; 1 g l , 1 2 + &Sigma; k = 2 8 ( 1 g l , 1 + 1 g l , k ) 2 &rsqb;
= &delta; 2 min &lsqb; 1 g l , 1 2 + &Sigma; k = 2 8 ( 1 g l , 1 + 1 g l , k ) 2 &rsqb; - - - ( 35 )
其约束条件为如下公式:
gl,1 2λl,1+gl,2 2λl,2+…+gl,8 2λl,8=λl,1l,2+…+λl,8(36)
其中,λl,1是第1帧观测值矩阵的第l行的方差。运用MatLab中自带的fmincon优化函数,可以得到每个包内每帧对应的伸缩因子gl,k,然后运用公式(3)和公式(4)得到优化后的观测值;
第三步:OFDM传输信道
(1)以前面形成的64个数据包为单位,将每一数据包内的每一对相邻整数值映射为一个符号,形成一个长度为Ns=6336的符号串,并将此符号串经过“串并转化”,转为大小为64×99的矩阵β;
(2)对β进行反傅里叶变换IFFT,对IFFT之后的矩阵每一列插入16×99个保护间隔得到大小为80×99的矩阵ξ,最后再将ξ进行“并串转换”得到长度为7920的OFDM传输符号;
(3)将符号发送进入高斯白噪声AWGN信道;
第四步:接收端的去噪重构
(1)接收端的每个用户接受到不同数目的有噪声数据包,即带噪声的OFDM符号,将每个包内数据经过“串并转换”,傅里叶变换FFT,去除保护间隔,“并串转换”,每个用户得到不同数目的观测值,此时观测值具有一定程度的噪声;
(2)对给定的信道噪声条件,设P为不同用户的丢包率,则不同用户接受到的数据包个数为M=P×64,本试验P的取值为:0,0.1,0.2,0.3,0.4,0.5,0.6,然后对收到的包运用公式(9)和公式(10)进行简单的除法运算得出优化前重构帧的观测值;
(3)对运算后的包进行解包,然后运用线性最小均方误差LLSE来减少噪声的影响,LLSE估计的观测值可以用公式(13)来表示,对于丢包现象,我们可以用公式(14)来估计观测值;
(4)恢复重构帧的观测值,因为对于非参考帧,我们传输的是差值观测值,所以在进行解码之前,我们需要恢复其本身观测值,直接把得到的非参考帧的差值观测值加上得到的参考帧的观测值,即运用公式(15)和公式(16)得到;
(5)每个用户对其收到的所有观测值进行解码CS恢复,我们运用MC-BCS-SPL进行CS的重构,它运用了运动补偿和运动估计的方法,得到的视频质量更好。最后我们需对恢复的每帧每个像素值加上128,即可得到我们最终重构的视频帧。
在实验中,我们测试了在相同的条件下,本发明方案和SoftCast、陈华的DCS-CAST进行的对比,包括视频序列的平均PSNR。图6、图7、图8、图9给出了在相同信道,相同丢包率的条件下,本发明方法和SoftCast、陈华的DCS-CAST在四个测试序列下的对比图。因为本方案在编码端运用了残差方法,使得其能更好的利用帧间的相关性,而且编码方法简单,同时为了更好的保护到参考帧的观测值,我们对每个包内进行了能量分配,最后在解码端我们也运用了运动估计和运动补偿的方法来进行恢复,使得性能有了进一步提高,所以从图中可以看出,随着丢包率增加,我们的方案平滑的下降,而且PSNR比SoftCast高2~3dB,因为我们在编码端运用残差方法,性能上比陈华的DCS-CAST高1~2dB。
在不丢包的情况下,本发明的方案不如SoftCast恢复的效果好。因为SoftCast在编码端进行了DCT编码,能量分配,哈达码变换产生具有弹性的实数值,而我们在编码端仅仅是做了块观测得到观测值。随着丢包率的增加,我们的优势逐渐体现出来,本发明方案不同用户恢复的视频序列下降平滑,因为本发明的数据包和观测值都具有同等重要性,而且每个观测值包含了整帧的信息。而SoftCast在从无丢包到丢包的情况下,下降很剧烈。然而在组播系统中,每个用户由于接受的实际能力和传输信道的原因,并不能接到所有的数据包。因此本发明可以根据信道带宽的变化,实现不同用户根据接到包的数目来渐进恢复视频序列,更加适合组播。

Claims (1)

1.一种基于残差分布式压缩感知的视频软组播方法,其特征在于可以根据信道带宽的变化,实现不同用户根据接到包的数目来渐进恢复视频序列,更加适合组播,操作步骤如下:
第一步:编码
(1)对每一帧每个像素值减去128,并将每一帧分为多个B×B大小的不重叠图像块,B为正整数;
(2)生成一个B2×B2大小的正交高斯随机矩阵作为观测阵ΦB,即 &Phi; B &Element; R B 2 &times; B 2 ;
(3)对每一个图像块进行CS全观测,如公式(1):
yi=ΦBxj(1)
其中,1≤j≤MB,MB是每帧图像包含的全部块数,ΦB是第j个图像块xj的观测矩阵,设定的观测率为1,yj是第j个图像块xj的观测值;
(4)将每帧中所有块的观测值组成一个集合Yi,其中1≤i≤m,m为正整数,m是一个图片组GOP的大小,Yi是第i个视频帧的观测值;
(5)将非参考帧的观测值减去参考帧的观测值,得到残差观测值,如公式(2):
Y k r = Y k - Y 1 - - - ( 2 )
其中,2≤k≤m,是非参考帧的残差观测值;
(6)计算参考帧的观测值Y1的协方差并计算非参考帧的残差观测值的协方差 &Lambda; Y k r = E &lsqb; Y k r &CenterDot; Y k r T &rsqb; ;
第二步:以图片组GOP为单位进行数据打包:
(1)从每个图片组GOP每帧每个块中取一个观测值,参考帧取其初始观测值,非参考帧取其残差观测值,然后放入一个数据包中,据此,一个图片组GOP可以生成N=B×B个数目的数据包;
(2)将数据包中每个观测值进行四舍五入取整,并给每个数据包分配一个索引值 s &SubsetEqual; { 1 , 2 , ... N } , N为正整数;
(3)为了更好的保护参考帧,我们需要对每个包内的参考帧观测值和非参考帧的残差观测值进行能量分配,假设Yl,k是第l包中第k帧的全部观测值,则gl,k为其对应的能量分配的伸缩因子,如下公式所示:
Al,1=gl,1Yl,1(3)
A l , k r = g l , i Y l , k r - - - ( 4 )
Y l , k r = Y l , k - Y l , 1 - - - ( 5 )
其中,2≤k≤m,1≤l≤N,Al,1分别为参考帧和非参考帧能量分配后的观测值,其中伸缩因子gl,k是由能量失真优化得到的,
首先,推导得出一个包内总能量失真函数:
D l = &delta; 2 &lsqb; 1 g l , 1 2 + &Sigma; k = 2 m ( 1 g l , 1 + 1 g l , k ) 2 &rsqb; , - - - ( 6 )
而最优化能量分配的目标是最小化总失真Dl,因此可以用如下公式表示:
minD l = min&delta; 2 &lsqb; 1 g l , 1 2 + &Sigma; k = 2 m ( 1 g l , 1 + 1 g l , k ) 2 &rsqb; = &delta; 2 min &lsqb; 1 g l , 1 2 + &Sigma; k = 2 m ( 1 g l , 1 + 1 g l , k ) 2 &rsqb; - - - ( 7 )
其约束条件为:
gl,1 2λl,1+gl,2 2λl,2+…+gl,m 2λl,m=λl,1l,2+…+λl,m(8)
其中,λl,m是第m帧观测值矩阵第l行的方差;
对公式(7)和(8)描述的优化问题,运用Matlab编程语言里面自带的fmincon函数来求解这个优化函数;
第三步:OFDM传输信道,包括如下步骤:
(1)以数据包为单位,将每一数据包内的每一对相邻整数值映射为一个符号,形成一个长度为Ns的符号串,并将此符号串经过“串并转化”,转为大小为的矩阵β,表示向上取整,NC表示子信道的个数,如果NS/NC不是整数,将矩阵β的最后一列进行补零填充;
(2)对β进行反傅里叶变换IFFT,对IFFT之后的矩阵前端插入大小为的保护间隔得到ξ,最后再将ξ进行“并串转换”得到长度为的OFDM传输符号symbol;
(3)将symbol发送进入高斯白噪声信道AWGN;
第四步:接收端的去噪重构
(1)接收端的每个用户接受到不同数目的有噪声数据包,即带噪声的OFDM符号,将每个包内数据经过“串并转换”,傅里叶变换FFT,去除保护间隔,“并串转换”,
每个用户得到不同数目的观测值,此时观测值具有一定程度的噪声,假设n为信道噪声,那么接收到的符号可以用以下公式表示:
A ^ l , 1 = A l , 1 + n = g l , 1 Y l , 1 + n - - - ( 9 )
A ^ l , k r = A l , k r + n = g l , k Y l , k r + n - - - ( 10 )
其中,2≤k≤m,1≤l≤N,分别为参考帧和非参考帧接收到的观测值,
变换公式(9)和公式(10)得出每个包的带噪声观测值:
Y ^ l , 1 = A ^ l , 1 g l , 1 = A l , 1 + n g l , 1 = g l , 1 Y l , 1 + n g l , 1 = Y l , 1 + n g l , 1 - - - ( 11 )
Y ^ l , k r = A ^ l , k r g l , k = A l , k r + n g l , k = g l , k Y l , k r + n g l , k = Y l , k r + n g l , k - - - ( 12 )
其中2≤k≤m,1≤l≤N;
(2)对接收包进行解包得到每帧的带噪声观测值然后运用线性最小均方误差LLSE来估计每帧的去噪观测值得到YLLSE,LLSE估计的观测值可以用如下公式表示:
Y L L S E = &Lambda; y &CenterDot; ( &Lambda; y + &Sigma; ) - 1 &CenterDot; Y ^ . - - - ( 13 )
其中ΛY和Σ分别是观测值和噪声的协方差矩阵;
对于丢包情况,YLLSE可以用如下公式去噪:
Y L L S E = &Lambda; Y ( * s , * s ) &CenterDot; ( &Lambda; Y ( * s , * s ) + &Sigma; ( * s , * s ) ) - 1 &CenterDot; Y ^ * s - - - ( 14 )
其中, &Lambda; Y ( * s , * s ) = E &lsqb; Y * s &CenterDot; Y * s T &rsqb; , &Sigma; ( * s , * s ) = E &lsqb; n * s &CenterDot; n * s T &rsqb; , 表示丢掉第s包后的观测值,同理,n*s是n丢掉第s包后的噪声值,
(3)LLSE之后,假设参考帧的估计值为YLLSE(1),非参考帧的估计值为进而利用下列公式(15-16)得到每帧观测值的去噪重构值:
Y ^ 1 = Y L L S E ( 1 ) - - - ( 15 )
Y ^ k = Y L L S E r + Y ^ 1 - - - ( 16 )
其中,2≤k≤m;
第五步:CS解码,每个用户对其收到的所有去噪观测值进行CS解码恢复,包括独立解码和帧间解码,以下简单介绍解码算法的步骤:
1、求取不同用户的观测值:
(1)设P为用户对应的丢包率,则其接收到的数据包个数为M=P×N;
(2)在解码端,用一个与编码端相同的随机种子来生成观测阵该随机种子是用压缩感知通用的方法来生成,由接收数据包的索引值抽取ΦB中对应的行数,如公式(17),这样,不同的用户得到各自对应的观测矩阵Φu∈RM×N
Φu=(ΦB)*s(17)
其中(ΦB)*s表示ΦB去掉第s行后的观测矩阵;
(3)根据接收数据包的索引值,将得到的M个数据包解包成对应位置上的观测值得到不同用户带噪声的观测值,如公式(18)
Y ^ M &times; N = Y M &times; N + n - - - ( 18 )
其中,n表示噪声,YM×N表示不同用户对应编码端传输的观测值;
(4)接收到的观测值先利用公式(14)的LLSE方法降低信道噪声的影响,估计出观测值
2、独立解码
在一个图片组GOP中,设定图片组GOP的第一帧和最后一帧作为关键帧,其余的为非关键帧,首先对关键帧进行独立解码,步骤如下:
(1)通过公式(19)得到图像的初始解:
X ^ ( 0 ) = &Phi; 0 T Y ^ L - - - ( 19 )
其中,Φ0是由Φu组成的块对角矩阵;
(2)设第一次迭代时为对第i次迭代的进行维纳滤波,以消除图像的块效应;
(3)对于滤波后中的每一个块通过PL算法进行更新,如公式(20)所示:
X ~ j ( i ) = X ^ j ( i ) + &Phi; u T ( Y ^ L j - &Phi; u X ^ j ( i ) ) - - - ( 20 )
其中,表示经过LLSE后的第j个块的观测值;表示更新后的第j个图像块;
(4)通过公式(21)对进行离散余弦变换DCT,得到的稀疏表示,
&theta; ( i ) = &Psi; X ~ ( i ) - - - ( 21 )
其中,表示更新后的图像解,θ(i)在DCT基下的系数,Ψ为DCT变换基;
(5)对θ(i)进行阈值处理,得到更加稀疏的系数,如公式(22)所示:
&theta; ^ j ( i ) = { &theta; j ( i ) | &theta; j ( i ) | &GreaterEqual; &tau; ( i ) 0 e l s e - - - ( 22 )
其中rows和cols表示的行数和列数,λ是一个收敛控制常数,是θ(i)的中位数估计值;
(6)通过公式(23)对进行反DCT变换IDCT,得到本次迭代的近似解:
X &OverBar; ( i ) = &Psi; - 1 &theta; ^ ( i ) - - - ( 23 )
(7)对于中的每一个块通过公式(24)进行更新:
X ^ j ( i + 1 ) = X &OverBar; j ( i ) + &Phi; u T ( Y ^ L j - &Phi; u X &OverBar; j ( i ) ) - - - ( 24 )
(8)重复进行步骤(2)—(7),直到得到的解满足精度要求;
对图片组GOP中的关键帧帧进行上述的独立解码,并加128最后得到关键帧独立恢复的重构帧:
X ^ = X ^ + 128 - - - ( 25 )
3、帧间解码:
以关键帧独立恢复的重构帧为初始值,只对非关键帧进行如下的帧间解码;
(1)对于1<t≤m/2帧,第t帧以第t-1帧作为参考帧,进行前向运动估计;而m/2+1<t<m帧以第t+1帧作为参考帧,进行后向运动估计;中间帧t=m/2+1以t-1帧和t+1帧作为参考帧,进行双向运动估计,如公式(26)所示,
X ^ r e f = { X ^ t - 1 1 < t &le; m / 2 X ^ t - 1 , X ^ t + 1 t = m / 2 + 1 X ^ t + 1 m / 2 + 1 < t < m - - - ( 26 )
(2)当前解码帧以参考帧进行运动估计和运动补偿得到补偿帧对补偿帧基于块观测得到观测值如公式(27)
Y ^ m c = &Phi; u X ^ m c - - - ( 27 )
(3)求出观测值的残差如公式(28)
Y ^ r = Y ^ L j - Y ^ m c - - - ( 28 )
(4)通过公式(29)得到残差图像的初始解:
X ^ r ( 0 ) = &Phi; 0 T Y ^ r - - - ( 29 )
其中,Φ0是由Φu组成的块对角矩阵;
(5)重复进行上述独立解码的步骤(2)—(7),直到得到的解满足精度要求,
对图片组GOP的每个非关键帧进行上述的帧间解码,最后得到重建的残差视频
(6)求取非关键帧的最后重建值为:
X ^ = X ^ m c + X ^ r + 128 - - - ( 30 ) .
CN201510660508.9A 2015-10-14 2015-10-14 基于残差分布式压缩感知的视频软组播方法 Active CN105357536B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510660508.9A CN105357536B (zh) 2015-10-14 2015-10-14 基于残差分布式压缩感知的视频软组播方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510660508.9A CN105357536B (zh) 2015-10-14 2015-10-14 基于残差分布式压缩感知的视频软组播方法

Publications (2)

Publication Number Publication Date
CN105357536A true CN105357536A (zh) 2016-02-24
CN105357536B CN105357536B (zh) 2018-07-06

Family

ID=55333378

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510660508.9A Active CN105357536B (zh) 2015-10-14 2015-10-14 基于残差分布式压缩感知的视频软组播方法

Country Status (1)

Country Link
CN (1) CN105357536B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105898222A (zh) * 2016-04-26 2016-08-24 国家电网公司 一种图像采集方法及图像采集系统
CN106412596A (zh) * 2016-10-12 2017-02-15 北京大学 一种基于梯度采样信息的视频图像传输方案
CN107360426A (zh) * 2017-07-13 2017-11-17 福州大学 一种基于压缩感知的视频序列重构方法
CN107920250A (zh) * 2017-11-15 2018-04-17 西安交通大学 一种压缩感知图像编码传输方法
CN108235020A (zh) * 2018-01-05 2018-06-29 东华大学 一种面向量化分块压缩感知的螺旋式逐块测量值预测方法
CN108810651A (zh) * 2018-05-09 2018-11-13 太原科技大学 基于深度压缩感知网络的无线视频组播方法
CN111107375A (zh) * 2019-12-06 2020-05-05 北京邮电大学 一种视频编码方法、解码方法及装置
CN113810728A (zh) * 2021-08-31 2021-12-17 深圳力维智联技术有限公司 直播数据传输控制方法、装置及直播设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102630011A (zh) * 2012-03-31 2012-08-08 浙江师范大学 一种视频传感器网络中的压缩感知编解码方法及系统
CN103037223A (zh) * 2012-12-14 2013-04-10 太原科技大学 一种基于块压缩感知的秘密图像共享方法
CN103347188A (zh) * 2013-07-24 2013-10-09 南京邮电大学 一种分布式视频编码非关键帧压缩感知编解码方法
CN103985100A (zh) * 2014-06-04 2014-08-13 北京工商大学 一种基于自适应观测组合优化的分块压缩感知方法
US20140232591A1 (en) * 2013-02-19 2014-08-21 Mitsubishi Electric Research Laboratories, Inc. System and Method for Multiple Spotlight Synthetic Radar Imaging Using Random Beam Steering
US20140337017A1 (en) * 2013-05-09 2014-11-13 Mitsubishi Electric Research Laboratories, Inc. Method for Converting Speech Using Sparsity Constraints
CN104767587A (zh) * 2015-03-10 2015-07-08 重庆邮电大学 基于ofdm系统下联合信道编译码的压缩感知信道估计方法
CN104822063A (zh) * 2015-04-16 2015-08-05 长沙理工大学 一种基于字典学习残差重建的压缩感知视频重建方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102630011A (zh) * 2012-03-31 2012-08-08 浙江师范大学 一种视频传感器网络中的压缩感知编解码方法及系统
CN103037223A (zh) * 2012-12-14 2013-04-10 太原科技大学 一种基于块压缩感知的秘密图像共享方法
US20140232591A1 (en) * 2013-02-19 2014-08-21 Mitsubishi Electric Research Laboratories, Inc. System and Method for Multiple Spotlight Synthetic Radar Imaging Using Random Beam Steering
US20140337017A1 (en) * 2013-05-09 2014-11-13 Mitsubishi Electric Research Laboratories, Inc. Method for Converting Speech Using Sparsity Constraints
CN103347188A (zh) * 2013-07-24 2013-10-09 南京邮电大学 一种分布式视频编码非关键帧压缩感知编解码方法
CN103985100A (zh) * 2014-06-04 2014-08-13 北京工商大学 一种基于自适应观测组合优化的分块压缩感知方法
CN104767587A (zh) * 2015-03-10 2015-07-08 重庆邮电大学 基于ofdm系统下联合信道编译码的压缩感知信道估计方法
CN104822063A (zh) * 2015-04-16 2015-08-05 长沙理工大学 一种基于字典学习残差重建的压缩感知视频重建方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
ANHONG WANG ET AL: "Directional block compressed sensing for image coding", 《IEEE XPLORE》 *
ANHONG WANG;BING ZENG;HUA CHE: "Wireless multicasting of video signals based on distributed compressed sensing", 《SIGNAL PROCESSING: IMAGE COMMUNICATION》 *
吴庆典;王安红: "一种基于小波四叉树的无线视频组播方案", 《太原科技大学学报》 *
邓世洋;王安红: "残差分布式视频压缩感知", 《计算机应用研究》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105898222B (zh) * 2016-04-26 2018-12-18 国家电网公司 一种图像采集方法及图像采集系统
CN105898222A (zh) * 2016-04-26 2016-08-24 国家电网公司 一种图像采集方法及图像采集系统
CN106412596A (zh) * 2016-10-12 2017-02-15 北京大学 一种基于梯度采样信息的视频图像传输方案
CN106412596B (zh) * 2016-10-12 2019-04-09 北京大学 一种基于梯度采样信息的视频图像传输方案
CN107360426A (zh) * 2017-07-13 2017-11-17 福州大学 一种基于压缩感知的视频序列重构方法
CN107920250A (zh) * 2017-11-15 2018-04-17 西安交通大学 一种压缩感知图像编码传输方法
CN107920250B (zh) * 2017-11-15 2020-01-10 西安交通大学 一种压缩感知图像编码传输方法
CN108235020A (zh) * 2018-01-05 2018-06-29 东华大学 一种面向量化分块压缩感知的螺旋式逐块测量值预测方法
CN108235020B (zh) * 2018-01-05 2021-07-02 东华大学 一种面向量化分块压缩感知的螺旋式逐块测量值预测方法
CN108810651A (zh) * 2018-05-09 2018-11-13 太原科技大学 基于深度压缩感知网络的无线视频组播方法
CN108810651B (zh) * 2018-05-09 2020-11-03 太原科技大学 基于深度压缩感知网络的无线视频组播方法
CN111107375A (zh) * 2019-12-06 2020-05-05 北京邮电大学 一种视频编码方法、解码方法及装置
CN113810728A (zh) * 2021-08-31 2021-12-17 深圳力维智联技术有限公司 直播数据传输控制方法、装置及直播设备
CN113810728B (zh) * 2021-08-31 2023-09-26 深圳力维智联技术有限公司 直播数据传输控制方法、装置及直播设备

Also Published As

Publication number Publication date
CN105357536B (zh) 2018-07-06

Similar Documents

Publication Publication Date Title
CN105357536A (zh) 基于残差分布式压缩感知的视频软组播方法
CN101272495B (zh) 用于传输基于分组的图像帧的方法和装置
CN104333762B (zh) 一种视频解码方法
CN100459717C (zh) 基于h.264的压缩视频传输误码消除方法
CN102630011A (zh) 一种视频传感器网络中的压缩感知编解码方法及系统
CN103327326A (zh) 基于压缩感知和信道自适应的sar图像传输方法
CN105120276A (zh) 自适应Motion JPEG编码方法和系统
Bao et al. MDVSC--Wireless Model Division Video Semantic Communication
CN104363461B (zh) 视频帧的错误隐藏方法及应用其的视频解码方法
CN100588262C (zh) 信源信道联合编码中的信道码码率分配方法
CN111726635B (zh) 一种基于滑窗bats码的低时延图像渐进传输方法
CN106657961A (zh) 立体视频的混合数字-模拟编码
CN104219530A (zh) 基于预测模式拷贝的hevc多描述编码
CN102316315B (zh) 一种实时视频传输方法
CN104683814B (zh) 面向视觉感官质量的图像传输方法和装置
CN103873873B (zh) 一种非可靠信道下的图像编解码方法
CN103391162B (zh) 基于Raptor码的多媒体数据非均等差错保护方法
CN105049870B (zh) 一种基于稀疏度估计的分布式视频压缩感知快速重建方法
CN101986713B (zh) 基于视点合成的多视点容错编码框架
Blatsas et al. A performance study of LT based unequal error protection for 3D video streaming
CN103369325B (zh) 一种适用于无线视频传感网的低复杂度视频压缩传输方法
CN102223533B (zh) 一种信号编解码方法及装置
CN105376587B (zh) 基于rcm编码矩阵权重不等分配的视频传输方法
CN107566831B (zh) 基于随机偏移量化多描述编码的自适应编解码方法及系统
CN107241122B (zh) 一种基于电力线的视频信号传输方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant