Advertisement
Guest User

Untitled

a guest
Oct 21st, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.13 KB | None | 0 0
  1. % Wczytanie sygnalu w formacie WAV, FUNKCJA DECIMATE
  2. clear;
  3. % wczytanie sygnału w formacie WAV
  4. [x,fpx] = wavread('mbi04czap.wav');
  5. Nx=length(x)
  6. tx=0:1/fpx:(Nx-1)/fpx;
  7.  
  8. % wykres sygnału przed decymacją
  9.  
  10. subplot(221)
  11. plot(tx,x)
  12. xlabel('czas[s]')
  13. ylabel('sygnal')
  14. set(gcf,'Position',[10,100,1000,550]) % ustalenie wielkości okna
  15. set(gcf,'PaperPositionMode','auto') % ustalenie wielkości okna
  16.  
  17. % widmo sygnału przed decymacją
  18. Nfx = 2^15; % Nf powinno być większe niż N
  19. N21x = Nfx/2+1;
  20. v = fft(x,Nfx); % widmo zepsolone
  21. wx = abs(v); % widmo amplitudowa
  22. fx = linspace(0,fpx/2,N21x); % generowanie osi czestotliwosci
  23. subplot(222)
  24. plot(fx,wx(1:N21x))
  25. xlabel('czestotliwosc[Hz]')
  26. ylabel('modul widma')
  27.  
  28. % decymacja wykres
  29.  
  30. dr = 8 % rzad decymacji
  31. y = decimate(x,dr);
  32. Ny = length(y);
  33. fpy = fpx/dr;
  34. ty = 0:1/fpy:(Ny-1)/fpy;
  35. subplot(223)
  36. plot(ty,y)
  37. xlabel('czas[s]')
  38. ylabel('sygnal po decymacji')
  39.  
  40. % widmo sygnału decymacji
  41.  
  42. Nfy = 2^13
  43. N21y = Nfy/2+1;
  44. v = fft(y,Nfy);
  45. wy = abs(v);
  46. fy = linspace(0,fpy/2,N21y);
  47. subplot(224)
  48. plot(fy,wy(1:N21y));
  49. xlabel('czestotliwosc[Hz]')
  50. ylabel('modul widma sygn. po decymacji')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement