基于压缩感知多视点分布式视频编码及帧排列装置及方法
【专利摘要】本发明属于压缩感知和分布式视频编码【技术领域】。为提供一种适用于非直线分布的多视点帧排列方法,提高视点间边信息质量,进而进一步提高解码的视频帧质量,为此,本发明采取的技术方案是,基于压缩感知的多视点分布式视频编码及帧排列方法,包括:编码器部分和解码器部分,其中编码器包括关键视点和非关键视点的编码步骤:首先,视点间采用的是关键视点、关键视点、非关键视点如此的排列,在视点内部的帧排列是关键帧与非关键帧间隔排列。第二,将帧分为2类,一类是关键视点与非关键视点的关键帧,关键帧是根据压缩感知理论进行编码的,非关键帧采用分布式视频编码方法对其进行编码。本发明主要应用于压缩感知和分布式视频编码。
【专利说明】基于压缩感知多视点分布式视频编码及帧排列装置及方法
【技术领域】
[0001]本发明属于压缩感知和分布式视频编码【技术领域】,尤其涉及一种基于压缩感知的多视点分布式视频编码及帧排列方法。
【背景技术】
[0002]传统的视频编码技术,无论是H.26X系列还是MPEG系列,编码端都通过帧间预测和DCT变换去除时间和空间冗余,以获得高压缩效率,这使得整个系统对编码器的计算能力和内存容量的要求远高于解码器。
[0003]目前,大多数多视点视频编码(MVC)方法都是在H.264/AVC标准的基础上进行扩展形成的。MVC往往比单视点视频信号编码具有更加复杂的预测编码结构,其编码算法复杂度也远远大于单视点视频编码算法。所以这类基于预测的MVC方法适合于立体电视、视频点播等具有一对多拓扑结构的应用场合。而在一些编码端资源受限的视频应用领域中,发端设备要求低复杂度、低功耗的编码,接收端可以进行海量的数据存储和高复杂度的计算。所以在这些场合中,需要寻找新的高效的编码方法来对多视点视频进行压缩和传输。
【发明内容】
[0004]本发明旨在克服现有技术的不足,提供一种适用于非直线分布的多视点帧排列方法,提高视点间边信息质量,进而进一步提高解码的视频帧质量,为达到上述目的,本发明采取的技术方案是,基于压缩感知的多视点分布式视频编码及帧排列方法,包括:编码器部分和解码器部分,其中编码器包括关键视点和非关键视点的编码步骤:首先,视点间采用的是关键视点、关键视点、非关键视点如此的排列,在视点内部的帧排列是关键帧与非关键帧间隔排列。第二,根据解码端对视频质量、视频实时性的要求,将帧分为2类,一类是关键视点与非关键视点的关键帧,关键帧是根据压缩感知理论进行编码的,首先通过选择适当的稀疏基将NXN维原始信号变为NXN维多O的稀疏信号,再经过观测矩阵将NXN维信号降到NXM维,最后编码器将关键帧的稀疏信号与经过观测矩阵降维的信号发送到解码器部分;另一类是关键视点与非关键视点的非关键帧,非关键帧采用分布式视频编码方法对其进行编码:首先,将每一个非关键帧进行基于块的离散余弦变换并对变换系数做量化处理;接着对这些量化后的系数按照不同频段重新组织安排,即将每一个块中的相同的频率系数放在一起;然后将系数编码成相应的比特,并按照比特面排序后,送到信道编码器,由信道编码器产生校验比特:
[0005]S=XHt
[0006]式中,X表示非关键帧,H为校验矩阵,S为X的校验比特,T为H校验矩阵的转置最后,编码器部分将校验比特发送到解码部分。
[0007]解码器部分分为两部分:第一部分,首先是第一个关键视点的关键帧经过压缩感知的重构算法对关键帧解码;第二,第二个关键视点的关键帧经过压缩感知的重构算法对关键帧解码;第三,根据已经解码的关键视点的关键帧,通过视差矢量外推法外推获得非关键视点中非关键帧的视点间边信息。第二部分,首先将非关键视点的关键帧通过压缩感知的重构算法解码,然后非关键帧通过相邻的已解码关键帧进行双向运动补偿内插法,内插得到非关键视点中非关键帧的时间边信息。前两部分解码后,通过线性融合算法进行时间边信息与视点间边信息的融合,得到最终的边信息。将边信息和原始非关键帧的差异看作是虚拟信道中的相关噪声,利用Laplacian模型能够很好地估计残差的分布;接下来采用和编码端相同的变换方法对边信息依次进行反量化,得到非关键帧变换系数的估值;利用虚拟噪声模型计算出信息比特送入信道解码器,信道解码器根据编码端传过来的校验比特对边信息进行校验;然后根据虚拟信道模型和边信息系数实现非关键帧重构,最后通过反离散余弦变换得到非关键帧,和已解码关键帧一起通过多路复用得到最终解码视频流。
[0008]压缩感知具体为:当信号具有稀疏性或者可压缩性的时候,通过线性投影,得到远小于奈奎斯特采样定理所要求的采样点,接收端通过凸优化或者迭代算法等高精度的重构出原始信号。
[0009]视差矢量外推法是通过已经解码的前两个关键视点,根据视点间的几何关系及图像匹配出视差矢量MV,然后根据3个视点的几何关系,由前一视点外推得到当前视点的视点间边信息,定义I [n,t, x, y]表示第η个视点在t时刻所在帧中(x,y)位置处的像素值,则第η个视点的像素值可以描述为:
[0010]I [n, t, X,y]=I [n-1, t, x+mvx, y+mvy],其中 MV= (mvx, mvy)为视差矢量,mvx 表示视差矢量MV的横向分量,mvy表示视差矢量MV的纵向分量,X表示横坐标,y表示纵坐标,n-Ι表示第n-Ι个视点
[0011]双向运动矢 量内插法是通过当前帧的前一已解码帧和后一已解码帧,通过这两帧的运动匹配,分别获得前向运动矢量和后向运动矢量,然后根据如下公式内插获得当前帧的时间边信息:
[0012]l[c, x,y\ = H 2(I[C-1,X + mvfx.j + mvf J + J[c + I,x-- mvbx, y — mvby J)
[0013]其中,I[c,x,y]表示第c帧中(x,y)位置处的像素值;MV> =(ιην,Λ.ιην?%), =(WiVCy)分别表示前向运动矢量、后向运动矢量表示
前向运动矢量MVf的横向分量,腳f:.表示前向运动矢量MVf的纵向分量;Itivbx表示后向运动
矢量MVb的横向分量,表示后向运动矢量MVb的纵向分量;x表示横坐标,y表示纵坐标。
[0014]基于压缩感知多视点分布式视频编码及帧排列装置,由若干摄像机,视频压缩模块,视频解压模块构成,摄像机、视频压缩模块、视频解压模块依次相连,η个数字摄像头通过复用32条数据线连接至视频压缩模块,视频压缩模块外接一个Flash或者SRAM来存取数据;视频压缩模块通过PCI总线连接至上位机,视频压缩模块由DSP构成,视频解压模块设置在计算机内。
[0015]DSP模块进一步具体包括:根据压缩感知理论通过选择字典学习方法获得稀疏矩阵的模块,该模块经过稀疏基变换将NXN维原始信号变为NXN维O多非O少的的稀疏信号;降维模块,用于经过结构化的观测矩阵将NXN维信号降到NXM维;然后通过Flash或者SRAM存储视频信号和经过视频压缩模块获得的稀疏矩阵以及观测矩阵。
[0016]本发明的技术特点及效果:
[0017]本发明通过帧排列方法,运动矢量内插法获得的时间边信息与视差矢量外推法获得的视点间边信息融合,比较之前的棋盘式排列的多视点分布式视频编码相比,不仅保证了视频帧的重构质量,而且还提高了对多视点排布情况的适用性。
【专利附图】
【附图说明】
[0018]图1本发明的基于压缩感知的多视点分布式视频编码系统的原理结构图。
[0019]图2本发明的基于压缩感知的多视点分布式视频编码的帧排列图。
[0020]图3本发明硬件结构整体框图。
【具体实施方式】
[0021]现有的分布式多视点视频编码的帧排列方式大多采用棋盘型,即关键帧(K帧)和非关键帧(WZ帧)间隔排布,在这种排列方式中,视点间边信息与时间边信息分别采用视差矢量内插法和运动补偿内插法。但是这种排列方式仅适用于多个视点分布在同一直线的情况下,当多个视点分布在非直线上时,采用这种帧排列的多视点分布式视频编码系统,视点间边信息质量较低,导致解码的视频帧质量比较低,急需一种适用于非直线分布的多视点帧排列方法。
[0022]本发明采用的技术方案是,一种基于压缩感知的多视点分布式视频编码系统,包括相互通信连接的编码器和解码器,其中编码器包括关键视点和非关键视点的编码。首先,视点间采用的是关键视点、关键视点、非关键视点如此的排列,在视点内部的帧排布是关键帧与非关键帧间隔排列。第二,根据解码端对视频质量、视频实时性的要求,将帧分为2类,一类是关键视点与非关键视点的关键帧,关键帧是根据压缩感知理论进行编码的,首先通过选择适当的稀疏基将NXN维原始信号变为NXN维多O的稀疏信号,再经过观测矩阵将NXN维信号降到NXM维,最后编码器将关键帧的稀疏信号与经过观测矩阵降维的信号发送到解码器部分;另一类是关键视点与非关键视点的非关键帧,非关键帧采用分布式视频编码方法对其进行编码:首先,将每一个非关键帧进行基于块的离散余弦变换并对变换系数做量化处理;接着对这些量化后的系数按照不同频段重新组织安排,即将每一个块中的相同的频率系数放在一起;然后将系数编码成相应的比特,并按照比特面排序后,送到信道编码器,根据信道编码器产生校验比特;最后,编码器部分将校验比特发送到解码部分。解码器部分分为两部分:第一部分,首先是第一个关键视点的关键帧经过压缩感知的重构算法对关键帧解码;第二,第二个关键视点的关键帧经过压缩感知的重构算法对关键帧解码;第三,根据已经解码的关键视点的关键帧,通过视差矢量外推法外推获得非关键视点中非关键帧的视点间边信息。第二部分,首先将非关键视点的关键帧通过压缩感知的重构算法解码,然后非关键帧通过相邻的已解码关键帧进行双向运动补偿内插法,内插得到非关键视点中非关键帧的时间边信息。前两部分解码后,通过线性融合算法进行时间边信息与视点间边信息的融合,得到最终的边信息。将边信息和原始非关键帧的差异看作是虚拟信道中的相关噪声,利用Laplacian模型能够很好地估计残差的分布;接下来采用和编码端相同的变换方法对边信息依次进行反量化,得到非关键帧变换系数的估值;利用虚拟噪声模型计算出信息比特送入信道解码器,信道解码器根据编码端传过来的校验比特对边信息进行校验;然后根据虚拟信道模型和边信息系数实现非关键帧重构,最后通过反离散余弦变换得到非关键帧,和已解码关键帧一起通过多路复用得到最终解码视频流。[0023]下面结合附图对本发明作更详细的说明。
[0024]多视点分布式视频编码技术对视频帧独立编码、联合解码,在解码端去除视点间的空间冗余、相邻帧的时间冗余,从而将复杂度从编码端转移到解码端。与传统的视频编码标准相比,多视点分布式视频编码方案具有巾贞内编码(Intraframe Coding,即I巾贞)的编码复杂度,在理论上具有帧间编码(Interframe Coding,即P帧和B帧)的压缩效率。多视点分布式视频编码有很大的应用前景。首先,多视点编码系统相对于单视点视频编码系统,可以提供更多的视频场景信息。其次,分布式视频编码的编码端复杂度低,解决了编码端资源受限的问题,适用于无线视频监控系统、视频传感器网络等应用系统。第三,解码器的边信息生成由解码端决定,不受编码端的影响,具有很大的灵活性。且由于解码端对边信息的具体数值没有要求,可以有效防止预测失配带来的解码错误,可以防止错误传播。
[0025]压缩感知也称压缩采样,它的基本理论是:当信号具有稀疏性或者可压缩性的时候,可以通过线性投影,得到远小于奈奎斯特采样定理所要求的采样点,接收端通过凸优化或者迭代算法等高精度的重构出原始信号。因此,由于将采样和压缩过程同时进行,压缩感知很大程度上降低了信号的维数和编码的复杂度,而在解码端可以通过复杂的重构算法得到重建信号。这非常适合与分布式视频编码相结合。
[0026]基于压缩感知的多视点分布式视频编码中的帧排列方法不同,导致了非关键帧边信息生成方法的不同,从而影响了解码端的重构质量以及系统的时延,本发明中的帧排列方法,视点间边信息采用视差矢量外推法,既可以满足多个视点分布于同一直线下,又可以满足多个视点分布在非直线的情况下。视点内部边信息通过运动补偿内插法获得,使得边信息在前向、后向两个方向获得,提高视频帧的重构效果。
[0027]众所周知,视频信号无论在空域还是频域都表现出显著的稀疏性,为了充分利用视频信号内在的稀疏性,有效提高算法的性能,本发明将压缩感知与分布式视频编码相结合,提出了基于压缩感知的多视点分布式视频编码系统。本方法融合了压缩感知和分布式视频编码的优势,不仅降低了编码端的复杂度,同时还提高了压缩效率和重建视频质量。视差矢量外推法既可以满足多视点分布在同一条直线上,又可以满足多视点分布在非直线上,具有较高的多视点分布适应性。运动矢量内插法可以充分利用当前帧的前后两个方向的已解码帧重构其边信息,提高了视频帧解码的质量,为此提出了基于压缩感知的多视点分布式视频编码帧排列方法。本方法融合了视差矢量外推法和运动矢量内插法的优势,不仅适用于非直线多视点分布,还提高了视频帧的解码质量。
[0028]如图1所示,所述的基于压缩感知的多视点分布式视频编码系统,包括相互通信连接的编码器和解码器,其中编码器包括关键视点和非关键视点的编码。首先,视点间采用的是关键视点、关键视点、非关键视点如此的排列,在视点内部的帧排列是关键帧与非关键帧间隔排列。第二,根据解码端对视频质量、视频实时性的要求,将帧分为2类,一类是关键视点与非关键视点的关键帧,关键帧是根据压缩感知理论进行编码的,首先通过选择适当的稀疏基将NXN维原始信号变为NXN维多O的稀疏信号,再经过观测矩阵将NXN维信号降到NXM维,最后编码器将关键帧的稀疏信号与经过观测矩阵降维的信号发送到解码器部分;另一类是关键视点与非关键视点的非关键帧,非关键帧采用分布式视频编码方法对其进行编码:首先,将每一个非关键帧进行基于块的离散余弦变换并对变换系数做量化处理;接着对这些量化后的系数按照不同频段重新组织安排,即将每一个块中的相同的频率系数放在一起;然后将系数编码成相应的比特,并按照比特面排序后,送到信道编码器,根据信道编码器产生校验比特:
[0029]S=XHt
[0030]式中,X表示非关键帧,H为校验矩阵,S为X的校验比特,T为H校验矩阵的转置最后,编码器部分将校验比特发送到解码部分。
[0031]解码器部分分为两部分:第一部分,首先是第一个关键视点的关键帧经过压缩感知的重构算法对关键帧解码;第二,第二个关键视点的关键帧经过压缩感知的重构算法对关键帧解码;第三,根据已经解码的关键视点的关键帧,通过视差矢量外推法外推获得非关键视点中非关键帧的视点间边信息。第二部分,首先将非关键视点的关键帧通过压缩感知的重构算法解码,然后非关键帧通过相邻的已解码关键帧进行双向运动补偿内插法,内插得到非关键视点中非关键帧的时间边信息。前两部分解码后,通过线性融合算法进行时间边信息与视点间边信息的融合,得到最终的边信息。将边信息和原始非关键帧的差异看作是虚拟信道中的相关噪声,利用Laplacian模型能够很好地估计残差的分布,则有如下的公式成立:
[0032]X=S I+Y
[0033]其中,X表示的原始信号帧,SI是经过运动矢量内插法获得的边信息,Y是虚拟相关信道中的相关噪声。接下来采用反量化的变换方法对边信息SI和相关噪声Y进行变换,得到非关键帧变换系数的估值。然后解码端根据信道解码器解码出的码字实现非关键帧重构,最后通过反离散余弦变换得到非关键帧,和已解码关键帧一起通过多路复用得到最终解码视频流。
[0034]如图2所示,所述的基于压缩感知的多视点分布式视频编码的帧排列图中,横向表不时间,纵向表不视点。K代表关键帧,WZ代表非关键帧。其中,I号、2号视点为关键视点,3号视点为非关键视点,3号视点的边信息由已解码的I号和2号视点经过视差矢量外推法获得。视差矢量外推法是通过已经解码的前两个关键视点(如图2所示的I号、2号视点),根据视点间的几何关系及图像匹配出视差矢量MV,然后根据3个视点的几何关系,由前一视点外推得到当前视点的视点间边信息。定义I [n, t, X,y]表示第η个视点在t时刻所在帧中(x,y)位置处的像素值。则第η个视点的像素值可以描述为
[0035]I [n, t, X,y] =I [n-1, t, x+mvx, y+mvy],其中 MV= (mvx, mvy)为视差矢量,mvx 表示视差矢量MV的横向分量,mvy表示视差矢量MV的纵向分量,X表示横坐标,y表示纵坐标,n-Ι表示第n-Ι个视点
[0036]实验证明,如图2所示的1、2、3号视点的位置既可以分布在一条直线上,又可以分布在非直线上。在视点内部,K帧与WZ帧间隔分布,每个WZ帧的边信息由已解码的相邻两侧的K帧经过双向运动矢量内插法获得。双向运动矢量内插法是通过当前帧的前一已解码帧和后一已解码帧,通过这两帧的运动匹配,分别获得前向运动矢量和后向运动矢量,然后根据如下公式内插获得当前帧的时间边信息。
[0037]
【权利要求】
1.一种基于压缩感知的多视点分布式视频编码及帧排列方法,其特征是,包括:编码器部分和解码器部分,其中编码器包括关键视点和非关键视点的编码步骤:首先,视点间采用的是关键视点、关键视点、非关键视点如此的排列,在视点内部的帧排列是关键帧与非关键帧间隔排列;第二,根据解码端对视频质量、视频实时性的要求,将帧分为2类,一类是关键视点与非关键视点的关键帧,关键帧是根据压缩感知理论进行编码的,首先通过选择适当的稀疏基将NXN维原始信号变为NXN维多O的稀疏信号,再经过观测矩阵将NXN维信号降到NXM维,最后编码器将关键帧的稀疏信号与经过观测矩阵降维的信号发送到解码器部分;另一类是关键视点与非关键视点的非关键帧,非关键帧采用分布式视频编码方法对其进行编码:首先,将每一个非关键帧进行基于块的离散余弦变换并对变换系数做量化处理;接着对这些量化后的系数按照不同频段重新组织安排,即将每一个块中的相同的频率系数放在一起;然后将系数编码成相应的比特,并按照比特面排序后,送到信道编码器,由信道编码器产生校验比特
S = XHt 式中,X表示非关键帧,H为校验矩阵,S为X的校验比特,T为H校验矩阵的转置,最后,编码器部分将校验比特发送到解码部分; 解码器部分分为两部分:第一部分,首先是第一个关键视点的关键帧经过压缩感知的重构算法对关键帧解码;第二,第二个关键视点的关键帧经过压缩感知的重构算法对关键帧解码;第三,根据已经解码的关键视点的关键帧,通过视差矢量外推法外推获得非关键视点中非关键帧的视点间边信息;第二部分,首先将非关键视点的关键帧通过压缩感知的重构算法解码,然后非关键帧通过相邻的已解码关键帧进行双向运动补偿内插法,内插得到非关键视点中非关键帧的时间边信息;前两部分解码后,通过线性融合算法进行时间边信息与视点间边信息的融合,得到最终的边信息;将边信息和原始非关键帧的差异看作是虚拟信道中的相关噪声,利用Laplacian模型能够很好地估计残差的分布;接下来采用和编码端相同的变换方法对边信息依次进行反量化,得到非关键帧变换系数的估值;利用虚拟噪声模型计算出信息比特送入信道解码器,信道解码器根据编码端传过来的校验比特对边信息进行校验;然后根据虚拟信道模型和边信息系数实现非关键帧重构,最后通过反离散余弦变换得到非关键帧,和已解码关键帧一起通过多路复用得到最终解码视频流。
2.如权利要求1所述的基于压缩感知的多视点分布式视频编码及帧排列方法,其特征是,压缩感知具体为:当信号具有稀疏性或者可压缩性的时候,通过线性投影,得到远小于奈奎斯特采样定理所要求的采样点,接收端通过凸优化或者迭代算法等高精度的重构出原始信号。
3.如权利要求1所述的基于压缩感知的多视点分布式视频编码及帧排列方法,其特征是,视差矢量外推法是,通过已经解码的前两个关键视点,根据视点间的几何关系及图像匹配出视差矢量MV,然后根据3个视点的几何关系,由前一视点外推得到当前视点的视点间边信息,定义I [n,t, x, y]表示第η个视点在t时刻所在帧中(x,y)位置处的像素值,则第η个视点的像素值可以描述为: I[n, t, X,y] = I [n-1, t, x+mvx, y+mvy],其中 MV = (mvx, mvy)为视差矢量,mvx 表示视差矢量MV的横向分量,mvy表示视差矢量MV的纵向分量,X表示横坐标,y表示纵坐标,n-Ι表示第n-Ι个视点。
4.如权利要求1所述的基于压缩感知的多视点分布式视频编码及帧排列方法,其特征是,双向运动矢量内插法是,通过当前帧的前一已解码帧和后一已解码帧,通过这两帧的运动匹配,分别获得前向运动矢量和后向运动矢量,然后根据如下公式内插获得当前帧的时间边信息:
/[c’x, j】=I /2(/[c — \,χ + mvf y + mvt ^] + /[c +I5X-1m^x, — ?η^ν]) 其中,I [c,x,y]表示第c帧中(x,y)位置处的像素值;MV1' = (Invf^mvl J ,MF6 =(wvA<,#ivAt.)分别表示前向运动矢量、后向运动矢量表示前向运动矢量MVf的横向分量,wvV,,表示前向运动矢量MVf的纵向分量;表示后向运动矢量MVb的横向分量,/mW表示后向运动矢量MVb的纵向分量;x表示横坐标,y表示纵坐标。
5.一种基于压缩感知的多视点分布式视频编码及帧排列装置,其特征是,由若干摄像机,视频压缩模块,视频解压模块构成,摄像机、视频压缩模块、视频解压模块依次相连,η个数字摄像头通过复用32条数据线连接至视频压缩模块,视频压缩模块外接一个Flash或者SRAM来存取数据;视频压缩模块通过PCI总线连接至上位机,视频压缩模块由DSP构成,视频解压模块设置在计算机内。
6.如权利要求5所述的基于压缩感知的多视点分布式视频编码及帧排列装置,其特征是,DSP模块进一步具体包括:根据压缩感知理论通过选择字典学习方法获得稀疏矩阵的模块,该模块经过稀疏基变换将NXN维原始信号变为NXN维O多非O少的的稀疏信号;降维模块,用于经过结构化的观测矩阵将NXN维信号降到NXM维;然后通过Flash或者SRAM存储视频信号 和经过视频压缩模块获得的稀疏矩阵以及观测矩阵。
【文档编号】H04N19/61GK103618907SQ201310556404
【公开日】2014年3月5日 申请日期:2013年11月8日 优先权日:2013年11月8日
【发明者】郭继昌, 许颖, 申燊, 孙骏, 金卯亨嘉 申请人:天津大学