Soru sorSVD ile gürültü eliminasyonu
bskkndkr tarafından 8 yıl önce soruldu

iyi günler. matlabte sinüzoidal bir x sinyali oluşturup random bir gürültü ile topladım. Ardından gürültülü sinyale svd uygulayıp U S V yi çizdirdim fakat gürültü ve sinyali ayrı ayrı göremedim. Ne yapmam gerekiyor. Yazdığım kodlar şu şekildedir:

 T=50;
n=[0:T-1];
N=5;
 x=sin(2*pi*n/N);
g=randn(size(x));
X=x+g;
[U S V]=svd(X);
figure(1);
subplot(3,1,1);
plot(x);
title('sinyalimiz');
subplot(3,1,2);
plot(g);
title('gürültü');
subplot(3,1,3);
plot(X);
title('gürültülü sinyal');
figure(2);
subplot(3,2,1);
plot(U);
title('U');
subplot(3,2,2);
plot(S);
title('s');
subplot(3,2,3);
plot(V);
title('V');
2 Cevap
En iyi cevap
sayginer Yönetici tarafından 8 yıl önce cevaplandı

Merhaba,
Öncelikle aşağıdaki gibi n değerinin adım sayısını arttırırsanız daha düzgün sinüs dalgası elde edersiniz:

n=[0:0.1:T-1];

Sizin kodunuzda oluşturduğunuz gürültü değeri sinüs değerine göre çok büyük ve bundan dolayı da sonucu domine ediyor. Aşağıdaki gibi gürültüyü küçülterek sonuçları tekrar bastırabilirsiniz.

g=randn(size(x))*0.1;[adinserter block="2"]

bskkndkr tarafından 8 yıl önce cevaplandı

anladım çok tşk ederimm sağolun