一种基于卡通纹理分解的图像超分辨率重建方法与流程

文档序号:12906797阅读:210来源:国知局
一种基于卡通纹理分解的图像超分辨率重建方法与流程

【技术领域】

本发明属于图像处理领域,具体涉及一种基于卡通纹理分解的图像超分辨率重建方法。



背景技术:

随着数字图像处理技术的不断深入发展,人们对高分辨率图像与视频的要求与日俱增,为了满足人们的需求,基于单帧图像的超分辨率重建技术就诞生了。图像超分辨率重建是将低分辨率图像恢复成高分辨率图像,这一问题一直以来都是图像领域界研究学者们探究的重要课题。目前,图像超分辨率重建被广泛应用于视频监控、卫星遥感成像、医学图像等各个领域。

已有的单帧图像超分辨技术大致可以分为三类:基于插值的方法,基于重建的方法和基于示例学习的方法。基于插值的方法被看作是超分辨率方法中最为基础的一种方法。尽管理论上讲这些方法是高效的,但是在许多实践过程中重建图像的质量并不理想。基于重建的方法虽然能产生清晰的边缘并且能抑制人工痕迹的产生,但并没有为高分辨率图像的输出提供任何新的有用的细节,尤其是在高放大倍率的情况下。基于示例学习的方法优于基于重建的方法,但在重建过程中会产生模糊效应,使低分辨率图像块不利于与实际图像块进行匹配,从而降低了重建图像的质量。

目前较流行的一种图像超分辨率方法是改进的邻域锚点映射方法,该方法主要分为离线的样本库训练和在线的图像重构两部分。在训练过程中,对收集到的高分辨率图像进行下采样得到低分辨率图像;然后将低分辨率图像经双线性插值算法放大,将得到的双线性插值图像依次实施提取梯度特征、分块、降维操作得到具有低频信息的低分辨率块;而具有高频信息的预测插值图像则通过原始高分辨率图像减去低分辨率图像的双线性插值图像获得,然后将图像做分块处理,得到具有高频信息的高分辨率块。这样,在训练数据库中就存在着低分辨率块和与之对应的高分辨率块的样本对了。训练完样本对后,进行锚点映射操作。在这一训练过程中,首先计算每一个样本与每一个锚点的欧式距离,然后找锚点的最近邻样本完成锚点映射这一训练过程。这样,离线的训练过程也就完成了。

在训练样本对的过程中,该方法只是简单的对高分辨率图像进行处理。这样,在得到低分辨率图像过程中会产生模糊效应,使得所产生的低分辨率块与实际图像不匹配,存在多对一的情况。在锚点映射过程,该方法仅仅通过寻找锚点的最近邻样本来完成锚点映射这一训练过程。这样,所得到的映射矩阵与实际映射矩阵之间会产生较大误差。因此,这种方法往往会使重建出来的图像丢失细节、模糊边缘。



技术实现要素:

针对现有技术的不足,发明的目的在于提供一种基于卡通纹理分解的图像超分辨率重建方法,既能有效地避免因噪声产生的纹理,同时又能有效地保持图像内容,使图像的结构更加明显。

为了达到上述目的,本发明采用如下技术方案:

一种基于卡通纹理分解的图像超分辨率重建方法,包括以下步骤:

s1:离线训练过程包括两个训练过程:第一个训练过程通过k-奇异值分解算法训练出高低分辨率纹理字典对;第二个训练过程通过离线纹理锚点映射,找出样本对应的最近锚点,还要找出锚点对应的最近样本,认为每一对字典原子为一个锚点,代表一种纹理类型;

s2:将低分辨率输入图像进行卡通纹理分解;

s3:基于改进的全变分正则化方法重建出低分辨率卡通图像对应的高分辨率卡通图像;

s4:通过改进的基于外部训练样本纹理锚点映射矩阵的超分辨率方法重建出低分辨率纹理图像对应的高分辨率纹理图像;

s5:将重建出的卡通图像与纹理图像进行相加输出要得到的高分辨率图像。

进一步,所述步骤s1具体包括以下步骤:

s11:收集高分辨率训练图像,然后对每一幅高分辨率训练图像进行卡通纹理分解,得到高分辨率训练纹理图像和高分辨率训练卡通图像,通过k-奇异值分解算法训练高低分辨率纹理字典对,并将训练结果存储在参数库中;

s12:对每一幅分解得到的高分辨率训练纹理图像实施如下步骤:

步骤(1)将高分辨率训练纹理图像切割成高和宽分别能被放大倍数整除的图像y;

步骤(2)对图像y进行采样得到低分辨率纹理图像yl;然后通过双立方插值算法,将低分辨率纹理图像yl进行图像放大,并将放大后的图像表示为ym;

步骤(3)使用f1=[-101]对图像ym进行卷积,得到图像ym的一阶垂直梯度图像使用f2=[-101]t对图像ym进行卷积,得到图像ym的一阶水平梯度图像使用f3=[-1020-1]对图像ym进行卷积,得到图像ym的二阶垂直梯度图像使用f4=[-1020-1]t对图像ym进行卷积,得到图像ym的二阶水平梯度图像分别分为n个图像块,将对应位置的图像块都变成列向量,再将四个列向量连接为一个列向量,并通过主成分分析算法来完成这些向量的降维,记这些向量为低频特征向量其中,n表示训练样本的数目;

步骤(4)将高分辨率图像y与放大后的图像ym进行减法操作,得到具有高频信息的图像yh,数学公式如式(1)所示:

y-ym=yh(1)

然后将图像yh分为n块,得到图像块集合pil和pih形成了样本对,n个训练样本对形成样本对集合

步骤(5)对每一个训练样本和每一个锚点分别进行标号;

步骤(6)计算每一个样本与第α个锚点的欧式距离,其中,α=1,2,3···m,m表示锚点的个数,将距离按从小到大的顺序进行排序,然后按此顺序将样本进行排序并记录其标号;将前n个样本号码按顺序分别记为α1,α2···αn,将锚点α对应的与其最近的n个样本号码形成的集合记为ωα,则得到ωα={αw|w=1,2,3···n};

步骤(8)计算每一个锚点与样本αw的欧式距离,将距离按从小到大的顺序进行排序,然后按此顺序将锚点进行排序并记录其标号,将前m个锚点号码形成的集合记为γ,则得到样本αw对应的与其最近的m个锚点形成的集合即γ;如果集合γ中包括α,则将αw记入最终的第α个锚点的匹配样本号码集重复该步骤直到确定所有ωα中的样本是否能计入当确定中的所有样本号码之后,将这些号码对应的样本对记为将所有号码在中低分辨率特征样本合并为矩阵,记为合并的方法是将作为的每一列,将所有号码在中高分辨率特征样本合并为矩阵,记为作为的每一列;重复操作步骤(7)和步骤(8),直到将m个锚点对应的样本集找完;

步骤(9)根据以上步骤得出计算映射矩阵λα,数学表达式如式(2)所示。

其中,表示的是对应低分辨率空间的邻域,表示的是对应高分辨率空间的邻域,λα表示的是从低分辨率空间到高分辨率空间的映射矩阵,i表示单位矩阵,λ表示的是拉格朗日乘子。最后将训练结果储存到参数库中。

进一步,所述步骤s2具体步骤如下:

步骤(1)输入低分辨率测试图像;

步骤(2)将低分辨率测试图像切割为图像块,记图像块集合为其中,h表示分块数目,并用这h个图像块训练一个低分辨率字典a,其训练过程采用k-奇异值分解方法;

步骤(3)设定一个纹理/卡通原子的阈值e;

步骤(4)将低分辨率字典a的第g个原子排成方阵ag;

步骤(5)使用g1=[1-1]对方阵ag进行卷积,得到方阵ag的一阶垂直梯度矩阵使用g2=[1-1]t对方阵ag进行卷积,得到方阵ag的一阶水平梯度矩阵

步骤(6)使用如下公式计算第g个原子对应的参数μg:

步骤(7)重复步骤(4)、(5)、(6)直到完成所有原子对应的参数μ的计算;

步骤(8)将所有原子对应的参数μ进行比较,将其中参数值最大的记为

步骤(9)使用如下公式计算第g个原子对应的活性qg;

步骤(10)判断第g个原子对应的活性qg是否满足下列不等式:

qg≤e(5)

如果满足则将该原子归属于卡通字典原子;如果不满足则将该原子归属于纹理字典原子。

步骤(11)通过以上步骤就将整体字典a分解为卡通字典ac和纹理字典at;

步骤(12)通过下面的公式分别得到卡通字典ac和纹理字典at所对应的稀疏表示系数;

其中,u表示测试图像,λ表示拉格朗日乘子,ac表示卡通字典,at表示纹理字典,xc表示卡通部分对应的稀疏表示系数,xt表示纹理部分对应的稀疏表示系数。

步骤(13)通过下面的公式分别得到卡通图像uc和纹理图像ut;

进一步,所述步骤s3输入低分辨率卡通测试图像uc,对图像uc进行η次迭代,得到高分辨率卡通图像,具体迭代步骤如下:

步骤(1)通过双立方插值将低分辨率卡通图像uc进行放大,并将放大后的图像表示为然后将放大后的图像下采样得到图像并对低分辨率卡通图像uc和下采样得到图像做减法,得到图像

步骤(2)将低分辨率卡通图像放大后的图像的第i行第j列的像素值表示为通过模板z1=[-101]t对图像进行模板加权运算,得到偏导数学表达式如下式所示:

步骤(3)通过模板z2=[-101]对图像进行模板加权运算,得到偏导数学表达式如下式所示:

步骤(4)通过使用模板z3=[-1020-1]t对图像进行模板加权运算,得到偏导数学表达式如下式所示:

步骤(5)通过模板z4=[-1020-1]对图像进行模板加权运算,得到偏导数学表达式如下式所示:

步骤(6)通过模板z1=[-101]t,z2=[-101],z5=[10-1]t,z6=[10-1]对图像进行模板加权运算,得到偏导数学表达式如下式所示:

步骤(7)当迭代次数小于10次时使用如下公式计算参数φj

当迭代次数大于10次时使用如下公式计算参数φj

步骤(8)将与高斯低通滤波器做卷积运算得到

步骤(9)将与高斯低通滤波器做卷积运算得到

步骤(10)高分辨率卡通图像的迭代公式为:

其中,j表示这次迭代的迭代次数,λ表示的是拉格朗日乘子,γ是一个正参数。

进一步,步骤s4包括以下步骤:

步骤(1)输入低分辨率的纹理测试图像ut,通过双立方插值进行图像放大,并将放大后的图像表示为

步骤(2)使用f1=[-101]对图像进行卷积,得到图像的一阶垂直梯度图像使用f2=[-101]t对图像进行卷积,得到图像的一阶水平梯度图像使用f3=[-1020-1]对图像进行卷积,得到图像的二阶垂直梯度图像使用f4=[-1020-1]t对图像进行卷积,得到图像的二阶水平梯度图像分别分为m个图像块,将对应位置的图像块都变成列向量,再将四个列向量连接为一个列向量,并通过主成分分析算法来完成这些向量的降维,记这些向量为低频特征向量其中,r表示分块的数目;

步骤(3)根据训练好映射矩阵集重建出具有高频分量的高分辨率块pih,h,重建公式如下所示:

pih,h=λα×pil,t(19)

步骤(4)将低频分量加到每一个重建的高分辨率块pih,h上,得到最终的高分辨率纹理块公式如下所示;

pih,h,t=pil,t+pih,h(20)

步骤(5)通过将高分辨率纹理块放到合适的位置上并平均重叠区域输出高分辨率纹理图像。

本发明一种基于卡通纹理分解的图像超分辨率重建方法,先将测试图像分解为卡通和纹理两部分,根据这两部分各自的特点分别采用改进的全变分正则化方法和改进的基于外部训练样本纹理锚点映射矩阵的超分辨率方法,这样可以将改进的全变分正则化方法和改进的基于外部训练样本纹理锚点映射矩阵的超分辨率方法有效结合,既具有较好的去噪能力和较强的边缘保持能力,又具有良好的适应性和鲁棒性。

【附图说明】

图1是本发明提出的一种基于卡通纹理分解的图像超分辨率重建方法的总体流程图;

图2测试图像分解为卡通与纹理这一步骤的算法的流程图;

图3训练过程中训练样本对这一过程的流程图;

图4本发明所使用的锚点映射方法的流程图;

图5本发明所使用的改进的全变分正则化方法的流程图;

图6是将测试图像分解为卡通与纹理的实验结果图;

图7是本发明所提方法的实验结果图;

图8是各种算法重建图像的峰值信噪比(psnr)比较结果图;

【具体实施方式】

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面对本发明作进一步的详细说明。

如图1所示,本发明公开了一种基于卡通纹理分解的图像超分辨率重建方法,具体步骤如下:

s1:离线训练过程包括两个训练过程。第一个训练过程是通过k-奇异值分解算法训练出高低分辨率纹理字典对;第二个训练过程是离线纹理锚点映射,这一过程中的锚点映射方法与传统的锚点映射方法显著不同。本锚点映射方法不仅找样本对应的最近锚点,还要找锚点对应的最近样本,来完成锚点映射这一过程。认为每一对字典原子为一个锚点,代表一种纹理类型。

具体的实施步骤如下:

s11:收集大量的高分辨率训练图像,然后对每一幅高分辨率训练图像进行卡通纹理分解,得到高分辨率训练纹理图像和高分辨率训练卡通图像。本发明中所用的高分辨率训练图像是从网上下载得到的。通过k-奇异值分解算法训练高低分辨率纹理字典对,并将训练结果存储在参数库中。

如图3所示,s12:对每一幅分解得到的高分辨率训练纹理图像实施如下步骤:

步骤(1)将高分辨率训练纹理图像切割成高和宽分别能被放大倍数整除的图像y。

步骤(2)对图像y进行下采样操作得到低分辨率纹理图像yl。然后通过双立方插值算法,将低分辨率纹理图像yl进行图像放大,并将放大后的图像表示为ym。

步骤(3)使用f1=[-101]对图像ym进行卷积,得到图像ym的一阶垂直梯度图像使用f2=[-101]t对图像ym进行卷积,得到图像ym的一阶水平梯度图像使用f3=[-1020-1]对图像ym进行卷积,得到图像ym的二阶垂直梯度图像使用f4=[-1020-1]t对图像ym进行卷积,得到图像ym的二阶水平梯度图像分别分为n个图像块,将对应位置的图像块都变成列向量,再将四个列向量连接为一个列向量,并通过主成分分析算法来完成这些向量的降维,记这些向量为低频特征向量其中,n表示训练样本的数目。

步骤(4)将高分辨率图像y与放大后的图像ym进行减法操作,得到具有高频信息的图像yh。数学公式如下所示。

y-ym=yh(1)

然后将图像yh分为n块,得到图像块集合pil和pih形成了样本对,n个训练样本对形成了样本对集合

如图4所示,步骤(5)对每一个训练样本和每一个锚点都分别进行标号。

步骤(6)计算每一个样本与第α个锚点的欧式距离(其中,α=1,2,3···m,m表示锚点的个数),将距离按从小到大的顺序进行排序,然后按此顺序将样本进行排序并记录其标号。将前n个样本号码按顺序分别记为α1,α2···αn,将锚点α对应的与其最近的n个样本号码形成的集合记为ωα。则得到ωα={αw|w=1,2,3···n}。

步骤(8)计算每一个锚点与样本αw的欧式距离,将距离按从小到大的顺序进行排序,然后按此顺序将锚点进行排序并记录其标号。将前m个锚点号码形成的集合记为γ,则得到样本αw对应的与其最近的m个锚点形成的集合即γ。如果集合γ中包括α,则将αw记入最终的第α个锚点的匹配样本号码集重复该步骤直到确定所有ωα中的样本是否能计入当确定中的所有样本号码之后,将这些号码对应的样本对记为将所有号码在中低分辨率特征样本合并为矩阵,记为合并的方法是将作为的每一列。将所有号码在中高分辨率特征样本合并为矩阵,记为合并的方法是将作为的每一列。重复操作步骤(7)和步骤(8),直到将m个锚点对应的样本集找完。

步骤(9)根据以上步骤得出计算映射矩阵λα。数学表达式如下所示。

其中,表示的是对应低分辨率空间的邻域,表示的是对应高分辨率空间的邻域,λα表示的是从低分辨率空间到高分辨率空间的映射矩阵,i表示单位矩阵,λ表示的是拉格朗日乘子。最后将训练结果储存到参数库中。

s2:将低分辨率输入图像进行卡通纹理分解。

如图2所示,具体的实施步骤如下:

步骤(1)输入低分辨率测试图像。

步骤(2)将低分辨率测试图像切割为图像块,记图像块集合为其中,h表示分块数目。并用这h个图像块训练一个低分辨率字典a,其训练过程采用k-奇异值分解方法。

步骤(3)设定一个纹理/卡通原子的阈值e。

步骤(4)将低分辨率字典a的第g个原子排成方阵ag。

步骤(5)使用g1=[1-1]对方阵ag进行卷积,得到方阵ag的一阶垂直梯度矩阵使用g2=[1-1]t对方阵ag进行卷积,得到方阵ag的一阶水平梯度矩阵

步骤(6)使用如下公式计算第g个原子对应的参数μg:

步骤(7)重复步骤(4)、(5)、(6)直到完成所有原子对应的参数μ的计算。

步骤(8)将所有原子对应的参数μ进行比较,将其中参数值最大的记为

步骤(9)使用如下公式计算第g个原子对应的活性qg。

步骤(10)判断第g个原子对应的活性qg是否满足下列不等式:

qg≤e(5)

如果满足则将该原子归属于卡通字典原子;如果不满足则将该原子归属于纹理字典原子。

步骤(11)通过以上步骤就可以将整体字典a分解为卡通字典ac和纹理字典at。

步骤(12)通过下面的公式分别得到卡通字典ac和纹理字典at所对应的稀疏表示系数。

其中,u表示测试图像,λ表示拉格朗日乘子,ac表示卡通字典,at表示纹理字典,xc表示卡通部分对应的稀疏表示系数,xt表示纹理部分对应的稀疏表示系数。

步骤(13)通过下面的公式分别得到卡通图像uc和纹理图像ut。

s3:基于一种改进的全变分正则化方法重建出低分辨率卡通图像对应的高分辨率卡通图像。

对步骤s3进一步详细说明:输入低分辨率卡通测试图像uc,对图像uc进行η次迭代,得到高分辨率卡通图像。

如图5所示,第j步具体迭代步骤如下所示。

步骤(1)通过双立方插值将低分辨率卡通图像进行放大,并将放大后的图像表示为然后将放大后的图像下采样得到图像并对低分辨率卡通图像和下采样得到图像做减法,得到图像数学表达式如下式所示。

步骤(2)将低分辨率卡通图像放大后的图像的第i行第j列的像素值表示为通过使用模板z1=[-101]t对图像进行模板加权运算,得到偏导数学表达式如下式所示。

步骤(3)通过使用模板z2=[-101]对图像进行模板加权运算,得到偏导数学表达式如下式所示。

步骤(4)通过使用模板z3=[-1020-1]t对图像进行模板加权运算,得到偏导数学表达式如下式所示。

步骤(5)通过使用模板z4=[-1020-1]对图像进行模板加权运算,得到偏导数学表达式如下式所示。

步骤(6)通过使用模板z1=[-101]t,z2=[-101],z5=[10-1]t,z6=[10-1]对图像进行模板加权运算,得到偏导数学表达式如下式所示。

步骤(7)当迭代次数小于10次时使用如下公式计算参数φj

当迭代次数大于10次时使用如下公式计算参数φj

步骤(8)将与高斯低通滤波器做卷积运算得到

步骤(9)将与高斯低通滤波器做卷积运算得到

步骤(10)高分辨率卡通图像的迭代公式为:

其中,j表示这次迭代的迭代次数,λ表示的是拉格朗日乘子,γ是一个正参数。

s4:通过一种改进的基于外部训练样本纹理锚点映射矩阵的超分辨率方法重建出低分辨率纹理图像对应的高分辨率纹理图像。对步骤s4实施如下步骤:

步骤(1)输入低分辨率的纹理测试图像ut,通过双立方插值进行图像放大,并将放大后的图像表示为

步骤(2)使用f1=[-101]对图像进行卷积,得到图像的一阶垂直梯度图像使用f2=[-101]t对图像进行卷积,得到图像的一阶水平梯度图像使用f3=[-1020-1]对图像进行卷积,得到图像的二阶垂直梯度图像使用f4=[-1020-1]t对图像进行卷积,得到图像的二阶水平梯度图像分别分为m个图像块,将对应位置的图像块都变成列向量,再将四个列向量连接为一个列向量,并通过主成分分析算法来完成这些向量的降维,记这些向量为低频特征向量其中,r表示分块的数目。

步骤(3)根据训练好映射矩阵集重建出具有高频分量的高分辨率块pih,h。重建公式如下所示。

pih,h=λα×pil,t(19)

步骤(4)将低频分量加到每一个重建的高分辨率块pih,h上,得到最终的高分辨率纹理块公式如下所示。

pih,h,t=pil,t+pih,h(20)

步骤(5)通过将高分辨率纹理块放到合适的位置上并平均重叠区域输出高分辨率纹理图像。

s5:将重建出的卡通图像与纹理图像进行相加从而输出想要得到的高分辨率图像。

如图6-8所示,本发明通过计算峰值信噪比(psnr)来衡量超分辨率图像重建的结果。

均方误差(mse)反映了原始图像与待评价图像之间的差异性,其计算公式如下式所示。

其中,ξ为图像数据的行、列数,xi,j为原始图像第i行第j列的像素值,yi,j为待评价图像第i行第j列的像素值。

峰值信噪比(psnr)反映了待评价图像的逼真度,其计算公式如下式所示。

其中,l表示像素点的动态变化范围。

以上所述是本发明的优选实施方式,通过上述说明内容,本技术领域的相关工作人员可以在不偏离本发明技术原理的前提下,进行多样的改进和替换,这些改进和替换也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1