Content area
Full text
1 引言
超分辨率重建[1-3]是图像处理和计算机视觉领域的经典问题之一,它最初是由Tsai和Huang[4]提出的,根据重建方法的不同主要可分为基于插值的方法、基于重建的方法和基于学习的方法。
近年来基于学习[5-6]的超分辨率重建逐渐成为主流的图像重建方法。Freeman[7]等人提出一种基于实例的学习策略,通过利用Markov网络对图像块的空间关系进行建模,使得重建得到的图像具有更多的高频细节信息;Chang[8]根据流形学习中的局部线性嵌入(locally linear embedding, LLE)[9]技术提出邻域嵌入方法;Yang[10]将稀疏编码理论引入超分辨率重建,提出ScSR算法;Zeyde[11]在Yang的基础上加入K-SVD[12]和正交匹配追踪用于字典训练和稀疏系数的求解,加快了高、低分辨率图像字典的训练过程;Yang[13]提出SF(simple function)方法,利用聚类算法将图像特征空间分为多个子空间,然后利用稀疏表示方法对不同聚类图像进行重建;Zhang[14]证明了协同表示相对于稀疏表示在人脸识别中的主要作用,协同表示相比较于稀疏表示其求解速度更快,而且不易产生过拟合现象;Timofte[15]提出ANR(anchored neighborhood regression)方法,利用协同表示的方法获得高、低分辨率图像块之间的映射矩阵,在重建阶段只需通过低分辨率图像块和对应字典原子的映射矩阵相乘即可重建高分辨率图像块,提高了图像重建的速度。
本文提出结合聚类算法和协同表示的图像超分辨率重建方法,主要流程如图 1所示,该方法首先对训练样本特征进行聚类,将具有相同特征的图像块聚为一类,然后对每个子类学习得到一个完备字典,再对每个子类字典原子依据协同表示的方法得到一个映射矩阵。重建时根据输入的低分辨率图像块,找出其所属类的图像字典,在该类字典中找出与待重建图像块特征向量最近的字典原子,根据该字典原子的映射矩阵和待重建图像块特征向量重建出高分辨率图像块。利用特征聚类方法增强了图像字典的特征表达能力,提高了映射矩阵的准确性,并且利用协同表示离线式计算出图像特征映射矩阵,提高了重建速度。
[Image omitted: See PDF]
2 相关工作 2.1 图像退化模型
图像退化模型表明了高分辨率图像块x与观测得到的低分辨率图像块y之间的关系,其数学模型如式(1)所示:
\( \mathit{\boldsymbol{y}} = \mathit{\boldsymbol{DHx}} + \mathit{\boldsymbol{n}}\;\;。\)(1)
其中:H表示模糊处理,D表示降采样处理,n表示低分辨率图像观测过程中产生的噪声。
2.2 协同表示
稀疏表示方法利用L-0范数或者L-1范数正则项来约束目标函数,但是L-0范数是NP难问题,而带L-1范数正则项的最优化问题求解过程十分耗时。协同表示[14]则是带L-2范数正则项的最小二乘回归问题,虽然L-2范数的稀疏性约束弱于L-1范数,但是通过岭回归的方法可以很方便地对其进行求解。利用协同表示的方法,低分辨率图像块y与低分辨率图像完备字典D1之间的约束关系如(2)所示:
\( \mathit{\boldsymbol{\alpha }} {\rm{ = }}{\rm{arg}}\;\mathop {{\rm{min}}}\limits_\mathit{\boldsymbol{\alpha }} \left\| {\mathit{\boldsymbol{y }}-{\mathit{\boldsymbol{D }}_{\rm{1}}}\mathit{\boldsymbol{\alpha }} } \right\|_2^2 + \lambda \left\| \mathit{\boldsymbol{\alpha }} \right\|_2^2\;\;, \)(2)
其中:α是稀疏系数,λ是正则化参数,用于确保求解过程的稳定性。通过岭回归的方法,可以得到式(3)的解为
\( \mathit{\boldsymbol{\alpha }}{\rm{ = (}}{\mathit{\boldsymbol{D}}_{\rm{1}}}^T{\mathit{\boldsymbol{D}}_{\rm{1}}}{\rm{ + }}\lambda \mathit{\boldsymbol{I}}{)^{{\rm{-1}}}}{\mathit{\boldsymbol{D}}_{\rm{1}}}^T\mathit{\boldsymbol{y}}\;\;, \)(3)
其中I表示单位矩阵。由于认为高分辨率图像块与其下采样得到的低分辨率图像块之间具有相同的稀疏系数,故与y相对应的高分辨率图像块x可以通过式(4)得到:
\( \mathit{\boldsymbol{x}} = {\mathit{\boldsymbol{D}}_{\rm{h}}}\mathit{\boldsymbol{\alpha }}\;\;。\)(4)
其中Dh表示高分辨率图像字典。
结合式(3)和式(4),可以得到:
\( \mathit{\boldsymbol{x}} = {\mathit{\boldsymbol{D}}_{\rm{h}}}{({\mathit{\boldsymbol{D}}_1}^{\rm{T}}{\mathit{\boldsymbol{D}}_1} + \lambda \mathit{\boldsymbol{I}})^{-1}}{\mathit{\boldsymbol{D}}_1}^{\rm{T}}\mathit{\boldsymbol{y}}\;\;。\)(5)
由式(5)可知,低分辨率图像块y和与相应的高分辨率图像块x之间的关系可以通过一个映射矩阵来表示,即P=Dh(D1TD1+λI)-1D1T。
3 基于聚类和协同表示的超分辨率重建 3.1 特征提取
记X表示高分辨率图像,对高分辨率图像X先下采样s倍,再采用双三次插值的方法上采样s倍得到低分辨率图像Y1。对Y1进行分块可以得到Y1={y11, y12, …, y1n},n表示图像块的总个数。对每一个低分辨率图像块使用梯度算子和拉普拉斯算子提取图像块水平和垂直方向上的边缘特征,特征提取算子为:
f1=[-1,0,1],f2=f1T,
f3=[1,0,-2,0,1],f4=f3T。
其中“T”表示转置操作。将每一个低分辨率图像块提取得到的四个特征向量组合为一个高维列向量,作为该图像块特征表示,将所有的低分辨率图像块特征表示组合成一个高维特征矩阵。为了提高算法的效率和鲁棒性,使用PCA对特征矩阵进行降维,降维后的图像特征用于训练图像字典。
对高分辨率图像首先通过式(6)获得其高频成分Xh,然后对其进行分块得到Xh={xh1, xh2, …, xhn}。利用图像高频成分求得高分辨率图像字典,使得图像的重建过程转化为重建图像高频成分的过程,最后将重建得到的高频成分与原低分辨率图像相加得到最终的图像重建结果。
\( {\mathit{\boldsymbol{X}}_{\rm{h}}}{\rm{ = }}\mathit{\boldsymbol{X}}-{\mathit{\boldsymbol{Y}}_{\rm{1}}}\;\;。\)(6) 3.2 聚类字典学习
对低分辨率图像训练集中的所有图像分块后,根据图像块特征使用k-means聚类方法将其分为K个类别,使得具有相似特征的图像块聚为一类,根据每个低分辨率图像块所在的类别将相应的高分辨率图像块也分为K个类别。之后对每一类低分辨率图像块分别训练图像字典,由于同一类别的图像块均有相似的特征,因此训练得到的图像字典对于该类别的图像特征的表达更为精确,从而提高了具有该类别特征的图像的重建效果,图 2所示为对图像块进行聚类后的结果,可以看出每一类的图像块均有较为相似的图像特征。
[Image omitted: See PDF]
低分辨率图像字典的训练使用K-SVD算法,每个字典训练时的字典原子个数和迭代次数相同。记第i个低分辨率图像类别为Yi={y1i, y2i, …, ypi}, (1≤i≤K),其中p表示该类别包含的图像块个数,D1i表示该类别的低分辨率图像字典。聚类字典的训练过程主要分为稀疏表示阶段和字典更新阶段,在稀疏表示阶段假定稀疏字典D1i是固定的,通过正交匹配追踪算法(OMP)来估计稀疏表示;在字典更新阶段通过奇异值分解(singular value decomposition,SVD)的方法对稀疏字典D1i的每个列向量进行逐个修正,目标公式如(7)所示,其中Ai={α1i, α2i, …, αpi}为稀疏系数矩阵,T0为样本稀疏性最大值。
\( \mathop {{\rm{min}}}\limits_{\left\{ {{\mathit{\boldsymbol{D}}^i}, {\mathit{\boldsymbol{A}}^i}} \right\}} \left\| {{\mathit{\boldsymbol{Y}}^i}-\mathit{\boldsymbol{D}}_{\rm{1}}^i{\mathit{\boldsymbol{A}}^i}} \right\|_{\rm{F}}^2\;\;{\rm{s}}{\rm{.t}}.\;\;\forall q\;\left\| {\mathit{\boldsymbol{\alpha }}_q^i} \right\| \le {T_0}\;\;。\)(7)
具体字典学习过程如下:
1) 随机选择D1, (0)i初始化低分辨率字典。
2) 稀疏表示阶段:固定字典D1, (0)i,采用正交匹配追踪算法(OMP)对训练集Yi={y1i, y2i, …, ypi}中的每个图像块ypi计算其稀疏系数αqi,最后将所有的稀疏系数组合得到稀疏系数矩阵Ai,求解稀疏系数目标公式如(8)所示:
\( \mathit{\boldsymbol{\alpha }}_q^i{\rm{ = }}\arg \;\mathop {\min }\limits_{\mathit{\boldsymbol{\alpha }} _q^i}...