Usuwanie zakłóceń w sygnale audio.
Transkrypt
Usuwanie zakłóceń w sygnale audio.
Ćwiczenie 3, 11 maja 2012, Usuwanie zakłóceń w sygnale audio. 1 Usuwanie zakłóceń w sygnale audio. Krzysztof Mazur 1 Wprowadzenie Celem ćwiczenia jest zapoznanie się z problemem usuwania zakłóceń w sygnałach audio, na przykładzie sygnału mowy. Zakładamy, że zakłócenie jest dodane do sygnału mowy. Przykładem takiego zakłócenia jest hałas występujący w miejscu rejestracji mowy przez mikrofon. Na ćwiczeniu można stosować dowolne metody usuwania zakłóceń w sygnale mowy. W instrukcji tej przestawiono kilka prostych struktur stosowanych do usunięcia zakłóceń. 2 2.1 Proste metody usuwania zakłóceń Filtracja sygnału Najprostszą metodą usunięcia zakłóceń w sygnale jest przefiltrowanie sygnału przez odpowiedni filtr. Przykładowy schemat blokowy takiego rozwiązania dla dyskretnego filtru liniowego W (z −1 ) znajduje się na rys. 1. Zakłócenie d(i) filtrowane jest przez pewien filtr liniowy H(z −1 ) i jest dodawane do sygnału mowy m(i) tworząc sygnał y(i). Sygnał ten jest następnie filtrowany przez filtr W (z −1 ). Filtr ten powinien przepuszczać użyteczny sygnał, a tłumić zakłócenie. d(i) ? H(z −1 ) m(i) ?+ y(i) - k + - W (z −1 ) m̂(i) - Rysunek 1: Struktura układu filtracji sygnału. 2.2 Kompensacja zakłóceń W przypadku, gdy zakłócenie jest mierzone można zastosować strukturę kompensacji zakłóceń (rys. 2). W takim przypadku zakłócenie jest mierzone poprzez tor pomiarowy X(z −1 ), a następnie filtrowane przez odpowiedni filtr W (z −1 ) i odjęte od zakłóconego sygnału mowy. W przypadku struktury kompensacyjnej ważne jest by opóźnienie w torze kompensacji nie było większe niż opóźnienie w torze pierwotnym. Może tak się stać, gdy tor X(z −1 ) zawiera opóźnienie. W przypadku, gdy opóźnienie sygnału mowy jest akceptowalne, problem ten można wyeliminować przez sztuczne opóźnienie zakłóconego sygnału mowy przez filtr z −k przed operacją odejmowania. 2.3 Predykcyjna kompensacja zakłóceń W przypadku, gdy zakłócenie nie jest znane, w pewnych przypadkach można estymować je za pomocą predyktora liniowego W (z −1 ) wykorzystującego wcześniejsze próbki zakłóconego sygnału mowy (rys. 3). Ćwiczenie 3, 11 maja 2012, Usuwanie zakłóceń w sygnale audio. 2 d(i) - X(z −1 ) - W (z −1 ) ? H(z −1 ) m(i) ?+ y(i) - k + - ?− m̂(i) - k + z −k Rysunek 2: Struktura układu kompensacji zakłóceń. d(i) - z −k - W (z −1 ) ? H(z −1 ) m(i) ?+ y(i) - k + ?− m̂(i) - k + Rysunek 3: Predykcyjna kompensacja zakłóceń. 3 Przydatna wiedza Bardzo zalecane jest wcześniejsze zapoznanie się z następującymi zagadnieniami: • projektowanie podstawowych filtrów cyfrowych: dolnoprzepustowy, górnoprzepustowy, pasmowoprzepustowy, pasmowozaporowy. • projektowanie filtrów cyfrowych o pożądanej charakterystyce amplitudowej, • filtracja Wienera, • filtracja adaptacyjna, • w przypadku implementacji w Matlab lub GNU Octave przydatna jest znajomość następujących komend: butter, conv, cov, fft, filter, fir1, freqz, pwelch, sound, toeplitz, var, wavread, wavwrite. A SNR Stosunek sygnału do szumu dla sygnału oryginalnego m(i) oraz etymowanego m̂(i) można estymować za pomocą: ! PN 2 m (i) i=0 ˆ RdB = 10log10 P SN N 2 i=0 (m(i) − m̂(i))