本发明涉及计算机图像处理领域,特别是涉及一种图像分块压缩感知的正则化解码方法。
背景技术:
压缩感知是一种突破奈奎斯特采样定理的全新信号处理框架。信息压缩和信号重构是压缩感知的两个重要组成部分。信息压缩方法主要分成两类,对整幅图像进行压缩与对图像分块后分别进行压缩。整体压缩感知往往需要存储较大的测量矩阵,占用较大内存,同时,整体压缩感知的计算量也十分庞大。
为此,科研人员提出了分块压缩方法,该方法先将图像分成指定大小的小块,再对每一小块图像使用同一的测量矩阵进行压缩。例如中国专利文献cn106301384a的“一种基于分块压缩感知的信号重构方法”:将原始信号均匀分成子块,对子块稀疏变换后滤波;得到的子信号再进行观测,得到观测向量;利用观测向量和测量矩阵恢复出子信号,再对子信号线性组合得到重构信号。分块压缩感知具有存储测量矩阵较小,重构算法计算更加简单的优点;但是该算法对每个子信号单独重构,然后线性组合,鲁棒性不强并且容易引起重构图像块效应。
在文献“blockcompressedsensingofnaturalimages”中,lugan为了解决重构图像块效应,引入维纳滤波器到pl(projectedlandweber)算法作为信号恢复算法,减小分块效应。重构算法迭代过程为:首先对整幅图像做维纳滤波,然后通过landweber投影和硬阈值处理进行信号重构。该算法有效降低了重构图像的块效应,但是由于维纳滤波的引入引起了重构图像的质量衰减。
技术实现要素:
为了解决现有技术中存在的上述缺陷,解决分块压缩感知重构问题并且提高重构图像峰值信噪比,本发明的目的是:提供一种分块压缩感知的正则化解码方法。
本发明解决其技术问题所采取的技术方案是:
一种分块压缩感知的正则化解码方法,包括如下步骤:
(1)输入待处理图像,其中,待处埋图像x的大小为n×n;
(2)对图像进行分块,将图像分块成b×b的小块图像,对分块后的子图像展开成列向量xj,其中
(3)根据分块后的图像所需的采样率m决定测量矩阵φ的大小,得到测量矩阵为m×b2行,b2列矩阵;对数据进行测量,得到测量值yj=φxj,选择测量矩阵为高斯随机正交测量矩阵;
(4)利用测量值和测量矩阵对原信号进行重构,输出重构图像;
xj表示分块后的子图像矩阵按列展开成的列向量,j为子图像的次序,共
φ表示测量矩阵,根据采样率选择列数,行数由图像分块大小决定;
yj为每一个分块图像展成列向量的测量值;
所述的步骤(4)中的重构算法如下:
步骤1:设置最大迭代次数为smax,停机准则ε,初始化x(0)=φty,将x(0)线性重组为图像x(0),令s=0,置x(s,0)=x(0);
步骤2:梯度下降,
步骤3:将x(s,1)线性变换成x(s,1),即对图像分块后重排序成新的矩阵;对得到的x(s,1)做稀疏变换,得到变换系数
步骤4:对得到的x(s,2)做凸集投影x(s+1,0)=pocs(x(s,2),λj);
步骤5:s=s+1,若s<smax且||x(s+1,0)-x(s,0)||>ε,返回步骤2,否则输出x(s+1,0)并退出迭代。
x(0)表示由列向量xj组成的矩阵,上标表示对应迭代次数所得结果;smax表示最大迭代次数,ε为停机准则,设置成固定常数;
x(0)为将x(0)重组成图像,即将x(0)中的每一列排成图像矩阵,并按次序组合;
||x(s)||tv表示图像x(s)的全变差,||·||0表示取零范数。
pocs(x,λj)表示凸集投影,λj表示凸集投影过程中,第j块子图像的投影参数。
α表示平衡图像的稀疏性和其整体结构参数。
μ(s)为梯度下降的步长因子。
δ为梯度下降过程防止出现分母为0取的常数。
所述的步骤3的稀疏变换采用双树复小波变换,该变换能反应图像的边缘信息;而阈值处理相应地选择双阈值处理。
重构算法中步骤4凸集投影具体方程为xj=xj+λjφt(yj-φxj)。
由于采用了上述的技术方案,本发明的有益效果是:通过采用本发明的分块压缩感知图像重构算法,有效地减少了分块压缩感知带来的块效应;并且与现有方法比,有更高的峰值信噪比以及更好的图像视觉效果。
附图说明
图1是本发明的一种分块压缩感知的正则化解码方法算法流程图。
具体实施方式
下面结合附图和一个典型的具体实施方式对本发明的一种分块压缩感知的正则化解码方法做详细说明,该算法具体包括如下部分:
压缩端利用分块压缩感知对图像进行压缩,步骤如下:
输入待处理的图像,其中,待处理图像x大小为n×n,将图像分块成b×b的小块图像,对分块后的子图像展开成列向量xj,其中
根据分块后的图像所需的采样率m决定测量矩阵φ的大小,得到测量矩阵为
m×b2行,b2列矩阵;对数据进行测量,得到测量值yj=φxj,选择测量矩阵为高斯随机正交测量矩阵;实现压缩目的。
利用测量值和测量矩阵对原信号进行重构,输出重构图像;构建如式所示的规划问题。
式(1)中,α∈r+是正则化参数,用于平衡图像矩阵x的稀疏性和其整体结构信息。使用拉格朗日乘子法可将式中的有约束优化问题转为式所示的无约束优化问题;其中,λj是拉格朗日乘子。
对于规划问题,可以继续使用梯度下降法进行迭代求解,其相应的迭代格式为
其中,参数μ(s)为步长因子。式中g1(x)是表示正则项||x||tv关于矩阵x的梯度,它是一个矩阵,其坐标(i,j)的系数表达式为
式(4)中δ>0用以避免实际计算中出现分母为0的情况。
由于||ψ-1x||0关于x不可微,因此式中g2(x)难以直接求解。根据规划问题,在迭代式中,图像矩阵变量沿着||ψ-1x(s)||0的负梯度方向下降的目的,是为了使得||ψ-1x(s+1)||0尽可能小,而最终得到在ψ域中是最稀疏的图像解码矩阵。可以使用阈值滤波代替g2(x(s))的求解。
阈值滤波分为3步:双树复小波变换,双阈值滤波,双树复小波反变换。双阈值滤波是一种被广泛应用于去除高斯白噪声的滤波方法。本发明使用ddwt这种需要比较父子变换稀疏变换,使用双阈值滤波如式(5)。
式(5)中,
对于g3(x),根据式,有
式(6)中,
xj=xj+λjφt(yj-φxj)(7)
事实上,除了参数λj,式几乎完全一致,它们对图像矩阵x的每个子块xj进行凸集投影,保证最终解码矩阵的各个子块满足规划问题中的约束条件yj=φxj,j=0,1,…,n-1。用函数pocs(x(s),λj)表示迭代式中g3(x(s))的作用;它首先将矩阵x(s)分块为
综上,迭代式分为3步实现,1是梯度下降
重构算法步骤如下:
步骤1:设置最大迭代次数为smax,停机准则ε,初始化x(0)=φty,将x(0)线性重组为图像x(0),令s=0,置x(s,0)=x(0);
步骤2:梯度下降,
步骤3:将x(s,1)线性变换成x(s,1),即对图像分块后重排序成新的矩阵。对得到的x(s,1)做稀疏变换,得到变换系数
步骤4:对得到的x(s,2)做凸集投影x(s+1,0)=pocs(x(s,2),λj);
步骤5s=s+1,若s<smax且||x(s+1,0)-x(s,0)||>ε,返回步骤2,否则输出x(s+1,0)并退出迭代。
算法涉及到一些参数,有α,μ(s),λj等。参数α用于平衡矩阵x的稀疏性和其整体结构信息,它与原始图像数据x相关,属于超参数,应在迭代算法开始之前取定。参数μ(s)是迭代的步长因子。根据最优化理论,步长因子μ(s)应使得规划问题的目标函数在迭代格式所确定的搜索方向上取得最小值。然而,由于我们使用阈值滤波和凸集投影去实现式所示的迭代格式,这使得在算法中,参数μ(s)与参数α在事实上有相同的作用,因此本发明建议步长因子μ(s)取定为常数μ,在迭代算法开始之前确定其值。
导数为0是无约束化问题解的必要条件。由式(8)左侧可知右侧表示一个大小为n×1的列向量。
那么,应有
λj(s)φt(yj-φxj(s,0))=vector(block(x(s2)-x(s,0)j)
两边取范数后,得式(10)。参数λj(s)可在事实上起到步长因子的作用。由此,便可实现本发明的分块图像正则化解码方法。
应当认识到,以上描述只是本发明的一个特定实施例,本发明并不仅仅局限于以上图示或描述的特定的结构,权利要求将覆盖本发明的实质精神及范围内的所有变化方案。