压缩感知的重构算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

压缩感知的重构算法
算法的重构是压缩感知中重要的一步,是压缩感知的关键之处。

因为重构算法关系着信号能否精确重建,国内外的研究学者致力于压缩感知的信号重建,并且取得了很大的进展,提出了很多的重构算法,每种算法都各有自己的优缺点,使用者可以根据自己的情况,选择适合自己的重构算法,大大增加了使用的灵活性,也为我们以后的研究提供了很大的方便。

压缩感知的重构算法主要分为三大类:
1.组合算法
2.贪婪算法
3.凸松弛算法
每种算法之中又包含几种算法,下面就把三类重构算法列举出来。

组合算法:先是对信号进行结构采样,然后再通过对采样的数据进行分组测试,最后完成信号的重构。

(1) 傅里叶采样(Fourier Representaion)
(2) 链式追踪算法(Chaining Pursuit)
(3) HHS追踪算法(Heavy Hitters On Steroids)
贪婪算法:通过贪婪迭代的方式逐步逼近信号。

(1) 匹配追踪算法(Matching Pursuit MP)
(2) 正交匹配追踪算法(Orthogonal Matching Pursuit OMP)
(3) 分段正交匹配追踪算法(Stagewise Orthogonal Matching Pursuit StOMP)
(4) 正则化正交匹配追踪算法(Regularized Orthogonal Matching Pursuit ROMP)
(5) 稀疏自适应匹配追踪算法(Sparisty Adaptive Matching Pursuit SAMP)
凸松弛算法:
(1) 基追踪算法(Basis Pursuit BP)
(2) 最小全变差算法(Total Variation TV)
(3) 内点法(Interior-point Method)
(4) 梯度投影算法(Gradient Projection)
(5) 凸集交替投影算法(Projections Onto Convex Sets POCS)算法较多,但是并不是每一种算法都能够得到很好的应用,三类算法各有优缺点,组合算法需要观测的样本数目比较多但运算的效率最高,凸松弛算法计算量大但是需要观测的数量少重构的时候精度高,贪婪迭代算法对计算量和精度的要求居中,也是三种重构算法中应用最大的一种。

下面分别就贪婪算法中的MP,OMP算法以及凸松弛算法中的BP算法进行详细的介绍。

三种重建算法
本节主要是介绍一些基本的重建算法,比如贪婪迭代算法中的匹配追踪算法,正交匹配追踪算法,以及凸松弛算法中的基追踪算法,对其原理进行了介绍,并用matlab代码重构出来一维和二维的图形,进而比较这几种算法的性能。

1.匹配追踪算法(Matching Pursuit MP )
匹配追踪算法是Mallat 和ZHANG 在小波分析的基础上提出的,是贪婪迭代算法中的比较基本的算法,有其显著的特点,是学习研究贪婪算法的基础。

1.1 MP 算法的原理
x y Φ=,其中测量矩阵Φ又称为过完备字典,每一列被称为一个原子,则测量矩阵中有n 个原子,而y 的长度为m ,原子的个数远远大于信号的长度,即m<<n ,因此测量矩阵又称为过完备字典。

信号y 在测量矩阵上进行分解,Φ可以用{ϕϕn ...1}来表示,单位向
量长度为1,要对过完备字典的原子进行归一化处理。

MP 算法的基本思想:
从观测矩阵(过完备字典)中选择一个与信号y 相关性最大(最匹配)的原子,也就是观测矩阵中的一列,构建信号的稀疏逼近,求出信号的残差,重复上面的操作,继续选择与信号残差最匹配的一个原子,如此反复迭代直到达到迭代次数,最后信号y 就可以表示为这些原子的线性组合。

MP 进行稀疏分解的步骤[1][2]:
从观测矩阵中选择一个与信号y 最匹配的原子,也就是内积最大的一个原子,即:
|<y,ϕΓ0>|=sup )
,...1(n i ∈|<y,ϕi >| (1) 其中,Γ0表示字典矩阵的列索引。

先将信号y 投影到向量 Φ∈Γϕ0
上,信号y 也可以表示为:
R y y 100,+Γ>Γ=<ϕϕ (2)
(2)式等号右边的第一项为观测矩阵中最匹配原子
ϕΓ0的垂直投影分量,等式右边的第二项R 1是y 通过ϕΓ0分解后的残差,且与y 正交。

(2)式可以写为:
|||||,|||||1022
2R y y +Γ=><ϕ (3) 对残差R 1进行上面同样的分解,在第n 次迭代过程中:
R R R n n n n
n 1,++Γ>Γ=<ϕϕ (4) 因为R n 和ϕΓn 正交,则(4)式可以表示为: |||||,|||||1222R R R n n
n n ++Γ=><ϕ (5) 最后,信号y 可以表示为:
R y n i n i i i y 10,+=+Γ>Γ<
=∑ϕϕ (6)
因为最后的残差R n 1+正交于上次迭代产生的残差R n ,则最后的表达式为:
|||||,|||||12
2
2R y y n i n o i ++Γ=><∑=ϕ (7) 由(7)式可知,当残差R n 1+为零时,可以得到信号的精确分解。

定理1[3] 存在0>λ,使得一切对于0≥n 时,有||||||||21y n n R λ-+≤成立。

这样(7)式中,||||1R n +按照指数衰减的形式趋于零,也就是
|,|||||2
02
><∑Γ==ϕi y y n i 成立。

参考文献:
[1] 曹离然.面向压缩感知的稀疏信号重建算法研究.[D].哈尔滨工业大学,2011.
[2] Y .C.PATI.Orthogonal Matching Pursuit: Recursive Function Approximation with Applications to Wavelet Decomposition.IEEE.1993:40-44
[3] 韩红平.压缩感知中信号重构算法的研究.[D].南京邮电大学,2012.
1.2 MP 算法的理论框图
根据上面的MP 算法的原理,得出MP 算法的理论图[1],这样更容易理解。

图1:MP算法框图
参考文献:[1] 韩红平.压缩感知中信号重构算法的研究[D].南京邮电大学,2012
1.3 MP 算法的算法流程
根据1.2中介绍的MP 算法的理论框图,现在写出MP 算法的算法流程[1][2],这样让我们对MP 算法有一个更加清晰的理解。

输入:测量矩阵)(N M ⨯Φ,测量向量)1(⨯N y ,稀疏度k 输出:重构信号∧x
(1):初始化余量y r =0,迭代次数n=0 1;
(2):计算余量与测量矩阵的每一列的内积r g n T n 1-Φ=;共有N 个
内积数值。

(3):找出N 个g n 中的绝对值最大的元素)(k g n ,k 为对应的最大内积的列号。

(4):计算信号的近似解][][][1
k k k g x x n
n n +=-; (5):更新余量ϕk n n n k g r r ⋅-=-][1; (6):若满足迭代条件,则n=n+1,x n
x =∧,若不满足迭代条件则返回步骤(2);迭代次数为稀疏度的2倍。

参考文献:
[1] Linfeng Du,Rui Wang. Analysis on Greedy Reconstruction Algorithms Based on Compressed Sensing.[J].IEEE 2012:783-789
[2] 文首先.压缩感知匹配追踪算法的研究.[D].2013
1.4 MP 算法的信号重构
本节分别通过对一维离散信号,二维Lena 为例,进行MP 算法的信号重构。

(1)一维离散信号的MP算法仿真
本次仿真使用matlab随机生成的一维离散信号,稀疏度k=23,信号长度N=256,观测向量的长度M=80,那么采样率M/N=0.3,其中的观测矩阵 是高斯随机矩阵。

采用MP算法对一维信号进行重构,重构图如1:
图1:MP算法重构一维信号
通过上面的重构可以得出,MP算法对一维信号有很好的重构效果。

(2)二维lena图像的MP算法重构
我们上面的研究知道MP算法对一维信号有很好的重构作用,但是算法不只是要在一维信号中有好的重构功能,还要能很好的重构二维信号才可以,这样应用的范围才会更大。

我们知道压缩感知重构的是可压缩的稀疏信号,二维信号是不稀疏的,这就要在进行算
法重构的时候进行一些处理,我们可以先采用离散余弦变换(dct)使数据稀疏,算法重构结束之后再进行离散反余弦变换(idct),这样就转化为了我们所需要的。

本次在matlab中的仿真,我们采用的是256256
的Lena的二维图像,M=180,N=256,稀疏度k=40,M/N=0.7,观测矩阵是高斯随机矩阵,采用MP算法对二维图像进行重构,重构效果如图2(b):
(a)原始图片(b)MP算法重构
(M/N=0.7)
通过上面的(a)图和(b)图可知,采样率为0.7的时候,MP算法也能对二维图像进行精确重构。

2.正交匹配追踪算法(OMP)
2.1OMP算法的原理
OMP算法是在MP算法的基础上进行改进的,沿用了MP算法
的重构的思想,但是又对MP 算法进行了改进,使得算法的效率更高,应用更加的广泛。

MP 算法的信号分解中步骤中介绍:R y y 100,+Γ>Γ=<ϕϕ,这说
明信号在已经选择的原子上的投影(等是右边第一项)是非正交的,还存在着残差,也就是说每次迭代的过程是次最优的,不是最优解,要想最终的迭代收敛,需要的迭代次数较多。

OMP 算法就是根据MP 算法的不足之处加以改进,把所选择的原子首先通过Schimidt 正交化处理,使得在达到迭代条件的时候需要的迭代次数较MP 算法少,但是正交化的过程中会增加计算量。

在每一步中如何对选择的全部原子进行正交化处理呢?这是OMP 算法和MP 算法的不同之处。

下面介绍OMP 算法正交化原理[1]: 信号y 经k 步分解:
R a k k
n k n n y +Γ=∑=ϕ1且0,>=Γ<ϕn R k ,n=1,…,k (1)
(1)式和MP 算法的不同在于,MP 算法是残差和前面的一个分量正交,而OMP 算法是残差和前面的每个分量都正交。

k+1步分解为:
R a k k n k n n y 1111+++=+Γ=∑ϕ 且 0,1>=Γ<+ϕn
R k n=1,…,k+1 (2) k+1阶减去k 阶:
R R a a a k
k k k k n k n k n k n -+Γ+Γ-++++=+∑1111
11)(ϕϕ (3) 要想对选择的全部原子进行正交化处理,要求(3)式等于零。

测量
矩阵的原子不正交,为了说明(3)式等于零,下面引入一个辅助模型,模型表示的是ϕΓ+1
k 对前k 个项ϕΓn
(n=1,…,k )的依赖,数学
语言描述如下:
r b k k n k
n n
n +Γ=Γ
∑=+ϕ
ϕ1
1
且 <ϕ
Γn
r k , > =0,n=1,…,k (4)
ϕΓ
+1
k 在),...,(
1
ϕϕk
上张成的正交投影,等式右边的第二项是残差,
(4)式代入(3)式中:
0)()(11
11
11
1
=-++Γ+-++++++=∑R R r a b a a a k k k k k k
n k k k
n k n k
n n
ϕ
(5)
如果(6)和(7)式成立,则(5)式必然成立,
0111=+-+++b a a a
k
n k k k n k n (6)
01
11
=-++++R R
r a k k k
k k (7)
令a a k k k =++1
1,有:
b a a a k
n
k
k
n
k n
-=+1 n =1,…,k (8)
01
=-++R R r a k
n k
k n =1,…,k (9)
(8)和(9)两式成立,以上就是OMP 算法进行正交化的过程。

参考文献:
[1] Y .C.PATI.Orthogonal Matching Pursuit: Recursive Function Approximation
with
Applications
to
Wavelet
Decomposition.IEEE.1993:40-44
2.2 OMP 算法的流程图
和上面的MP 算法一样,我们同样画出OMP 算法的流程图,可
以让我们更加清晰的理解算法。

图:OMP算法的流程图
2.3 OMP算法的算法步骤
和MP算法一样,我们也在给出OMP算法的流程图之后,再给出OMP算法的算法步骤[1][2]。

输入:感知矩阵Φ(N
M⨯),测量向量y(1⨯
N),稀疏度K
输出:重构信号^ x
(1)初始化余量y r =0,迭代次数n=0,重建信号00
=x
,索引集
[]0


(2) 计算余量和测量矩阵每一列的内积:r g n T n
1-Φ=; (3) 找出g n
中绝对值最大的元素; (4) 更新原子组合}{1
ϕk
n n
⋃Γ=ΓΦ
Φ-和新索引集}{1k n n ⋃=ΓΓ-;
(5)利用最小二乘法计算信号的近似解:
y n T n T
n n
x ΦΦΦΓ
ΓΓ=-)
(1

(6) 计算更新余量:x r n n y Φ-=

(7) 更新迭代次数n=n+1,若满足迭代条件,则x
n
x =
^
;若不满足
迭代的的条件则返回(2),继续进行迭代;
参考文献[1] 文首先.压缩感知匹配追踪算法的研究. [D].2013 [2] Y .C.PATI.Orthogonal Matching Pursuit: Recursive Function Approximation
with
Applications
to
Wavelet
Decomposition.IEEE.1993:40-44
上面提到最小二乘法,首先我们先较少一下什么杀死最小二乘法,然后再说明一下为什么OMP 算法可以用最小二乘法就信号的解。

名词解释:最小二乘法
最小二乘法(最小平方法)是一种数学优化技术,它通过使数据误差的平方和最小来寻找数据的最佳函数匹配。

最小二乘准则:使全部样本观测值的残差平方和达到最小。


)
(^
min min 2
2
Y Y e i i i -∑
=∑来确定未知的参数,未知的参数
)
,...,,(10'
ααααk =,未知参数的估计为
),...,(^
^1^0'
^
ααααk =
,下面我们来推导二阶估计量的公式:
设所有残差的平方和为:^
'
'
'
'
'
'
2
2
^
^
1^
0^
^
2
^
),...,,()

αααααX Y Y e
i i i
Q X
X Y e Y Y e k +-==∑
=∑=-
其中,Y i 是第i 次的样本观测值,^
Y i 为相应的第i 次的样本估计值,
^
^21...αX Y Y Y e e e e n -=-=⎥⎥⎥⎥



⎢⎢⎢⎢⎢⎣⎡=,对上式进行求导,以便得到最小二乘估计值:
移项可得,
Y X X
X
'
^
'
=
α,在这里我们假定)
('
1
X X
-存在,用
)
('
1
X X -左乘上式的;两边,得到
α的最小二乘估计量,
Y X X X
'
1
^
)('
-=α,这个公式也就是
OMP 算法步骤中的步骤(5),
以上就证明了最小二乘法估计OMP 算法的方法。

2.4 OMP 算法的信号重构
本节对OMP 算法进行重构,采用一维离散信号和二维lena 信号
022)^
^
2
(^
'
'^
'
'
'
'
'
^
^
=+-=+
-∂∂=
∂∂ααα
α
ααX Y X Y Y Q X X X
X Y
对其进行信号重构,来观察OMP算法的重构功能。

(1)一维离散信号的OMP算法仿真
本次仿真使用matlab随机生成的一维离散信号,稀疏度k=15,信号长度N=512,观测向量的长度M=128,那么采样率M/N=0.25,其中的观测矩阵Φ是高斯随机矩阵。

采用OMP算法对一维信号进行重构,重构图如1:
图1:OMP算法重构一维信号
通过上面的重构可以得出,OMP算法对一维信号有很好的重构作用。

(2)二维lena图像的OMP算法重构
OMP算法对二维信号进行重构,在这里我们采取和MP算法二维信号重构的方法,也是先采取离散余弦变换(dct)使数据稀疏,算法重构结束之后再进行离散反余弦变换(idct),这样就转化为了我们所需要的。

本次在matlab中的仿真,我们采用的是256256
⨯的
Lena的二维图像,M=180,N=256,稀疏度k=40,M/N=0.7,观测矩阵是高斯随机矩阵,采用OMP算法对二维图像进行重构,重构效果如图2(b):
(a) 原始图像(b)OMP算法重构图片
(M/N=0.7)
通过上面(a)图和(b)图的重构可知,采样率为0.7的时候,OMP算法也能对二维信号很好的重构。

3 基追踪算法(BP)
压缩感知中很重要的一步就是重构算法,重构算法关系着重建信号的质量。

基追踪算法是凸松弛法是很有代表性的一种算法。

3.1 凸松弛法介绍
凸松弛法是信号在重构的过程中把重构问题由l0范数问题转化为了l1范数的凸优化问题。

下面首先介绍几个涉及到的概念。

凸优化:定义域是闭合的凸集;函数是定义域上的凸函数的最优化问题,只有两个条件同时满足才是凸优化。

凸集:数学定义,D 为集合
R N
D ∈,D x x ∈∀
2
1
,,]1,0[∈α,D x x ∈-+∃21)1(αα
凸集的几何意义:集合中的任意两点连线段都在集。

凸函数:凸集上的g (x )函数和任意的实数]1,0[∈α,D x x ∈2
1
,,
使)()1()())1((2
1
2
1
x x x x g g g αααα
-+≤-+成立,g (x )就是凸函数。

下面介绍一下0范数为什么可以用l 1范数进行求解,可以用l 2范数进行求解吗?首先给出这三个范数的统一的数学表达式: ||||min X T
p Φ s.t. X Y T
ψΦ= P=0,1,2
将三种范数投影到二维空间中,直线X Y T
ψΦ=在二维空间中是一条直线,图1是三种范数在二维空间构成的图形和直线之间的直观图。

(a ) (b ) (c )
图1:三种范数与直线的关系图
其中(a )是l 0范数与X Y T
ψΦ=直线关系图,(b )是l 1范数与
X Y T ψΦ=直线关系图,(c )是l 2范数与X Y T
ψΦ=直线关系图。

由(a )图可知,l 0范数在二维空间中是沿着坐标轴的两条垂直的线,直线向坐标原点逼近的时候首先是和坐标轴相交,这也就是我们所要求的稀疏的解;由(b )图可知,l 1范数在二维空间中的图形是一个如(b )图的菱形,排除直线和菱形的一条边平行的情况,直线向菱形逼近的过程中,首先相交于菱形的四个点,也就是坐标轴上的点,这也就是我们所要求的稀疏的解;由(c )图可知,l 2范数在二维空间中的图形是圆形,直线向圆形逼近的时候,直线和圆相交的点几乎都不在坐标轴上,只有直线和坐标轴平行的小概率的时候。

通过上面的介绍可以知道,可以用l 1范数来代替l 0范数进行求解。

3.2 BP 算法的原理
上节提到的
l
范数,由于我们所要求解的问题是方程的个数远远
大于未知数的个数,用l 0范数求解是很难求解出来的,这样就找到一种用l 1范数来代替l 0范数求解的方法,BP (Basis Pursuit )算法就是利用l 1范数求解的一种很好的方法。

BP 算法不是直接寻求信号的稀疏表示,只是表示的用于最小化的l 1的系数[1],通过等价信号的最小化的l 1范数表示[2]。

下面介绍BP 算法的原理。

BP 算法中l 0范数的模型为:
||||0
^
min x x = s.t.
x y Φ= (1)
l
范数是稀疏变换中不为零的个数,(1)式的求解比较困难,通过上
面的说明,l 0范数可以用l 1范数进行代替,则(1)式可以表示为:
||||1^
min x x = s.t.
x y Φ= (2)
(2)式表示的是理想的一种情况,在实际的应用中,会混入噪声,也就是:
noise x y +Φ= (3)
那么(2)式可表示为:
||||1^
min x x = s.t. ε≤Φ-||||2
x y (4)
(4)式中ε为噪声的能量。

由于实际模型中会混入噪声,这就需要一种抑制噪声的模型,也就是改进后的BP 算法,改进后的BP 算法对噪声有一定的抑制作用,那么改进后的模型为[3]:
||||||||12)2/1(min x x y x
κ+Φ- (5) 其中,(5)式的第一项是信号经观测矩阵之后的观测值,式子的第二项是噪声产生的观测值,
κ表示观测值中中非零元素的位置。

BP
算法中就把凸松弛算法转化为了线性规划问题求解,则(5)式可以转化为[1][3]:
||||min 2,2
1
p C
X T
p
x + s.t.
b p Ax =+δ 0≥x , 1=δ (6)
(6)式中,],...,,,,...,[2
1
2
1
ϕϕϕϕϕϕn
n
A ---← y b ←
]1,...,1,1[←c ],...,,[21αααn x ←
X c T
min 等价于最小化的l 1范数的系数,p 表示噪声产生的观测值。

参考文献:
[1] Patrick S.Huggins , Steven W. Zucker . Greedy Basis Pursuit.IEEE.2007,55(7):3760-3772
[2] S.S.Chen,”Basis Pursuit”Ph.D.dissertation , Dept.Statistics,Stanford University,Stanford,CA,1995.
[3] 文首先.压缩感知匹配追踪算法的研究.D.2013
3.3 BP算法的信号重构
本节对BP算法进行重构,采用一维离散信号和二维lena信号对其进行信号重构,来观察BP算法的重构功能。

(1)一维离散信号的BP算法仿真
本次仿真使用matlab随机生成的一维离散信号,稀疏度k=30,信号长度N=1000,观测向量的长度M=200,那么采样率M/N=0.2,其中的观测矩阵 是高斯随机矩阵。

采用BP算法对一维信号进行重构,重构图如图1:
图1:BP算法一维信号重构图
由图1可以得到,BP算法对一维信号有很好的重构功能。

(2)二维lena图像的BP算法重构
BP算法对二维信号进行重构,在这里我们采取和MP算法二维信号重构的方法,也是先采取离散余弦变换(dct)使数据稀疏,算法重构结束之后再进行离散反余弦变换(idct),这样就转化为了我们所需要的。

本次在matlab中的仿真,我们采用的是256256
的Lena 的二维图像,M=180,N=256,稀疏度k=40,M/N=0.7,观测矩阵是高斯随机矩阵,采用BP算法对二维图像进行重构,重构效果如图2(b):
(a) 原始图像(b)BP算法重构图片
(M/N=0.7)
通过上面(a)图和(b)图的重构可知,采样率为0.7的时候,BP算法也能对二维信号很好的重构。

本章小结
本章详细介绍了三种比较典型的重构算法,分别是MP,OMP,BP
算法,介绍了三种算法的原理,还有三种算法对一维信号和二维lena 信号的重建功能,得出结论是三种算法都有很好的信号重建的功能。

不同算法的比较
上一章中只是对三种算法的原理进行了详细的说明,并用matlab 验证三种算法可以对信号进行很好的重构,没有对算法进行分析,即采样率的不同对算法的影响和对lena信号重构的清晰度的影响。

在这一章中,就对三种重构算法进行分析。

1 采样率对三种算法的影响
1.1 采样率对MP算法的影响
我们先看一下采样率对一维信号的影响,首先用重构图来直观的区别一下,表1是MP算法中采样率对重构时间和误差的表格:
表1:MP算法采样率对重构时间和误差的影响
表1中测量了不同采样率对应的MP算法中重构的MSE和时间的值,从表格中可知,采样率越大,重构产生的MSE越小,重构的图形越接近原始图形,但是时间也会增大,增加了计算的复杂度。

下面我们再看一下采样率的不同对lena信号的影响,可以用采样率为0.3 0.5 0.8 这三个采样率,对比一下采样率的不同重构出来的图片的清晰度。

图3的(a)图是原始图片,(b)为采样率为0.3时的重构图,(c)图是采样率为0.5时的重构图,(d)图是采样率为0.8时的重构图。

(a)原始图片(b)MP重构图片(M/N=0.3)
(c)MP重构图片(M/N=0.5)(d)MP重构图片(M/N=0.8)
图3:MP重构的不同采样率的lena重构图形
由图3中的四个图片可知,采样率越大,重构的图形效果越好,在应
用的时候要想获得很好的重构图片就需要较高的采样率,但是所需要的时间也会越大。

1.2 采样率对OMP算法的影响
和MP算法一样,也是先对一维信号重构进行分析,表2是OMP 算法中采样率对重构的MSE和时间的对应表格:
表2:MP算法采样率对重构时间和误差的影响
表2中测量了不同采样率对应的OMP算法中重构的MSE和时间的值,从表格中可知,OMP算法和MP算法一样,也是采样率越大,重构产生的MSE越小,重构的图形越接近原始图形,但是时间也会增大,同样增加了计算的复杂度。

下面我们再看一下采样率的不同对lena信号的影响,同MP 算法一样,采用采样率为0.3 0.5 0.8 这三个采样率,对比一下采样率的不同重构出来的图片的清晰度。

图4的(a)图是原始图片,(b)为采样率为0.3时的重构图,(c)图是采样率为0.5时的重构图,(d)图是采样率为0.8时的重构图。

(a)原始图片(b)OMP重构图片(M/N=0.3)
(c)OMP重构图片(M/N=0.5)(d)OMP重构图片(M/N=0.8)
图4:OMP重构的不同采样率的lena重构图形
由图4中的四个图片可知,OMP算法和MP算法一样,采样率越大,重构的图形效果越好,在应用的时候要想获得很好的重构图片就需要较高的采样率,但是所需要的时间也会越大。

1.3 采样率对BP算法的影响
研究采样率对BP算法的影响,研究方法和上面的MP,OMP算法
一样,首先研究采样率大的不同多一位信号大的影响,表3是采样率对重构误差和重构时间的关系表格:
表3:BP算法采样率对重构时间和误差的影响
表3中测量了不同采样率对应的BP算法中重构的MSE和时间的值,从表格中可知,BP算法和MP,OMP算法一样,也是采样率越大,重构产生的MSE越小,重构的图形越接近原始图形,但是时间也会增大,同样增加了计算的复杂度。

下面我们再看一下采样率的不同对lena信号的影响,仍然采用采样率为0.3 0.5 0.8 这三个采样率,对比一下采样率的不同重构出来的图片的清晰度。

图5的(a)图是原始图片,(b)为采样率为0.3时的重构图,(c)图是采样率为0.5时的重构图,(d)图是采样率为0.8时的重构图。

(a)原始图片(b)BP重构图片(M/N=0.3)
(c)BP重构图片(M/N=0.5)(d)BP重构图片(M/N=0.8)
图5:BP重构的不同采样率的lena重构图形
由图5中的四个图片可知,BP算法和MP,OMP算法一样,采样率越大,重构的图形效果越好,在应用的时候要想获得很好的重构图片就需要较高的采样率,但是所需要的时间也就会会越长。

从上面的三种算法中采样率对重构时间和误差的影响中,可以得出相同的结论,在一维信号中,采样率越大,重构的误差越小,重构所需要的时间越大。

在二维图片中,采样率越大,重构的图片越清晰。

2.信噪比对三种算法的影响
在实际的应用中,会混入噪声,没有噪声那是理想的情况,这里就研究一下信噪比对重构信号产生的MSE的影响。

2.1 信噪比对MP算法的影响
首先研究信噪比对MP算法产生的影响,图6是信噪比和MSE 的关系曲线图,在matlab的环境中,试验了100次产生的曲线。

图6:SNR和MSE关系曲线
由图6可知,信噪比越大,MSE就越小。

2.2信噪比对OMP算法的影响
研究信噪比对OMP算法的影响,研究方法和所用的环境和MP
算法一样,图7是SNR和MSE的关系曲线:
图7:SNR和MSE关系曲线
由图7可知,随着信噪比的增大,均方差减小。

2.3信噪比对BP算法的影响
研究信噪比对BP算法的影响,研究方法和所用的环境和MP算法一样,图8是SNR和MSE的关系曲线:
图8:SNR和MSE关系曲线
由图8可以得出,BP算法和MP,OMP算法的SNR和MSE的关系曲线不同,是一个折线的形式。

3 三种算法之间的比较
本章上面的分析中,分析的是采样率和信噪比对三种算法各自的一些影响,这里要分析的是三种算法之间的性能分析。

图9表示的是采样率对三种算法重构时间的影响图,图10表示的采样率对三种算法重构的均方差的影响图,图11表示的是信噪比对三种算法MSE的影像图:
图9:采样率对三种算法重构时间的影响图
由图9可知,采样率相同的情况下,BP算法重构的时间最长,MP 算法重构所需要的时间最短。

MP和OMP算法的重构时间变化较小,而BP算法在采样率为0.3之后,变化较快。

OMP算法中迭代次数较MP算法少,但是需要正交化处理,所以重构的时间会比MP算法长。

图10:采样率对三种算法重构MSE的影响图
由图10可知,随着采样率的增加,算法的误差都减小,MP算法的误差下降的更快。

图11:信噪比对三种算法重构MSE的影响图
由图11可知,三种算法都是随着信噪比的增加,MSE下降。

BP算法的均方差最大,OMP算法的均方差最小。

由上面的图9,图10,图11中三种算法的对比图中可知,从重构时间,重构误差方面考虑的话,OMP算法是三种算法中性能最折中的算法。

正则化正交匹配追踪算法(ROMP )
本章介绍一种匹配追踪算法中的改进算法,正则化正交匹配追踪
算法(ROMP ),是在正交匹配追踪算法(OMP )的基础上改进的,是Needell 和 Vershynin[1]提出来的,是贪婪迭代算法中较成熟的一种算法。

ROMP 算法改进的地方是:OMP 算法对每个原子做处理的时候都要做K 次迭代,而ROMP 算法是首先选出符合要求的K 个原子,再从中进行筛选,减少了迭代的次数,同时也增加了算法重构的精度,但是ROMP 算法也有自己的缺点,就是算法首先要知道信号的稀疏度K ,这样才能精确的重构。

在实际的应用中,信号可能的稀疏度很小,或者是经过变换才是稀疏的,还有一种情况是在不同的环境中,信号的稀疏度可能是不一样的,这几种情况下信号的重构误差大,需要进一步的研究来克服这个缺点。

ROMP 算法的步骤[2][3]:
输入:观测值y ,测量向量Φ,稀疏度K; 输出:重构信号^
x ;
初始化:y r =0
,n=1 ,φ=Γ0 ,φ=Λ 迭代:(1)r g n T n
1-Φ=;
(2 )g n
{=Λ幅度的前K 个最大值的索引};
(3)利用正则化找到Λ⊂Λ~,使得||2||g g j i ≤,对所有~
,Λ∈j i 成立;
(4)~1
Λ⋃=ΓΓ-n n
;。

相关文档
最新文档