壓縮感知程序
A. 請問壓縮感知重構omp演算法中的這句代碼,a=pinv(D(:,indx(1:j)))*x;廣義矩陣和信號的乘積 a是求的什麼呢
你對照著這個步驟再看看程序吧~
B. 什麼是「壓縮感知」
壓縮感知(Compressed sensing),也被稱為壓縮采樣(Compressive sampling)或稀疏采樣(Sparse sampling),是一種尋找欠定線性系統的稀疏解的技術。
壓縮感知被應用於電子工程尤其是信號處理中,用於獲取和重構稀疏或可壓縮的信號。這個方法用到訊號稀疏的特性,得以從相對較少的測量值還原出原來整個欲得知的訊號。
MRI就是一個可能使用此方法的應用。這一方法至少已經存在了四十年,由於David Donoho、Emmanuel Candès和陶哲軒的工作,最近這個領域有了長足的發展。
C. 壓縮感知OMP程序
% 1-D信號壓縮感測的實現(正交匹配追蹤法Orthogonal Matching Pursuit)
% 測量數M>=K*log(N/K),K是稀疏度,N信號長度,可以近乎完全重構
% 編程人--香港大學電子工程系 沙威 Email: [email protected]
% 編程時間:2008年11月18日
% 文檔下載: http://www.eee.hku.hk/~wsha/Freecode/freecode.htm
% 參考文獻:Joel A. Tropp and Anna C. Gilbert
% Signal Recovery From Random Measurements Via Orthogonal Matching
% Pursuit,IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 53, NO. 12,
% DECEMBER 2007.
clc;clear
%% 1. 時域測試信號生成
K=7; % 稀疏度(做FFT可以看出來)
N=256; % 信號長度
M=64; % 測量數(M>=K*log(N/K),至少40,但有出錯的概率)
f1=50; % 信號頻率1
f2=100; % 信號頻率2
f3=200; % 信號頻率3
f4=400; % 信號頻率4
fs=800; % 采樣頻率
ts=1/fs; % 采樣間隔
Ts=1:N; % 采樣序列
x=0.3*cos(2*pi*f1*Ts*ts)+0.6*cos(2*pi*f2*Ts*ts)+0.1*cos(2*pi*f3*Ts*ts)+0.9*cos(2*pi*f4*Ts*ts); % 完整信號
%% 2. 時域信號壓縮感測
Phi=randn(M,N); % 測量矩陣(高斯分布白雜訊)
s=Phi*x.'; % 獲得線性測量
%% 3. 正交匹配追蹤法重構信號(本質上是L_1范數最優化問題)
m=2*K; % 演算法迭代次數(m>=K)
Psi=fft(eye(N,N))/sqrt(N); % 傅里葉正變換矩陣
T=Phi*Psi'; % 恢復矩陣(測量矩陣*正交反變換矩陣)
hat_y=zeros(1,N); % 待重構的譜域(變換域)向量
Aug_t=[]; % 增量矩陣(初始值為空矩陣)
r_n=s; % 殘差值
for times=1:m; % 迭代次數(有雜訊的情況下,該迭代次數為K)
for col=1:N; % 恢復矩陣的所有列向量
proct(col)=abs(T(:,col)'*r_n); % 恢復矩陣的列向量和殘差的投影系數(內積值)
end
[val,pos]=max(proct); % 最大投影系數對應的位置
Aug_t=[Aug_t,T(:,pos)]; % 矩陣擴充
T(:,pos)=zeros(M,1); % 選中的列置零(實質上應該去掉,為了簡單我把它置零)
aug_y=(Aug_t'*Aug_t)^(-1)*Aug_t'*s; % 最小二乘,使殘差最小
r_n=s-Aug_t*aug_y; % 殘差
pos_array(times)=pos; % 紀錄最大投影系數的位置
end
hat_y(pos_array)=aug_y; % 重構的譜域向量
hat_x=real(Psi'*hat_y.'); % 做逆傅里葉變換重構得到時域信號
%% 4. 恢復信號和原始信號對比
figure(1);
hold on;
plot(hat_x,'k.-') % 重建信號
plot(x,'r') % 原始信號
legend('Recovery','Original')
norm(hat_x.'-x)/norm(x) % 重構誤差
D. 壓縮感知究竟是什麼原理
壓縮感知(compressed sensing)。所謂壓縮感知,最核心的概念在於試圖從原理上降低對一個信號進行測量的成本。比如說,一個信號包含一千個數據,那麼按照傳統的信號處理理論,至少需要做一千次測量才能完整的復原這個信號。這就相當於是說,需要有一千個方程才能精確地解出一千個未知數來。但是壓縮感知的想法是假定信號具有某種特點(比如文中所描述得在小波域上系數稀疏的特點),那麼就可以只做三百次測量就完整地復原這個信號(這就相當於只通過三百個方程解出一千個未知數)。可想而知,這件事情包含了許多重要的數學理論和廣泛的應用前景,因此在最近三四年裡吸引了大量注意力,得到了非常蓬勃的發展。陶哲軒本身是這個領域的奠基人之一(可以參考《陶哲軒:長大的神童》一文),因此這篇文章的權威性毋庸諱言。另外,這也是比較少見的由一流數學家直接撰寫的關於自己前沿工作的普及性文章。需要說明的是,這篇文章是雖然是寫給非數學專業的讀者,但是也並不好懂,也許具有一些理工科背景會更容易理解一些。
E. 什麼是「壓縮感知」(壓縮感測、compressed/compressive sensing)
壓縮感知(Compressive Sensing, or Compressed Sampling,簡稱CS),是近幾年流行起來的一個介於數學和信息科學的新方向,由Candes、Terres Tao等人提出,挑戰傳統的采樣編碼技術,即Nyquist采樣定理。
壓縮感知技術-理論
壓縮感知理論為信號採集技術帶來了革命性的突破,它採用非自適應線性投影來保持信號的原始結構,以遠低於奈奎斯特頻率對信號進行采樣,通過數值最優化問題准確重構出原始信號。
壓縮感知技術-概念特徵
壓縮感知從字面上看起來,好像是數據壓縮的意思,而實則出於完全不同的考慮。經典的數據壓縮技術,無論是音頻壓縮(例如 mp3),圖像壓縮(例如 jpeg),視頻壓縮(mpeg),還是一般的編碼壓縮(zip),都是從數據本身的特性出發,尋找並剔除數據中隱含的冗餘度,從而達到壓縮的目的。這樣的壓縮有兩個特點:第一、它是發生在數據已經被完整採集到之後;第二、它本身需要復雜的演算法來完成。相較而言,解碼過程反而一般來說在計算上比較簡單,以音頻壓縮為例,壓制一個 mp3 文件的計算量遠大於播放(即解壓縮)一個 mp3 文件的計算量。 稍加思量就會發現,這種壓縮和解壓縮的不對稱性正好同人們的需求是相反的。在大多數情況下,採集並處理數據的設備,往往是廉價、省電、計算能力較低的便攜設備,例如傻瓜相機、或者錄音筆、或者遙控監視器等等。而負責處理(即解壓縮)信息的過程卻反而往往在大型計算機上進行,它有更高的計算能力,也常常沒有便攜和省電的要求。也就是說,人們是在用廉價節能的設備來處理復雜的計算任務,而用大型高效的設備處理相對簡單的計算任務。這一矛盾在某些情況下甚至會更為尖銳,例如在野外作業或者軍事作業的場合,採集數據的設備往往曝露在自然環境之中,隨時可能失去能源供給或者甚至部分喪失性能,在這種情況下,傳統的數據採集-壓縮-傳輸-解壓縮的模式就基本上失效了。 壓縮感知的概念就是為了解決這樣的矛盾而產生的。既然採集數據之後反正要壓縮掉其中的冗餘度,而這個壓縮過程又相對來說比較困難,那麼我們為什麼不直接「採集」壓縮後的數據?這樣採集的任務要輕得多,而且還省去了壓縮的麻煩。這就是所謂的「壓縮感知」,也就是說,直接感知壓縮了的信息。
壓縮感知技術-應用影響
在大量的實際問題中,人們傾向於盡量少地採集數據,或者由於客觀條件所限不得不採集不完整的數據。如果這些數據和人們所希望重建的信息之間有某種全局性的變換關系,並且人們預先知道那些信息滿足某種稀疏性條件,就總可以試著用類似的方式從比較少的數據中還原出比較多的信號來。到今天為止,這樣的研究已經拓展地非常廣泛了。 但是同樣需要說明的是,這樣的做法在不同的應用領域里並不總能滿足上面所描述的兩個條件。有的時候,第一個條件(也就是說測量到的數據包含信號的全局信息)無法得到滿足,例如最傳統的攝影問題,每個感光元件所感知到的都只是一小塊圖像而不是什麼全局信息,這是由照相機的物理性質決定的。為了解決這個問題,美國Rice大學的一部分科學家正在試圖開發一種新的攝影裝置(被稱為「單像素照相機」),爭取用盡量少的感光元件實現盡量高解析度的攝影。有的時候,第二個條件(也就是說有數學方法保證能夠從不完整的數據中還原出信號)無法得到滿足。這種時候,實踐就走在了理論前面。人們已經可以在演算法上實現很多數據重建的過程,但是相應的理論分析卻成為了留在數學家面前的課題。 但是無論如何,壓縮感知所代表的基本思路:從盡量少的數據中提取盡量多的信息,毫無疑問是一種有著極大理論和應用前景的想法。它是傳統資訊理論的一個延伸,但是又超越了傳統的壓縮理論,成為了一門嶄新的子分支。它從誕生之日起到現在不過五年時間,其影響卻已經席捲了大半個應用科學。
復制的。。。。。
F. 壓縮感知過時了嗎
沒有過時,依然是主流暢談的話題,使用度依舊廣泛。
壓縮感知的核心點在於,其不遵從奈奎斯特采樣定理。而這原因在於,壓縮感知的采樣是隨機的,不等間距的,故不用管奈奎斯特。不過壓縮感知也是有要求的,它需要保證信號是稀疏的。
一旦信號不稀疏,進行違背奈奎斯特的隨機非等間距采樣時,頻域上的交疊會導致難以恢復原始信號。在壓縮感知過程中,如果將采樣頻率降低,使得其很小,那麼采樣的時域間隔就會相對很大,加上一定方式的隨機采樣,此時采樣得到的數據量就會很小,從而實現了一種壓縮。
壓縮感知與傳統的采樣+壓縮的模式不同的是,它首先不遵從奈奎斯特采樣定理,其次,它並沒有分為采樣和壓縮,應該說,壓縮感知的采樣就是壓縮。采樣之後將采樣的數據直接傳輸,之後在接收端便可以通過適當的重構演算法進行重構。
G. 壓縮感知理論基本介紹
姓名:王鑫磊
學號:21011110262
學院:通信工程學院
【嵌牛導讀】壓縮感知是信號處理領域進入21世紀以來取得的最耀眼的成果之一,並在磁共振成像、圖像處理等領域取得了有效應用。壓縮感知理論在其復雜的數學表述背後蘊含著非常精妙的思想。基於一個有想像力的思路,輔以嚴格的數學證明,壓縮感知實現了神奇的效果,突破了信號處理領域的金科玉律——奈奎斯特采樣定律。即,在信號采樣的過程中,用很少的采樣點,實現了和全采樣一樣的效果。
【嵌牛鼻子】壓縮感知,欠采樣,稀疏恢復
【嵌牛提問】壓縮感知相比奈奎斯特采樣定律的主要突破是什麼?
【嵌牛正文】
1.CS的初步理解
CS是一個針對信號采樣的技術,是在采樣過程中完成數據壓縮的過程。我們知道在對模擬信號按一定采樣頻率進行采樣並得到數字信號的過程中,要想完整保留原始信號中的信息,采樣頻率必須大於信號中最高頻率的2倍(奈奎斯特采樣定理)。但Candes等人又提出了,如果信號在頻域是稀疏的,那麼它可以由遠低於采樣定理要求的采樣點重建恢復。Nyquist定理中的采樣為等間距采樣,若采樣頻率低必然會引起混疊,如果不等間距采樣呢?如果是隨機采樣呢?隨機采樣必然會發生頻譜泄露,但泄露會均勻分布在整個頻域且泄露值都較小,而最大的幾個峰值可以通過設置閾值檢測出來,從而有了恢復出原始信號的可能。
圖1展示了一原始的模擬信號在頻域是稀疏的,僅由三個頻率分量組成,為了得到數字信號,首先要在時域對其進行采樣,根據壓縮感知理論,可以在時域進行隨機亞采樣,之後得到的頻譜會產生如圖所示的泄露,但可以通過閾值檢測求出原始信號的真實頻率分量,從而恢復出原始信號。
2. CS的數學模型
CS有兩個前提條件:
假設:x是長度為N的原信號,稀疏度為k,它是未知的;Φ為測量矩陣,對應采樣過程,也就是壓縮的過程,如隨機采樣,是已知的;采樣後的結果為:y=Φx,也是已知的;因此壓縮感知問題是:在已知測量值y和測量矩陣Φ的基礎上,求解原信號x的過程。然而一般信號x本身並不稀疏,需要在某種稀疏基上進行稀疏表示,即x=Ψs, 其中s為稀疏向量,即為所求的稀疏信號;Ψ為稀疏基矩陣,也叫稀疏變換矩陣,如傅里葉變換。
於是最終問題表示為:
y = ΦΨs = Θs (1)
已知y,Φ,Ψ,求s, Θ稱為感知矩陣。感知矩陣需要滿足約束等距原則(RIP),因此需要測量矩陣Φ和稀疏基Ψ滿足不相關,即采樣過程與稀疏過程不相關。Candes等人又找到了獨立同分布的高斯隨機測量矩陣可以稱為普適的壓縮感知測量矩陣,於是滿足高斯分布的隨機測量矩陣就成了CS最常用的觀測矩陣。
3. CS的常用方法
已知(1)方程有無數解,因此需要通過增加約束來得到唯一解。方程是稀疏的,因此我們需要找到這個方程里所有解中最稀疏的內個就行了。
求解上述方程一般有三種思路:凸優化演算法,貪婪演算法,貝葉斯理論。CS常用演算法有:
基追蹤重構演算法 (Basis Pursuit, BP):BP演算法是一種凸優化方法。
正交匹配追蹤演算法 (OMP):OMP屬於貪婪演算法。
閾值迭代演算法 : 包括軟閾值迭代(ISTA)和迭代硬閾值(IHT)。ISTA的一種改進方法為快速閾值迭代(FISTA)。
【嵌牛參考】
[1]. Dandes, E. J. . 「Near-optimal signal recovery from random projections.」 Universal encoding strategies IEEE Transactions on Information Theory 52(2006).
[2]. Donoho, D. L. . 「Compressed sensing.」 IEEE Transactions on Information Theory 52.4(2006):1289-1306.
H. 急求!分布式壓縮感知 的程序: DCS SOMP matlab程序 Simultaneous Orthogonal Matching Pursuit (SOMP)
趕快殺毒,不然電腦報廢!