首页> 中国专利> 基于迭代相关性噪声细化的单向分布式视频解码方法

基于迭代相关性噪声细化的单向分布式视频解码方法

摘要

本发明公开了一种基于迭代相关性噪声细化的单向分布式视频解码方法,具体步骤:(1)对分块帧进行离散余弦变换、量化和提取比特平面;(2)估计编码码率;(3)对比特平面进行LDPCA编码;(4)对边信息帧和运动补偿残差帧进行离散余弦变换和提取比特平面;(5)估计相关性噪声;(6)对待解码比特平面进行LDPCA解码;(7)利用更新后的重构系数值细化残差系数值;(8)通过离散余弦反变换,得到最终的重构WZ帧。本发明在迭代解码的基础上,通过更新上一次解码得到的重构系数细化残差系数,更新相关性噪声分布。本发明提高了相关性噪声估计精度和重构质量,解决了因编码端码率欠估计导致重构质量退化的问题。

著录项

  • 公开/公告号CN108712653A

    专利类型发明专利

  • 公开/公告日2018-10-26

    原文格式PDF

  • 申请/专利权人 西安电子科技大学;

    申请/专利号CN201810545760.9

  • 申请日2018-05-25

  • 分类号

  • 代理机构陕西电子工业专利中心;

  • 代理人田文英

  • 地址 710071 陕西省西安市雁塔区太白南路2号

  • 入库时间 2023-06-19 07:00:22

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-12-10

    授权

    授权

  • 2018-11-20

    实质审查的生效 IPC(主分类):H04N19/30 申请日:20180525

    实质审查的生效

  • 2018-10-26

    公开

    公开

说明书

技术领域

本发明属于通信技术领域,更进一步涉及视频压缩编码解码技术领域中的一种基于迭代相关性噪声细化的单向分布式视频解码方法。本发明可用于无线传感器网络、视频监控中对视频信号进行的压缩编解码。

背景技术

分布式视频编码(Distributed Video Coding,DVC)方法具有独立编码的特性,这使得分布式视频编码系统中编码端无法得知视频间的相关性,单向分布式视频编码作为一种更实用的DVC,其编码端码率估计难免会出现欠估计或过估计的情况。得益于DVC的不对称编码结构,改进解码模块成为了提高DVC系统压缩性能的重要途径,解码端的相关性噪声估计是影响分布式视频编解码系统性能的重要因素之一。目前,估计相关性噪声参数是相关性噪声建模的主要方式。

西安电子科技大学在其申请的专利文献“基于无反馈速率控制的Wyner-Ziv视频编码系统及方法”(专利申请号:201010128690.0,公开号:CN 101835042 A)中公开了一种基于无反馈速率控制的Wyner-Ziv视频编码系统及方法。该方法对输入视频帧进行独立编码,根据目标码率进行图像组层码率分配,利用编码图像帧间相关性分配帧层码率,并对Wyner-Ziv帧进行无反馈的比特面速率控制,最后在解码端利用估计的相关性噪声分布,对接受到的码流进行联合解码。该方法存在的不足之处是,该方法由于在解码端仅利用运动补偿残差帧进行相关性噪声估计,无法得到足够准确的相关性噪声参数,尤其是在编码端码率欠估计的情况下,导致重构帧质量差的问题。

闫锐在其发表的硕士学位论文“单向分布式视频编码的码率控制技术研究”(西安电子科技大学,2014)中针对单向DVC系统提出了一种视频编解码方法。首先提出了一种编码端码率控制技术,该技术利用低复杂度运动估计方法,以极低的复杂度获取和解码端相似的边信息,其次在解码端利用细化的运动矢量更新残差帧,并用于更新相关性噪声分布参数,最后根据相关性模型估计正确解码所需的码率。该方法存在的不足之处是,该方法仅仅利用了运动矢量分别对残差帧和相关性噪声分布参数进行更新,由于估计的运动矢量不够准确,导致相关性噪声分布不能很好地拟合视频间的相关性,特别是对运动剧烈的视频序列。

发明内容

本发明的目的是针对上述现有技术的不足,提出一种基于迭代相关性噪声细化的单向分布式视频解码方法。

实现本发明目的的具体思路是:在编码端从图像视频序列中选出奇数帧组成关键帧序列,选出偶数帧组成Wyner-Ziv帧序列,并对Wyner-Ziv帧序列进行单向分布式视频编码和解码,解码端对相关性噪声进行细化,在迭代解码的基础上,利用上一次解码得到的重构系数,对运动补偿残差进行细化,得到更精确的相关性噪声分布,并对错误解码的比特平面重新解码,提高重构质量相关性噪声估计精度和重构质量,解决因编码端码率欠估计导致重构质量退化的问题。

为实现上述目的,本发明的步骤包括如下:

(1)对分块帧进行离散余弦变换:

(1a)按照从前到后的顺序,从Wyner-Ziv帧序列中,任选一个Wyner-Ziv帧,将所选Wyner-Ziv帧均分成4×4大小的像素块;

(1b)按照从前到后的顺序,对每一个像素块进行离散余弦变换,得到16个变换系数后,将所有像素块对应位置的系数进行重组,得到16个系数带;

(1c)按照系数带顺序,将第一个系数带作为DC系数带,其余的系数带作为AC系数带;

(2)对系数带进行量化和提取比特平面并估计编码码率:

(2a)按照系数带顺序,从16个系数带中任选一个系数带;

(2b)判断所选系数带是否为DC系数带,若是,则执行步骤(2c);否则,执行步骤(2d);

(2c)利用DC系数量化方法,对所选系数带中的所有系数进行量化,得到DC量化系数带后,利用DC系数带的比特提取方法,对DC量化系数带提取比特平面;

(2d)利用AC系数量化方法,对所选系数带中的所有系数进行量化,得到AC量化系数带后,利用AC系数带的比特提取方法,对AC量化系数带提取比特平面;

(2e)利用快速运动补偿插值FMCI算法,生成边信息帧;

(2f)将边信息帧均分成4×4大小的像素块,对边信息帧的每一个像素块进行离散余弦变换,重组得到16个边信息的系数带,按照系数带顺序,将第一个系数带作为边信息的DC系数带,其余的系数带作为边信息的AC系数带;

(2g)利用DC系数量化方法,对边信息的DC系数带中的所有系数进行量化,得到边信息的DC量化系数带后,利用DC系数带的比特平面提取方法,提取边信息的DC量化系数带的比特平面;

(2h)利用AC系数量化方法,对边信息的每个AC系数带中的所有系数进行量化,得到边信息的AC量化系数带后,利用AC系数带的比特平面提取方法,提取边信息的AC量化系数带的比特平面;

(2i)利用校验位码率估计算法,计算每个比特平面的编码码率;

(3)对比特平面进行LDPCA编码:

(3a)按照从高比特到低比特的顺序,从所有比特平面中任选一个比特平面;

(3b)从监督检验文件中读取监督校验矩阵;

(3c)将所选比特平面和监督校验矩阵转置相乘,将乘积作为伴随式模2累加,得到累积伴随式;

(3d)根据所选比特平面的编码码率,从监督校验文件中读取与编码码率对应的间隔,使用与所选比特平面的编码码率对应的间隔,依次提取累积伴随式;

(3e)对所选比特平面进行CRC校验编码,将累积伴随式和CRC校验位写入码流文件;

(4)判断是否选择完所有的比特平面,若是,则执行步骤(5);否则,执行步骤(3);

(5)判断是否选择完所有的系数带,若是,则执行步骤(6);否则,执行步骤(2);

(6)判断是否选择完所有的Wyner-Ziv帧,若是,则执行步骤(7);否则,执行步骤(1);

(7)对边信息帧和运动补偿残差帧进行离散余弦变换:

(7a)利用运动插值补偿算法,估计Wyner-Ziv帧的边信息;

(7b)将解码后的前向关键帧和后向关键帧进行运动补偿作差,得到运动补偿残差帧;

(7c)将边信息帧均分成4×4大小的像素块,对每一个4×4的像素块进行离散余弦变换,得到16个变换系数;

(7d)将每一个4×4的像素块中对应位置的系数进行重组,得到16个系数带;

(7e)按照系数带顺序,将第一个系数带作为边信息的DC系数带,其余的系数带作为边信息的AC系数带;

(7f)将运动补偿残差帧均分成4×4大小的像素块,对每一个4×4的像素块进行离散余弦变换,得到16个变换系数;

(7g)将每一个4×4的像素块中对应位置的系数进行重组,得到16个系数带;

(7h)按照系数带顺序,将第一个系数带作为残差帧的DC系数带,其余的系数带作为残差帧的AC系数带;

(8)估计相关性噪声:

(8a)按照系数带顺序,从16个边信息系数带和残差帧的系数带中同时任选一个系数带;

(8b)利用系数级在线相关性噪声参数估计方法,用所选残差帧的系数带对相关性噪声模型进行估计,得到所选残差帧系数带中每一个系数的相关性噪声参数;

(8c)按照极大似然估计比计算公式,计算输入极大似然估计比;

(9)提取所选边信息系数带的比特平面:

(9a)判断所选边信息系数带是否为边信息的DC系数带,若是,则执行步骤(9b);否则,执行步骤(9c);

(9b)利用DC系数量化方法,对所选边信息系数带中的所有系数进行量化,得到边信息的DC量化系数带后,利用DC系数带的比特提取方法,对边信息的DC量化系数带提取比特平面;

(9c)利用AC系数量化方法,对所选边信息的系数带中的所有系数进行量化,得到边信息的AC量化系数带后,利用AC系数带的比特提取方法,对边信息的AC量化系数带提取比特平面;

(10)对待解码比特平面进行LDPCA解码:

(10a)按照从高比特到低比特的顺序,从所有待解码比特平面中任选一个比特平面,作为待解码的比特平面;

(10b)判断是否为第一次解码,若是,则执行步骤(10c),否则,执行步骤(10d);

(10c)将所有待解码比特平面的标记符号初始化为1后,执行步骤(10d);

(10d)判断所选比特平面的标记符号是否为1,若是,则执行步骤(10e),否则,执行步骤(10a);

(10e)从码流文件中读取对应的累积伴随式码流,然后从监督校验文件中读取对应的监督校验矩阵,利用置信传播算法对读取的伴随式和输入极大似然比进行LDPCA解码,得到解码后的比特平面以及解码后的比特平面中每一位比特对应的输出极大似然估计比;

(10f)从码流中读取CRC校验位,利用CRC校验判断解码后的比特平面中,是否所有比特正确解码,若是,则将解码后的比特平面对应的标记符号设置为0,否则,将解码后的比特平面对应的标记符号设置为1;

(10g)判断是否所有待解码比特平面已选完,若是,则执行步骤(11),否则,执行步骤(10a);

(11)生成解码标志位图:

(11a)分别利用与DC系数带的比特提取方法和AC系数带的比特提取方法相对应的比特插入方法,将解码后的每一个比特平面重组成每一个系数的量化值;

(11b)分别利用与DC系数量化方法和AC系数量化方法对应的反量化方法,对每一个系数对应的量化值进行重构,得到每一个系数的原始重构系数值;

(11c)在每一个解码后的比特平面中,将输出极大似然估计比绝对值大于50的比特的标志位设置为0,将输出极大似然估计比绝对值小于等于50的比特的标志位设置为1;

(11d)将所有比特对应的解码标志位组成比特平面对应的解码标志位图;

(11e)将所有比特平面对应的解码标志位图相或,得到系数对应的解码标志位图;

(11f)判断系数对应的解码标志位图是否为0,若是,则执行步骤(11g),否则,执行步骤(12);

(11g)将系数的原始重构系数值作为最终的系数重构值后执行步骤(13);

(12)更新原始重构系数值:

(12a)将比特平面对应的解码标志位图中,标志为1的比特个数,作为解码不可靠的比特数目;

(12b)按照下式,计算可能的系数重构值数目:

m=2L

其中,m表示可能的系数重构值数目,L表示解码不可靠的比特数目;

(12c)按照下式,计算每一个系数中,每一个比特平面中每一个比特的条件概率:

其中,表示在边信息系数CY和伴随式S已知的条件下,第i个系数中,第j个比特平面中的第k个比特为1的后验条件概率,表示第i个系数中,第j个比特平面中的第k个比特的输出极大似然比,表示在边信息系数CY和伴随式S已知的条件下第i个系数中,第j个比特平面中的第k个比特为0的条件概率;

(12d)按照下式,计算所有可能系数中,每一个系数的概率:

其中,pi表示系数的概率,i表示系数的序号,p(Y|X)表示在X已知的条件下,Y的条件概率;

(12e)在所有可能的系数重构值中,选择对应概率最大的系数重构值作为最终的系数重构值后执行步骤(13);

(13)将最终的系数重构值与对应的边信息系数值作差,得到细化更新后的残差系数值;

(14)判断与所选边信息系数带对应的待解码系数带是否已解码完成,若是,则执行步骤(15),否则,执行步骤(8);

(15)判断迭代次数是否大于4,若是,则执行步骤(16),否则,将迭代次数加1后执行步骤(8);

(16)对重构系数进行离散余弦反变换,得到最终的重构帧WZ帧。

本发明与现有技术相比有以下优点:

第一,由于本发明基于迭代解码用重构系数值更新残差系数值,对相关性噪声估计进行细化,克服了现有技术中仅利用运动补偿残差帧对相关性噪声分布进行初始估计,导致在编码端码率欠估计的情况下,重构帧质量差的问题,使得本发明可提高重构帧质量。

第二,由于本发明采用迭代解码,通过判断已解码重构值的可靠性来更新残差系数,进一步细化相关性噪声模型,克服了现有技术中仅使用运动矢量更新边信息,以边信息细化相关性噪声导致相关性噪声模型不准确的问题,使得本发明提高相关性噪声估计的精度。

附图说明

图1为本发明的流程图;

图2为本发明仿真实验的4个图像视频序列;

图3为本发明在量化级数为Q8时重构帧的峰值信噪比对比图;

图4为本发明在量化级数为Q6时重构帧的峰值信噪比对比图;

图5为本发明在量化级数为Q3时重构帧的峰值信噪比对比图;

图6为本发明的仿真实验的结果对比图。

具体实施方式

下面结合附图1对本发明做进一步的描述。

参照图1,对本发明的具体步骤做进一步的描述。

步骤1,对分块帧进行离散余弦变换。

按照从前到后的顺序,从Wyner-Ziv帧序列中,任选一个Wyner-Ziv帧,将所选Wyner-Ziv帧均分成4×4大小的像素块。

按照从前到后的顺序,对每一个像素块进行离散余弦变换,得到16个变换系数后,将所有像素块对应位置的系数进行重组,得到16个系数带。

按照系数带顺序,将第一个系数带作为DC系数带,其余的系数带作为AC系数带。

步骤2,对系数带进行量化和提取比特平面后估计编码码率。

第1步,按照系数带顺序,从16个系数带中任选一个系数带。

第2步,判断所选系数带是否为DC系数带,若是,则执行本步骤第3步,否则,执行本步骤第4步。

第3步,利用DC系数量化方法,对所选系数带中的所有系数进行量化,得到DC量化系数带后,利用DC系数带的比特提取方法,对DC量化系数带提取比特平面。

本步骤第3步所述的DC系数量化方法的具体步骤如下。

A.利用下式,计算DC系数带的量化间隔:

其中,Δv表示第v个量化数组中DC系数带的量化间隔,Qv(1)表示第v个量化数组中第1个系数带的量化级数。

B.利用DC系数带的量化间隔,对DC系数带中的所有系数进行均匀量化,得到量化后的DC量化系数带。

本步骤第3步所述的DC系数带的比特平面提取方法的具体步骤如下。

A.将量化后的DC系数带每一个系数,转换成每一个DC系数的二进制比特序列。

B.将DC系数带中每个系数的二进制比特序列中相同位置的比特值,组成DC系数带的比特平面。

第4步,利用AC系数量化方法,对所选系数带中的所有系数进行量化,得到AC量化系数带后,利用AC系数带的比特提取方法,对AC量化系数带提取比特平面。

本步骤第4步所述的AC系数量化方法的具体步骤如下。

A.利用下式,计算每个AC系数带的量化间隔:

其中,Δv,i表示第v个量化数组中第i个系数带的量化间隔,mv,i表示第v个量化数组中第i个系数带所有系数绝对值中的最大系数值,Qv(i)表示第v个量化数组中第i个系数带的量化级数。

B.利用每个AC系数带的量化间隔,对每个AC系数带中的所有系数进行死区量化,得到每个量化后的AC量化系数带。

本步骤第4步所述的AC系数带的比特平面提取方法的具体步骤如下。

A.取每个量化后的AC系数带中每一个系数的符号位作为最高位比特平面。

B.将每个量化后的AC系数带中每一个系数的绝对值,转换成与之对应的二进制比特序列。

C.将每一个AC系数带中每个系数的二进制比特序列中相同位置的比特值,组成AC系数带的其余比特平面。

第5步,利用快速运动补偿插值FMCI算法,生成边信息帧。

本步骤第5步所述的快速运动补偿插值FMCI算法的具体步骤如下:

A.分别取每一个Wyner-Ziv帧前面一个关键帧和后面一个关键帧,作为前向关键帧和后向关键帧。

B.将前向关键帧和后向关键帧分别均分成8×8大小的像素块。

C.按照从左到右从上到下的顺序,在前向关键帧和后向关键帧中选择相同位置的像素块,作为前向像素块和后向像素块。

D.计算所选前向像素块与后向像素块的绝对误差和。

E.判断绝对误差和是否大于100,若是,则执行步骤F,否则,执行步骤K。

F.利用第一种搜索方法对前后向像素块中像素点进行运动搜索,所述的第一种搜索方法是指,选取位于平面坐标系中(0,0)、(±1,0)和(0,±1)位置的5个搜索点进行运动搜索,在每一次运动搜索的同时,计算每个搜索点的前向像素块和后向像素块的绝对误差和,从所有绝对误差和中选出最小的绝对误差和,选择并记录与最小的绝对误差和对应的搜索点1。

G.判断搜索点1是否位于平面坐标系中(0,0)位置,若是,则执行步骤K,否则,执行步骤H。

H.利用第二种搜索方法,在第一种搜索方法所选搜索点的周围进行运动搜索,所述的第二种搜索方法是指,选取位于平面坐标系中(±2,0)和(0,±2)位置的4个搜索点进行运动搜索,在每一次搜索的同时,计算每个搜索点的前向像素块和后向像素块的绝对误差和,从所有绝对误差和中选出最小的绝对误差和,选择并记录与最小的绝对误差和对应的搜索点2。

I.判断搜索点2对应的绝对误差和是否小于搜索点1对应的绝对误差和,若是,则执行步骤J,否则,执行步骤K。

J.利用第三种搜索方法,在第二种搜索方法所选搜索点的周围进行运动搜索,所述的第三种搜索方法是指,选取位于平面坐标系中(±3,0)、(0,±3)、(±2,±1)和(±1,±2)位置的12个搜索点进行运动搜索,在每一次搜索的同时,计算每个搜索点的前向像素块和后向像素块的绝对误差和,从所有绝对误差和中选出最小的绝对误差和,选择并记录与最小的绝对误差和对应的搜索点3。

K.将对应于最小绝对误差和的搜索点作为运动矢量,利用运动矢量分别在所选前向块和后向块中选取像素点,计算所选前向块和后向块所选像素点的平均值,得到边信息块。

L.判断是否选择完前向关键帧和后向关键帧中对应位置的像素块,若是,则执行步骤M;否则,执行步骤C。

M.按前向关键帧和后向关键帧中对应位置所选取的顺序,将所有边信息块组成边信息帧。

第6步,将边信息帧均分成4×4大小的像素块,对边信息帧的每一个像素块进行离散余弦变换,重组得到16个边信息的系数带,按照系数带顺序,将第一个系数带作为边信息的DC系数带,其余的系数带作为边信息的AC系数带。

第7步,利用DC系数量化方法,对边信息的DC系数带中的所有系数进行量化,得到边信息的DC量化系数带后,利用DC系数带的比特平面提取方法,提取边信息的DC量化系数带的比特平面。

本步骤第7步所述的DC系数量化方法的具体步骤如下。

A.利用下式,计算DC系数带的量化间隔:

其中,Δv表示第v个量化数组中DC系数带的量化间隔,Qv(1)表示第v个量化数组中第1个系数带的量化级数。

B.利用DC系数带的量化间隔,对DC系数带中的所有系数进行均匀量化,得到量化后的DC量化系数带。

本步骤第7步所述的DC系数带的比特平面提取方法的具体步骤如下。

A.将量化后的DC系数带每一个系数,转换成每一个DC系数的二进制比特序列。

B.将DC系数带中每个系数的二进制比特序列中相同位置的比特值,组成DC系数带的比特平面。

第8步,利用AC系数量化方法,对边信息的每个AC系数带中的所有系数进行量化,得到边信息的AC量化系数带后,利用AC系数带的比特平面提取方法,提取边信息的AC量化系数带的比特平面。

本步骤第8步所述的AC系数量化方法的具体步骤如下。

A.利用下式,计算每个AC系数带的量化间隔:

其中,Δv,i表示第v个量化数组中第i个系数带的量化间隔,mv,i表示第v个量化数组中第i个系数带所有系数绝对值中的最大系数值,Qv(i)表示第v个量化数组中第i个系数带的量化级数。

B.利用每个AC系数带的量化间隔,对每个AC系数带中的所有系数进行死区量化,得到每个量化后的AC量化系数带。

本步骤第8步所述的AC系数带的比特平面提取方法的具体步骤如下。

A.取每个量化后的AC系数带中每一个系数的符号位作为最高位比特平面。

B.将每个量化后的AC系数带中每一个系数的绝对值,转换成与之对应的二进制比特序列。

C.将每一个AC系数带中每个系数的二进制比特序列中相同位置的比特值,组成AC系数带的其余比特平面。

第9步,利用校验位码率估计算法,计算每个比特平面的编码码率。

本步骤第9步所述的校验位码率估计算法的具体步骤如下。

A.按照下式,计算每一个系数带中,每一个比特平面中每一个比特的条件概率:

其中,表示在边信息系数CY信息和前k+1个比特已知的条件下,第i个系数带中,第k个比特平面中的第j个比特的条件概率,N表示比特平面长度,表示在区间[l,h]上对x求定积分操作,L(k)和H(k)表示由已解码比特确定的系数所在的区间上下限,L(k+1)和H(k+1)表示由已解码比特确定的系数所在的区间上下限,f(x|Cy)表示服从拉普拉斯的条件概率密度函数。

B.按照下式,计算每一个系数带中,每一个比特平面的条件概率熵:

其中,表示在边信息系数CY已知的条件下,原始Wyner-Ziv系数带CX中第i个系数带的第k个比特平面的条件概率熵,log2(·)表示以2为底的对数操作。

C.按照下式,计算每一个系数带中,每一个比特平面的比特相对错误率:

其中,pi,k表示第i个系数带的第k个比特平面的比特相对错误率,ni,k表示取第i个系数带中k-1个比特平面与对应边信息比特平面都相等的比特,在第k个比特平面的对应比特中与边信息对应比特平面不相等的比特位数。

D.按照下式,计算每一个系数带中,每一个比特平面编码的码率:

其中,Ri,k表示第i个系数带中第k个比特平面的编码码率,e表示以e为底的指数操作,表示平方根操作。

步骤3,对比特平面进行LDPCA编码。

按照从高比特到低比特的顺序,从所有比特平面中任选一个比特平面。

从监督检验文件中读取监督校验矩阵。

将所选比特平面和监督校验矩阵转置相乘,将乘积作为伴随式模2累加,得到累积伴随式。

根据所选比特平面的编码码率,从监督校验文件中读取与编码码率对应的间隔,使用与所选比特平面的编码码率对应的间隔,依次提取累积伴随式。

对所选比特平面进行CRC校验编码,将累积伴随式和CRC校验位写入码流文件。

步骤4,判断是否选择完所有的比特平面,若是,则执行步骤5;否则,执行步骤3。

步骤5,判断是否选择完所有的系数带,若是,则执行步骤6;否则,执行步骤2。

步骤6,判断是否选择完所有的Wyner-Ziv帧,若是,则执行步骤7;否则,执行步骤1。

步骤7,对边信息帧和运动补偿残差帧进行离散余弦变换。

第1步,利用运动插值补偿算法,估计Wyner-Ziv帧的边信息。

本步骤第1步所述的运动插值补偿算法的具体步骤如下。

A.分别对解码后的前向关键帧X′F和后向关键帧X′B进行低通滤波,得到滤波后的前向关键帧和后向关键帧

B.分别将滤波后的前向关键帧和后向关键帧均分成8×8的像素块。

C.对前向关键帧中的每一个像素块,在后向关键帧中对应像素块的周围进行搜索范围为[-32,32]的整像素全搜索,在每一次搜索的同时,计算前向关键帧中的每一个像素块和后向关键帧中对应像素块的绝对误差和,从所有绝对误差和中选出最小的绝对误差和,选择与最小的绝对误差和对应的位移偏移量作为初始前向运动矢量。

D.按照从左到右从上到下的顺序,在滤波后的前向关键帧和后向关键帧中选择相同位置的像素块,作为前向像素块和后向像素块。

E.在所选前向像素块周围相邻八个块对应的初始前向运动矢量中,选择距离待解码Wyner-Ziv帧对应块中心最近的运动矢量作为前向运动矢量。

F.分别取前向运动矢量的横坐标分量和纵坐标分量数值的一半,作为初始双向运动矢量中前向运动矢量的横坐标分量和纵坐标分量,分别取前向运动矢量的横坐标分量和纵坐标分量数值相反数的一半,作为初始双向运动矢量中的后向运动矢量的横坐标分量和纵坐标分量。

G.以Wyner-Ziv帧中与所选前向像素块对应的待解码块的中点为中心,在初始双向运动矢量的基础上在所选前向像素块和所选后向像素块的周围进行搜索,在每一次搜索的同时,计算前向像素块和对应后向像素块的绝对误差和,从所有绝对误差和中选出最小的绝对误差和,选择并记录与最小的绝对误差和对应的位移。

H.按照下式,分别计算在平面坐标系中横坐标方向和纵坐标方向上,双向运动矢量的前向运动矢量和后向运动矢量:

(xf,yf)=(xi,yi)+(x1,y1)

(xb,yb)=(xi,yi)+(x2,y2)

其中,(xf,yf)表示在平面坐标系中横坐标方向和纵坐标方向上,双向运动矢量中的前向运动矢量,(xi,yi)表示在平面坐标系中横坐标方向和纵坐标方向上,与最小绝对误差和对应的位移,(x1,y1)表示在平面坐标系中横坐标方向和纵坐标方向上,初始双向运动矢量中的前向运动矢量,(xb,yb)表示在平面坐标系中横坐标方向和纵坐标方向上,双向运动矢量中的后向运动矢量,(x2,y2)表示在平面坐标系中横坐标方向和纵坐标方向上,初始双向运动矢量中后向运动矢量的横坐标值和纵坐标值。

I.取前向关键帧中,与所选前向块相邻的周围8个像素块,按照顺时针方向对其编号。

J.按照下式,对双向运动矢量进行矢量平滑,得到平滑后的双向运动矢量:

其中,mvmf表示平滑后的双向运动矢量,argmin(·)表示取最小值参数的操作,mvi表示所选前向块的周围8个相邻像素块中任意一个像素块对应的运动矢量,∑表示求和操作,j表示在所选前向块的周围8个相邻像素块的序号,d(0)表示所选前向像素块与后向像素块之间的绝对误差和,d(mvj)表示偏移与Wyner-Ziv帧待解码块相邻的第j个像素块对应的运动矢量mvj后,所选前向像素块和后向像素块之间的绝对误差和,|·|表示取绝对值操作,mvj表示在所选前向块的周围8个相邻像素块中第j个像素块对应的运动矢量。

K.计算在所选前向像素块和后向像素块中,偏移前向运动矢量和后向运动矢量后,所选前向像素块和后向像素块中每一个像素点的平均值,得到Wyner-Ziv帧中待解码块的边信息块。

L.判断是否选择完前向关键帧和后向关键帧中对应位置的像素块,若是,则执行步骤M;否则,执行步骤D。

M.按前向关键帧和后向关键帧中对应位置所选取的顺序,将所有边信息块组成边信息帧。

第2步,将解码后的前向关键帧和后向关键帧进行运动补偿作差,得到运动补偿残差帧。

第3步,将边信息帧均分成4×4大小的像素块,对每一个4×4的像素块进行离散余弦变换,得到16个变换系数。

第4步,将每一个4×4的像素块中对应位置的系数进行重组,得到16个系数带。

第5步,按照系数带顺序,将第一个系数带作为边信息的DC系数带,其余的系数带作为边信息的AC系数带。

第6步,将运动补偿残差帧均分成4×4大小的像素块,对每一个4×4的像素块进行离散余弦变换,得到16个变换系数。

第7步,将每一个4×4的像素块中对应位置的系数进行重组,得到16个系数带。

第8步,按照系数带顺序,将第一个系数带作为残差帧的DC系数带,其余的系数带作为残差帧的AC系数带。

步骤8,估计相关性噪声。

按照系数带顺序,从16个边信息系数带和残差帧的系数带中同时任选一个系数带。

利用系数级在线相关性噪声参数估计方法,用所选残差帧的系数带对相关性噪声模型进行估计,得到所选残差帧系数带中每一个系数的相关性噪声参数。

所述系数级在线相关性噪声参数估计方法的具体步骤如下。

第1步,计算每一个残差系数带中每一个残差系数的绝对值。

第2步,按照下式,计算每一个残差系数带的方差值:

其中,表示第i个残差系数带的方差值,E[·]表示求期望值操作,表示第i个残差系数带中的系数值。

第3步,按照下式,计算每一个残差系数带中每一个系数绝对值的系数偏差:

其中,D(i,j)表示第i个残差系数带中第j个残差系数绝对值的系数偏差,表示第i个残差系数带中第j个残差系数值,μi表示第i个残差系数带中残差系数绝对值的平均值。

第4步,按照下式,计算每一个残差系数带的相关性噪声分布参数:

其中,αi,j表示是第i个系数带第j个系数的相关性噪声分布参数。

按照极大似然估计比计算公式,计算输入极大似然估计比。

所述的极大似然估计比计算公式如下:

其中,表示第i个系数带中第k个比特平面的第j个比特的输入极大似然估计比,ln(·)表示取自然常数为底的对数操作。

步骤9,提取所选边信息系数带的比特平面。

第1步,判断所选边信息系数带是否为边信息的DC系数带,若是,则执行本步骤第2步;否则,执行本步骤第3步。

第2步,利用DC系数量化方法,对所选边信息系数带中的所有系数进行量化,得到边信息的DC量化系数带后,利用DC系数带的比特提取方法,对边信息的DC量化系数带提取比特平面。

本步骤第2步所述的DC系数量化方法的具体步骤如下。

A.利用下式,计算DC系数带的量化间隔:

其中,Δv表示第v个量化数组中DC系数带的量化间隔,Qv(1)表示第v个量化数组中第1个系数带的量化级数。

B.利用DC系数带的量化间隔,对DC系数带中的所有系数进行均匀量化,得到量化后的DC量化系数带。

本步骤第2步所述的DC系数带的比特平面提取方法的具体步骤如下。

A.将量化后的DC系数带每一个系数,转换成每一个DC系数的二进制比特序列。

B.将DC系数带中每个系数的二进制比特序列中相同位置的比特值,组成DC系数带的比特平面。

第3步,利用AC系数量化方法,对所选边信息的系数带中的所有系数进行量化,得到边信息的AC量化系数带后,利用AC系数带的比特提取方法,对边信息的AC量化系数带提取比特平面。

本步骤第3步所述的AC系数量化方法的具体步骤如下。

A.利用下式,计算每个AC系数带的量化间隔:

其中,Δv,i表示第v个量化数组中第i个系数带的量化间隔,mv,i表示第v个量化数组中第i个系数带所有系数绝对值中的最大系数值,Qv(i)表示第v个量化数组中第i个系数带的量化级数。

B.利用每个AC系数带的量化间隔,对每个AC系数带中的所有系数进行死区量化,得到每个量化后的AC量化系数带。

本步骤第3步所述的AC系数带的比特平面提取方法的具体步骤如下。

A.取每个量化后的AC系数带中每一个系数的符号位作为最高位比特平面。

B.将每个量化后的AC系数带中每一个系数的绝对值,转换成与之对应的二进制比特序列。

C.将每一个AC系数带中每个系数的二进制比特序列中相同位置的比特值,组成AC系数带的其余比特平面。

步骤10,对待解码比特平面进行LDPCA解码。

第1步,按照从高比特到低比特的顺序,从所有待解码比特平面中任选一个比特平面,作为待解码的比特平面。

第2步,判断是否为第一次解码,若是,则执行本步骤第3步,否则,执行本步骤第4步。

第3步,将所有待解码比特平面的标记符号初始化为1后,执行本步骤第4步。

第4步,判断所选比特平面的标记符号是否为1,若是,则执行本步骤第5步,否则,执行本步骤第1步。

第5步,从码流文件中读取对应的累积伴随式码流,然后从监督校验文件中读取对应的监督校验矩阵,利用置信传播算法对读取的伴随式和输入极大似然比进行LDPCA解码,得到解码后的比特平面以及解码后的比特平面中每一位比特对应的输出极大似然估计比。

第6步,从码流中读取CRC校验位,利用CRC校验判断解码后的比特平面中,是否所有比特正确解码,若是,则将解码后的比特平面对应的标记符号设置为0,否则,将解码后的比特平面对应的标记符号设置为1。

第7步,判断是否所有待解码比特平面已选完,若是,则执行步骤(8),否则,执行本步骤第1步。

步骤11,生成解码标志位图。

第1步,分别利用与DC系数带的比特提取方法和AC系数带的比特提取方法相对应的比特插入方法,将解码后的每一个比特平面重组成每一个系数的量化值。

第2步,分别利用与DC系数量化方法和AC系数量化方法对应的反量化方法,对每一个系数对应的量化值进行重构,得到每一个系数的原始重构系数值。

第3步,在每一个解码后的比特平面中,将输出极大似然估计比绝对值大于50的比特的标志位设置为0,将输出极大似然估计比绝对值小于等于50的比特的标志位设置为1。

第4步,将所有比特对应的解码标志位组成比特平面对应的解码标志位图。

第5步,将所有比特平面对应的解码标志位图相或,得到系数对应的解码标志位图。

第6步,判断系数对应的解码标志位图是否为0,若是,则执行本步骤第7步,否则,执行步骤12。

第7步,将系数的原始重构系数值作为最终的系数重构值后执行步骤13。

步骤12,更新原始重构系数值。

将比特平面对应的解码标志位图中,标志为1的比特个数,作为解码不可靠的比特数目。

按照下式,计算可能的系数重构值数目:

m=2L

其中,m表示可能的系数重构值数目,L表示解码不可靠的比特数目。

按照下式,计算每一个系数中,每一个比特平面中每一个比特的条件概率:

其中,表示在边信息系数CY和伴随式S已知的条件下,第i个系数带中,第k个比特平面中的第j个比特为1的后验条件概率,表示第i个系数带中,第k个比特平面中的第j个比特的输出极大似然比,表示在边信息系数CY和伴随式S已知的条件下第i个系数带中,第k个比特平面中的第j个比特为0的条件概率。

其中,pi表示系数的概率,i表示系数的序号,p(Y|X)表示在X已知的条件下,Y的条件概率。

在所有可能的系数重构值中,选择对应概率最大的系数重构值作为最终的系数重构值后执行步骤13。

步骤13,将最终的系数重构值与对应的边信息系数值作差,得到细化更新后的残差系数值。

步骤14,判断与所选边信息系数带对应的待解码系数带是否已解码完成,若是,则执行步骤15,否则,执行步骤8。

步骤15,判断迭代次数是否大于4,若是,则执行步骤16,否则,将迭代次数加1后执行步骤8。

步骤16,对重构系数进行离散余弦反变换,得到最终的重构帧WZ帧。

下面结合仿真实验对本发明的效果作进一步的描述。

1、仿真条件:

本发明的仿真实验环境为:Microsoft Visual C++6.0,CPU intel Core I33.30GHz,内存4G,Windows7普通版。本发明选取了4组图像视频序列,分别是coastguard,foreman,hall monitor和soccer序列,每个视频序列都有不同的运动速度,如图2所示,其中图2(a)表示hall monitor序列的第100帧、图2(b)表示coastguard序列的第50帧、图2(c)表示foreman序列的第94帧、图2(d)表示soccer序列的第60帧。空间分辨率为QCIF,时间分辨率为15HZ。

2、仿真内容:

本发明的仿真实验有四个。

仿真1:

使用本发明和现有技术无相关性噪声细化的单向分布式视频编解码方法,在Wyner-Ziv帧的量化级数为8时,对本发明所选取的四种图像视频序列分别进行编码和解码。将采用本发明的方法对四种图像视频序列解码后获得的重构帧的峰值信噪比,与现有技术下四种图像视频序列解码重构帧的峰值信噪比进行对比,得到如图3所示的两条曲线。

仿真2:

使用本发明和现有技术无相关性噪声细化的单向分布式视频编解码方法,在Wyner-Ziv帧的量化级数为6时,对本发明所选取的四种图像视频序列分别进行编码和解码。将采用本发明的方法对四种图像视频序列解码后获得的重构帧的峰值信噪比,与现有技术下四种图像视频序列解码重构帧的峰值信噪比进行对比,得到如图4所示的两条曲线。

仿真3:

使用本发明和现有技术无相关性噪声细化的单向分布式视频编解码方法,在Wyner-Ziv帧的量化级数为3时,对本发明所选取的四种图像视频序列分别进行编码和解码。将采用本发明的方法对四种图像视频序列解码后获得的重构帧的峰值信噪比,与现有技术下四种图像视频序列解码重构帧的峰值信噪比进行对比,得到如图5所示的两条曲线。

仿真4:

使用本发明和现有技术无相关性噪声细化的单向分布式视频编解码方法,在Wyner-Ziv帧的量化级数为8时,对本发明所选取的四种图像视频序列分别进行编码和解码。将采用本发明的方法对四种图像视频序列解码后获得的重构帧的主观图像,与现有技术下四种图像视频序列解码重构帧的主观图像进行对比,如图6所示。

3、结果分析:

图3和图4是分别在Wyner-Ziv帧的量化级数为8和6时,采用本发明和现有技术对四种图像视频序列分别进行编码和解码后获得的重构帧的峰值信噪比对比曲线图。其中,图3(a)和图4(a)中的横坐标表示图像视频帧序号,纵坐标表示峰值信噪比,物理单位为dB。图3(a)和图4(a)中以方形标示的实线,表示现有技术对coastguard视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线,图3(a)和图4(a)中以三角形标示的虚线,表示本发明对coastguard视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线。图3(b)和图4(b)中的横坐标表示图像视频帧序号,纵坐标表示峰值信噪比,物理单位为dB。图3(b)和图4(b)中以方形标示的实线,表示现有技术对foreman视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线,图3(b)和图4(b)中以三角形标示的虚线,表示本发明对foreman视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线。图3(c)和图4(c)中的横坐标表示图像视频帧序号,纵坐标表示峰值信噪比,物理单位为dB。图3(c)和图4(c)中以方形标示的实线,表示现有技术对hall monitor视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线,图3(c)和图4(c)中以三角形标示的虚线,表示本发明对hall monitor视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线。图3(d)和图4(d)中的横坐标表示图像视频帧序号,纵坐标表示峰值信噪比,物理单位为dB。图3(d)和图4(d)中以方形标示的实线,表示现有技术对soccer视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线,图3(d)和图4(d)中以三角形标示的虚线,表示本发明对soccer视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线。由图3和图4可见,采用本发明对四种图像视频序列进行编解码后得到的重构帧的峰值信噪比,明显高于现有技术得到的峰值信噪比。其中,在量化级数为8时,对coastguard序列,几乎每一个帧都有提升,平均提升了0.25dB,最高提升了1.4dB左右;在Foreman序列第5帧附近和第49帧附近,PSNR提升了大约1.5dB;在Hall序列第9帧和第15帧附近,PSNR提升高达有3.5dB;在Soccer序列第19帧和33帧附近,PSNR提升高达约7dB。

图5是在Wyner-Ziv帧的量化级数为3时,采用本发明和现有技术对四种图像视频序列分别进行编码和解码后获得的重构帧的峰值信噪比对比曲线图,其中,图5(a)中的横坐标表示图像视频帧序号,纵坐标表示峰值信噪比,物理单位为dB。图5(a)中以方形标示的实线,表示现有技术对coastguard视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线,图5(a)中以三角形标示的虚线,表示本发明对coastguard视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线。图5(b)中的横坐标表示图像视频帧序号,纵坐标表示峰值信噪比,物理单位为dB。图5(b)中以方形标示的实线,表示现有技术对foreman视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线,图5(b)中以三角形标示的虚线,表示本发明对foreman视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线。图5(c)中的横坐标表示图像视频帧序号,纵坐标表示峰值信噪比,物理单位为dB。图5(c)中以方形标示的实线,表示现有技术对hall monitor视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线,图5(c)中以三角形标示的虚线,表示本发明对hall monitor视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线。图5(d)中的横坐标表示图像视频帧序号,纵坐标表示峰值信噪比,物理单位为dB。图5(d)中以方形标示的实线,表示现有技术对soccer视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线,图5(d)中以三角形标示的虚线,表示本发明对soccer视频序列分别进行编码和解码后获得的重构帧的峰值信噪比的曲线。由图5可见,当量化级数为3时,采用本发明对四种图像视频序列进行编解码后得到的重构帧的峰值信噪比稍高于现有技术得到的峰值信噪比,但是提升幅度低于高量化级数比如8、6等。这是由于量化级数较小时,量化误差较大,利用重构值进行相关性噪声细化会产生不利的影响。

图6是在Wyner-Ziv帧的量化级数为8时,采用本发明和现有技术对四种图像视频序列分别进行编码和解码后获得的重构帧的仿真结果对比图。其中,图6(a)表示coastguard序列第37帧的原始图像,图6(b)表示采用现有技术对coastguard序列第37帧进行仿真的实验结果图,图6(c)表示采用本发明对coastguard序列第37帧进行仿真的实验结果图,图6(d)表示foreman序列第47帧的原始图像,图6(e)表示采用现有技术对foreman序列第47帧进行仿真的实验结果图,图6(f)表示采用本发明对foreman序列第47帧进行仿真的实验结果图,图6(g)表示hall monitor第9帧的原始图像,图6(h)表示采用现有技术对hall monitor第9帧进行仿真的实验结果图,图6(i)表示采用本发明对hall monitor第9帧进行仿真的实验结果图,由图6可见,本发明在对coastguard序列、foreman序列、hallmonitor序列和soccer序列进行编解码后,得到的仿真实验结果明显优于现有技术得到的仿真实验结果,修复了很多块效应。

由以上的仿真结果表明:本发明由于相关性噪声细化的方法,在基于迭代的单向分布式视频编解码的基础上,利用上一次解码得到的重构系数,对运动补偿残差进行细化,在保持低时延的前提下,提高了相关性噪声估计的精度,使得解码的重构质量得到了明显提升。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号