CS を使用して、より少ないサンプルから画像を再構成したいと考えています。
ガウス乱数行列を測定行列として使用します。私の問題は、Haar ウェーブレット係数にしたいPsi 行列にありますが、それを定義する方法がわかりません。
DCTとフーリエ基底を使用しましたが、うまくいきました。これがフーリエ基底を使用した私のコードです。
Psi 行列をhaar ウェーブレット変換として定義する方法を教えてもらえますか?
前もって感謝します。
clc
clear all
close all
[fn,fp]=uigetfile({'*.*'});
tic
A=im2double(rgb2gray(imread([fp,fn])));
figure(1),imshow(A)
xlabel('original')
x=A(:);
n=length(x);
m=1900;
Phi=randn(m,n); %Measurment Matrix
Psi=fft(eye(n)); %sensing Matrix( or can be dct(eye(n)) )
y=Phi*x; %compressed signal
Theta=Phi*Psi;
%Initial Guess: y=Theta*s => s=Theta\y
s2=Theta\y;
%Solution
s1=OMP( Theta, y, 1e-3);
%Reconstruction
x1=Psi*s1;
figure,imshow(reshape(x1,size(A))),xlabel('OMP')
toc