Lista funcțiilor de instrumente de procesare a semnalelor

y = decimat (x, r)
y = decima (x, r, n)
y = decimat (x, r, "brad")
y = decimat (x, r, n, "brad")

Procedura de subțiere, spre deosebire de interpolare, scade frecvența de eșantionare a semnalului. Procesul de decimare este redus la trecerea semnalului original printr-un filtru trece-jos (LPF) și apoi aruncarea contează inutil.







Reduce frecvența de eșantionare a semnalului x cu un factor de r. Lungimea vectorului decimat y este r ori mai mică decât lungimea vectorului original x. În mod implicit, funcția decimat folosește filtrul Chebyshev de ordinul întâi al ordinului opt. Pentru a elimina distorsiunile de fază, se efectuează filtrarea semnalului bidirecțional (vezi descrierea funcției filtfilt), astfel încât ordinea filtrului rezultat să fie dublată.

La fel ca prima sintaxă, dar folosind filtrul Chebyshev de ordin n. Folosirea filtrelor de ordin mai mare de 13 nu este recomandată din cauza instabilității numerice. Când comanda este setată prea mult, MATLAB afișează un avertisment.

La fel ca prima sintaxă, dar în locul unui filtru Chebyshev recursiv, se folosește un filtru non-recursiv de ordinul 30, calculat folosind funcția fir1. În acest caz, filtrarea este efectuată într-o singură direcție, deoarece un astfel de filtru non-recursiv nu introduce distorsiuni de fază. Această opțiune de sintaxă oferă un consum redus de memorie și este utilă atunci când procesați semnale lungi.







La fel ca sintaxa anterioară, dar folosește un filtru non-recursiv cu ordinul n.

Vom efectua o decimare de patru ori a semnalului:

Vom extrage grafice ale semnalelor inițiale și subțiri:

Funcția decimat folosește algoritmii de subțiere 8,2 și 8,3 din [1]:

  1. Se calculează un filtru trece-jos. În mod implicit, funcția decimat utilizează filtrul Chebyshev de primul tip (funcția cheby1) cu o frecvență de cutoff normalizată de 0,8 / r și o pulsație de răspuns în frecvență în banda de trecere de 0,05 dB. Când se selectează "brad", funcția decimat calculează un filtru low-pass non-recursiv cu o frecvență de cutoff normalizată de 1 / r folosind funcția b1.
  2. În cazul unui filtru non-recursiv, semnalul de intrare este filtrat într-o direcție. În cazul unui filtru recursiv, se efectuează filtrarea bidirecțională a semnalului utilizând funcția filtrat.
  3. Îndepărtarea efectivă a semnalului filtrat se face prin prelevarea fiecărui eșantion r.

Dacă valoarea r nu este un număr întreg, funcția decimat produce următorul mesaj de eroare:

Dacă ordinea specificată a filtrului recursiv n depășește 13, funcția decimat produce următorul avertisment:

  1. IEEE. Programe pentru procesarea semnalelor digitale. IEEE Press. New York: John Wiley Fiii, 1979. Capitolul 8.






Trimiteți-le prietenilor: