一种基于非局部约束稀疏表示的SAR图像去噪方法
技术领域
本发明属于数字图像处理方法,具体涉及一种基于非局部约束稀疏表示的SAR图像去噪方法。
背景技术
SAR图像因其特殊的成像原理,不可避免地带有一定的斑点噪声,影响了图像信息的提取与解读,因此在进行进一步的处理之前,对SAR图像进行去噪处理是十分必要的。传统的去噪方法主要有空间域滤波,小波变换等方法。然而这些传统的方法在进行SAR图像去噪的时候,往往会造成细节信息的丢失和去噪不完全,难以取得良好的去噪效果。
近年来,稀疏表示方法开始被应用于图像去噪方面。相比于基于像素点的滤波,基于图像块的稀疏表示方法在保留图像结构信息方面具有天然的优势。在稀疏字典的选择上,通过作为训练样本的图像块学习得到的字典,相比于由固定函数生成的字典更够更好地恢复图像中的结构信息。K-SVD字典训练方法为从训练样本集中学习得到用于稀疏表示的字典提供了有效的途径,以大量无噪声图像块训练得到的通用字典在去除高斯白噪声方面取得了良好的效果。基于相似块聚类的联合稀疏表示方法将图像的自相似性引入稀疏表示过程,进一步改进了稀疏表示的结果。
然而在SAR图像去噪中,由于成像原理的不同,无噪声的自然图像往往难以训练出好的字典。而SAR图像样本本身是含有噪声的,这使得以这些样本训练得到的字典也含有噪声。这就使得现有的稀疏表示去噪方法难以在保持图像细节的同时有效地去除噪声。
发明内容
要解决的技术问题
为了避免现有技术的不足之处,本发明提出一种基于非局部约束稀疏表示的SAR图像去噪方法,使稀疏表示方法能够更好地应用于SAR图像去噪。
技术方案
一种基于非局部约束稀疏表示的SAR图像去噪方法,其特征在于步骤如下:
步骤1:将待去噪SAR图像I0以给定步长分解成为固定大小为b×b相互重叠的图像块,并将图像块按列拉伸,得到列向量形式的图像块集合X;所述步长小于b;
步骤2:对于图像块集合X中的每个图像块xi,在图像I0中位于图像块xi的周围大小为M×M的区域内,寻找N个与xi灰度值欧氏距离最小的相似图像块,得到相似块集合Xj,并计算xi与Xj中每个相似块图像块xj的相似度权值其中:Wi={wij|j=1,2...N},σ=h1b,h1=16~48;所述b=8~12;
步骤3:在图像块集合X中,随机选取c个图像块作为训练样本T,以KSVD方法对训练样本T进行学习得到字典D,步骤如下:
步骤a、从训练样本T中随机选取g个样本作为初始字典D;
步骤b、对于T中的每一个训练样本ti,初始化残差ri=ti,初始化子字典Si=[];
步骤c、计算残差ri与字典D中每个原子dk的内积绝对值pk=|<ri,dk>|;
步骤d、令P={pk|k=1,2...g},pmax=max(P),选择对应pmax的原子dmax加入子字典Si;
步骤e、计算对应系数αs,i'=Si+ti,并更新ri=ti-Siαs,i',Si+为Si的伪逆;
步骤f、重复步骤c~e,直到残差||ri||≤ε或达到稀疏表示系数上限SPmax;
步骤g、将表示系数αs,i'作为对应原子的系数,其余系数置零,得到稀疏表示αt,i;
步骤h、重复步骤b~g,直到得到所有训练样本T的表示系数At={at,i};
步骤i、对于字典D中每个原子di,选取训练样本中所有di对应系数不为零的样本构成的集合Ti;
步骤j、计算其中Γj是di以外的原子dj在Ti中对应的表示系数;
步骤k、更新其中gi是原子di在Ti中对应的表示系数;
步骤l、更新gi=EiTdi,Ei T为Ei的转置;
步骤m、重复步骤i~l直到所有原子更新完毕;
步骤n、重复步骤b~m直到达到迭代上限Lmax,得到训练完成的字典D;
步骤4:以字典D对每个图像块xi在相似块的约束下进行稀疏表示,得到稀疏表示系数αi,步骤如下:
步骤a、对于图像块集合X中每个图像块xi,以及其相似块集合Xj,初始化残差ri=xi,Rj=Xj,初始化子字典Si=[];
步骤b、计算残差ri与字典D中每个原子dk的内积<ri,dk>,以及每个相似块残差rj对应的内积<rj,dk>;
步骤c、计算内积绝对值加权和
步骤d、令P={pk|k=1,2...g},pmax=max(P),选择对应pmax的原子dmax加入子字典Si;
步骤e、计算对应系数αi'=Si+xi,Aj'=Si+Xj并更新ri=ti-Siαi',Rj=Xj-SiAj';
步骤f、重复步骤b~e,直至||ri||≤ε或||αi'||0=SPmax,其中ε=h3b2,h3=16~48;
步骤g、将表示系数αi'作为对应原子的系数,其余系数置零,得到稀疏表示αi;
步骤h、重复步骤a~g直至得到所有图像块的表示系数A={ai};
步骤i、通过Y=DA得到重构后的图像块集合Y;
步骤5:将重构后的图像块集合Y重新组合为图像I,重叠部分取平均值,得到去噪后的SAR图像。
所述图像为定义在R2上的含有相干斑噪声的SAR图像I0,每幅图像都对应一个矩阵,图像中的每个像素对应矩阵中相应的一个元素。
所述以给定步长为1或2。
所述M=50~100,N=4~8。
所述c个图像块的c=5000~20000。
所述g个样本的g=1024~4096。
所述步骤中f的ε=16*b2~64*b2,SPmax=2*b。
所述步骤n中的迭代上限Lmax=10。
有益效果
本发明提出的一种基于非局部约束稀疏表示的SAR图像去噪方法,以源图像中的随机选取的图像块作为训练样本进行字典学习。在对每一个图像块进行重构时,以其周围区域内最相似的若干图像块,并赋予每个相似块基于相似度的高斯核权重,进行同稀疏表示后仅保留当前块的表示系数作为最终结果。该方法能够通过字典训练有效地获取源图像中的结构信息,在有效去除噪声的同时保留更多的图像细节,达到更好地去噪效果。
本发明的有益效果是:通过相似块的约束,使得每个图像块在稀疏重构的过程中优先恢复主要信息,同时更多地保留自身的特征,在有效去除噪声的同时,保留了更多的细节信息,进一步提高了图像质量。
附图说明
图1:本发明基于非局部约束稀疏表示的SAR图像去噪方法的流程图。
具体实施方式
现结合实施例、附图对本发明作进一步描述:
本发明实施例解决其技术问题所采用的技术方案:一种基于非局部约束稀疏表示的SAR图像去噪方法,主要包括以下步骤:
1、将待去噪SAR图像I0以给定步长分解成为固定大小的图像块集合X,并将X中的每个图像块按列拉伸,转化为列向量形式。
2、对于X中每个图像块xi,从其在I0中的相邻区域内寻找其若干最相似的图像块Xj,并计算每个相似块xj所对应的权值wij。
3、从图像块集合X中随机选取一部分图像块T作为训练样本,以KSVD方法进行训练,得到字典D。
4、以步骤4中训练好的字典D,对图像块集合X中的每个图像块xi在其相似块Xj的约束下进行稀疏重构,得到重构后的图像块集合Y。
5、将重构后的图像块集合Y重新组合为图像,重叠部分取平均值,得到去噪后的SAR图像I。
具体步骤如下:
步骤1:将待去噪SAR图像I0以给定步长分解成为固定大小为b×b相互重叠的图像块,并将图像块按列拉伸,得到列向量形式的图像块集合X,其中b=10;
步骤2:对于图像块集合X中的每个图像块xi,在图像I0中位于图像块xi的周围大小为M×M的区域内,寻找N个与xi灰度值欧氏距离最小的相似图像块,得到相似块集合Xj,并计算xi与Xj中每个相似块图像块xj的相似度权值其中:Wi={wij|j=1,2...N},σ=h1b,h1=32,M=50,N=7;
步骤3:在图像块集合X中,随机选取c个图像块到训练样本T,其中c=10000。以KSVD方法对训练样本T进行学习得到字典D,步骤如下:
步骤a、从训练样本T中随机选取g个样本作为初始字典D,其中g=1024;
步骤b、对于T中的每一个训练样本ti,初始化残差ri=ti,初始化子字典Si=[];
步骤c、计算残差ri与字典D中每个原子dk的内积绝对值pk=|<ri,dk>|;
步骤d、令P={pk|k=1,2...g},pmax=max(P),选择对应pmax的原子dmax加入子字典Si;
步骤e、计算对应系数αs,i'=Si+ti,并更新ri=ti-Siαs,i',Si+为Si的伪逆;
步骤f、重复步骤c~e,直到残差||ri||≤ε或达到稀疏表示系数上限SPmax,ε=32*b2,SPmax=2*b;
步骤g、将表示系数αs,i'作为对应原子的系数,其余系数置零,得到稀疏表示αt,i;
步骤h、重复步骤b~g,直到得到所有训练样本T的表示系数At={at,i};
步骤i、对于字典D中每个原子di,选取训练样本中所有di对应系数不为零的样本构成的集合Ti;
步骤j、计算其中Γj是di以外的原子dj在Ti中对应的表示系数;
步骤k、更新其中gi是原子di在Ti中对应的表示系数;
步骤l、更新gi=Ei Tdi,Ei T为Ei的转置;
步骤m、重复步骤i~l直到所有原子更新完毕;
步骤n、重复步骤b~m直到达到迭代上限Lmax,得到训练完成的字典D,其中Lmax=10;
步骤4:以字典D对每个图像块xi在相似块的约束下进行稀疏表示,得到稀疏表示系数αi,步骤如下:
步骤a、对于图像块集合X中每个图像块xi,以及其相似块集合Xj,初始化残差ri=xi,Rj=Xj,初始化子字典Si=[];
步骤b、计算残差ri与字典D中每个原子dk的内积<ri,dk>,以及每个相似块残差rj对应的内积<rj,dk>;
步骤c、计算内积绝对值加权和
步骤d、令P={pk|k=1,2...g},pmax=max(P),选择对应pmax的原子dmax加入子字典Si;
步骤e、计算对应系数αi'=Si+xi,Aj'=Si+Xj并更新ri=ti-Siαi',Rj=Xj-SiAj';
步骤f、重复步骤b~e,直至||ri||≤ε或||αi'||0=SPmax,其中ε=h3b2,h3=32;
步骤g、将表示系数αi'作为对应原子的系数,其余系数置零,得到稀疏表示αi;
步骤h、重复步骤a~g直至得到所有图像块的表示系数A={ai};
步骤i、通过Y=DA得到重构后的图像块集合Y;
步骤5:将重构后的图像块集合Y重新组合为图像I,重叠部分取平均值,得到去噪后的SAR图像。