Problēma novēršot trokšņa

S

Stamford

Guest
Es cenšos, lai novērstu trokšņa signāla, kas satur četras virsotnes, un dažas nav zināms troksnis.Es gribu, lai samazinātu troksni, saglabājot pīķa signālu.
Es esmu mēģinājis dažādi algoritmi, bet viss, ko es saņemu, ir daži vājināšanās signālu, kā arī troksnis.
Jebkurš troksnis ideju likvidēt būtu liels man.

Paldies.

 
Es paskatījos dati jums nosūtīts.Atliekot dati laika gaitā es redzu vairāk nekā četras virsotnes, kā arī FFT parādīja man daudzas virsotnes.

Šķiet, nav tik grūti, lai samazinātu troksni, izmantojot zemas caurlaides filtru.Vai jūs, lūdzu, sīkāk vājināšanās trokšņu un signālu jūs sagaida.Ņemt vērā, ka parasti filtrēšanas darbība pievienot arī kavēšanos un palēnina malas peaks: spēcīgāka filtru augstāks kavēšanos un palēnināšanos.Ja šie parametri jūs interesē, tad īpašu algoritmu jāizvēlas.

 
Paldies par jūsu atbildi,
Mūsu mērķis ir samazināt troksni, saglabājot impulsu un signāla amplitūda nemainīga.Mēs nav īsti bažas par kavēšanos signāls caur filtrēšanas.
Nav īpaša vērtība vājināšanās trokšņa sasniegt.Kādas labas vājināšana ir troksnis varētu mums.

Paldies.

 
Jums nepieciešams dizains filtra izciršanai sākumā biežums, kas ir izkropļojumus i guess.
izmēģināt šo kodu un pateikt, kas notiek ar u uz Matlab:
CLC
[X, Fs, biti] = wavread (f17.wav ');

FS
T = garums (x) / Fs

skaitlis;
stumbra (x (1:100));
virsraksts ("Pirmais 100 paraugi no plaši izziņots signālu ');
režģis

xf = FFT (x, 16000);
xfm = abs (xf (1:8000));

skaitlis;
gabals (xfm (1:8000,1));
xlabel ("Frekvence (Hz) ');
ylabel ("apjoms");
režģis

skaitlis;
freqz (x, Fs)
režģis

spektrogramma (x, 512250512, Fs);

h1 = Filter1;
h2 = Filter2;

freqz (h1, Fs);
freqz (h2, Fs);

= filtru (h1, x);
y = filtrs (h2,);

spektrogramma (y, 512250512, Fs);
skaņas (y * 200, Fs, biti)

 
Es domāju, ka jūs varētu mēģināt izmantot ļoti vienkāršu FIR filtrs (eksponenciālā mainīgais vidējais), definē kā:

pieņemsim pieņemsim mums ievadi vektora N paraugu

let y (i) ieguldījumu paraugs "i"
no (i) izlaides filtrēšanas procesa paraugs "i"
alfa koeficients, diapazonā no 0 .. 1

inicializēt izfiltrēt (1) = y (1)
Pēc tam radīt no (i) = alfa * y (i) (1-alfa) * no (i-1)
standarta "i" no 2 līdz Z

kods piemērs ir:alfa = 0,1;no (1) = y (1);i = 2: garums (y),no (i) = alfa * y (i) (1-alfa) * no (i-1);beigasPēc filtrēšanas varat arī pastiprināt signālu, reizinot ar nemainīgu koeficientu.Lai to izdarītu noņemtu pirms vidējo signāla, tad reizina ar nemainīgu izvēlaties tad pievieno vidējais iepriekš izņemta.Šeit ir piemērs:ampl = 1,5;out_ampl = (ārpus vidējā (no)) * ampl vidējā (ārpus);"Out_amp" ir tas pats, kas "ārā", taču papildināts.

Pievienotajā attēla var redzēt rezultātu, kas iegūts ar alfa = 0,1 un pastiprināšanu koeficients = 1,5

Es ceru, ka tas var palīdzēt.
Laba vēlējumiem.
Atvainojiet, bet jums ir nepieciešams pieteikumvārds, lai skatītu šo arestu

 

Welcome to EDABoard.com

Sponsor

Back
Top