Wstęp
Badanie przejść przez zero (Zero-Crossing)
Funkcja autokorelacji
CEPSTRUM
Funkcja różnicowa - Average Magnitude Differential Function
Transformacja grzebieniowa
Szacowanie okresu oparte o filtry FIR
Linki
Bibliografia
Wstęp Wykrywanie częstotliwości podstawowej dźwięku jest jednym z najważniejszych zagadnień związanych z modelowaniem oraz analizą dźwięków quasi-periodycznych [3][4].
Algorytmy wykrywania częstotliwości podstawowej dźwięku mogą być podzielone na metody operujące w dziedzinie czasu, dziedzinie częstotliwości lub metody hybrydowe, w obu naraz.
Pierwsza grupa metod operujących w dziedzinie czasu związana jest z wykrywaniem i zliczaniem cech związanych z powtarzalnością sygnału w czasie. Inne metody działające po stronie czasu opierają się na funkcjach autokorelacji lub normach różnicowych w celach detekcji podobieństwa między sygnałem i swoją opóźnioną wersją.
Metody związane z dziedziną częstotliwości wymagają najpierw przekształcenia sygnału do postaci widmowej, następnie wyszukiwana jest pierwsza harmoniczna, największy wspólny dzielnik wszystkich harmonicznych lub inna wyznacznik okresu. Aby uniknąć rozmycia widma stosuje się okna widmowe a także, zależnie od typu okna, zwiększa się zakres analizowanych prążków [5][6]. Ułatwienie procesu lokalizacji cech częstotliwościowych sygnału możliwe jest dzięki jego wcześniejszej obróbce, jak choćby poprzez przeprowadzenie predykcji liniowej.
Badanie przejść przez zero (Zero-Crossing) Sygnał podlega najczęściej najpierw przetworzeniu, mającemu uwydatnić powtarzające się periodycznie cechy charakterystyczne. Następnie określa się czas między najbliższymi powtórzeniami cech i traktuje go jako okres sygnału [7][8][9]. Algorytmy tego typu charakteryzują się pozytywną cechą. Mianowicie, do analizy nie wymagają pełnego zestawu danych. Oznacza to, że ich wykorzystanie umożliwi obróbkę w czasie rzeczywistym, z małym opóźnieniem. Wykrywanie powtórzeń odbywa się najczęściej poprzez dolnoprzepustowe filtrowanie sygnału, a następnie wykrywanie jego ekstremów lub miejsc zerowych. Może się jednak zdarzyć, że wybrane cechy nie wyznaczają prawdziwego okresu sygnału. Poza tym różne zbiory cech, mogą dawać rozbieżne informacje o powtarzalności przebiegu w czasie [11]. Pomocne okazuje się użycie okna czasowego o stałej szerokości i przesuwanie go wzdłuż sygnału. Liczba wykrytych okresów jest uśredniana, a otrzymany wynik traktuje się jako najbardziej prawdopodobny. Wielkość okna należy ustalać tak, by miało przynajmniej kilka okresów. Najbardziej dokładne wyniki uzyskuje się interpolując dodatkowo wartości sygnału leżące między najbliższymi próbkami, a więc znajdujące się w odstępach mniejszych niż okres próbkowania.
Funkcja autokorelacji Popularną metodą czasową jest metoda oparta o funkcję autokorelacji. Autokorelacja sygnału dana jest wzorem:
a dla sygnałów dyskretnych:
Najważniejsze maksimum funkcji występuje dla opóźnienia zerowego (m=0). Położenie następnego maksimum daje estymatę okresu, a jego wysokość wskazuje okresowość sygnału [12][L3]. Dla sygnałów analogowych okres szacuje się korzystając z zależności:
Metoda wymaga takiego spróbkowania sygnału, by otrzymany sygnał dyskretny zawierał kilka okresów. Dlatego konieczne bywa uśrednianie niektórych częstotliwości sygnału. Poza tym mogą występować trudności przy wykrywaniu częstotliwości podstawowej sygnału okresowego, pozbawionego pierwszej harmonicznej.
CEPSTRUM Nazwa "Cepstrum" pochodzi od słowa spektrum i wynika z faktu, że metoda ta opiera się o transformację Fouriera. Analizowany za pomocą metody sygnał zostaje przetransformowany używając Szybkiej Transformacji Fouriera (FFT - Fast Fourier Transform) a uzyskana postać widma sygnału, przekształcana jest do skali logarytmicznej. Wynik poddaje się drugiej transformacji Fouriera (również FFT), wracając w ten sposób w dziedzinę czasu. W obrazie Cepstrum zostają uwydatnione wartości szczytowe wskazujące okres sygnału.
Szacowanie częstotliwości podstawowej odbywa się w ten sam sposób, jak w metodzie opartej o funkcję autokorelacji:
Funkcja różnicowa AMDF (Average Magnitude Differential Function) Metoda AMDF została zdefiniowna przez R. L. Millera i E. S. Weibela [16] i należy do metod grzebieniowych [1][17]. Metoda przypomina metodę związaną z funkcją autokorelacji, gdyż również korzysta z różnic między sygnałem oryginalnym i opóźnionym. Ogólna definicja metody AMDF dana jest wzorem:
a częstotliwość podstawową szacuje się następująco:
Dla sygnałów dyskretnych dana jest inna postać funkcji różnicowej:
Gęstość k ma wartość 1 dla metody AMDF i inne wartości dla metod pochodnych.
Przed wykrywaniem okresu, sygnał poddawany jest obróbce, mającej wspomóc wyznaczenie pierwszego miejsca zerowego. Trudności implementacji tej metody wiążą się ze skończonością częstotliwości próbkowania, z szumem oraz stacjonarnością sygnału. Jeżeli sygnał jest okresowy a jego okres jest całkowitą wielokrotnością okresu próbkowania, wtedy wszystkie miejsca zerowe dla całkowitych wielokrotności okresu sygnału są także zerami. Jeśli jednaki okres sygnału nie jest całkowitą wielokrotnością okresu próbkowania, pierwsze miejsce zerowe (dla m<>0) leży między dwiema wartościami m. W wielu zastosowaniach, takie zgrubne oszacowanie wartości okresu, jest całkowicie wystarczające. Nie można jednak tego powiedzieć o dziedzinie muzyki i badaniach dotyczących analizy i syntezy dźwięku. Biorąc pod uwagę niezwykle małą złożoność obliczeniową metody AMDF, nie ma żadnej opłacalnej metody interpolacji wartości między próbkowych, która dałaby dokładną wartość okresu. Wymusza to zwiększenie częstotliwości próbkowania sygnału. Należy także pamiętać o sygnałach quasi-periodycznych (z modulacją amplitudy, zaszumionych itp.), dla których 'miejsca zerowe' nie będą zerami, nawet gdy spełniony jest warunek dotyczący okresu próbkowania. Dla takich sygnałów problem interpolacji między opóźnionymi próbkami jest jeszcze bardziej skomplikowany.
Transformacja grzebieniowa Większość metod detekcji częstotliwości podstawowej (np. metoda autokorelacyjna, metoda różnicowa AMDF – Average Magnitude Difference Function) działa w oparciu o analizę informacji związanych jedynie z częstotliwością pierwszych prążków szeregu harmonicznego. Tymczasem częstotliwość podstawową można również wyznaczyć korzystając z informacji, które niosą ze sobą wyższe składowe harmoniczne. Na przykład poprzez podzielenie częstotliwości n-tej składowej przez n (zakładając harmoniczność sygnału). Wynika stąd wniosek, że podczas analizy częstotliwości podstawowej sygnału nie należy odrzucać informacji związanych z wyższymi składowymi – poprawi to dokładność analizy.
Jedną z metod uwzględniających wyżej wspomniany wniosek jest cepstrum, czyli widmo ze skomprymowanego dynamicznie widma.
Zakładając harmoniczną postać sygnału x(t), można posłużyć się inną metodą, zwaną transformacją grzebieniową {1][17]. Transformacja ta definiowana jest następującą zależnością:
gdzie:
– funkcja grzebieniowa,
M – liczba składników (“ząbków”) funkcji grzebieniowej,
ak – współczynniki amplitudowe poszczególnych składników (“ząbków”). W szczególnym przypadku ak = 1,
w – funkcja okna. Funkcja ta może być wybrana arbitralnie, jednak musi być ona symetryczna (np. funkcja Gaussowska, trójkątna, itp.).
t – moment czasu, który odpowiada kolejnej ramce analizowanego sygnału.Transformacja grzebieniowa posiada dwie cechy:
w odróżnieniu od klasycznej transformacji Fouriera, gdzie jądrem przekształcenia całkowego jest pojedyncza ortogonalna baza , w przypadku proponowanej transformacji grzebieniowej jądrem przekształcenia całkowego jest liniowa kombinacja o postaci:
W efekcie jądro przekształcenia całkowego jest bardziej skorelowane z analizowanym sygnałem harmonicznym, niż to miało miejsce w przypadku transformacji tradycyjnej.
inaczej niż w przypadku transformacji Fouriera, gdzie szerokość analizowanego okna pozostawała niezmienna, transformacja grzebieniowa charakteryzuje się zmniejszaniem okna (ulega ono przeskalowaniu), przy wzroście parametru k. W konsekwencji szerokość okna maleje w miarę wzrostu częstotliwości. Pozwala to na poprawę rozdzielczości czasowo–częstotliwościowej analizy.
|
Mając dany sygnał quasi-periodyczny - x(n), oszacowanie początkowe okresu P, okres można estymować posługując się zależnością [2]:
gdzie M jest właściwie wybraną małą liczbą a c(i) są współczynnikami predyktora.
Faza (związana z P-tą opóźnioną próbką) filtru FIR implementowana przez współczynniki predyktora obliczana jest podstawiając do wzoru:Pulsacja w określa pulsację dla której liczone jest opóźnienie fazowe. Częstotliwości biorące udział w jego obliczaniu są harmonicznymi szukanej częstotliwości podstawowej stąd początkowe obliczenia obarczone są dużą niepewnością. Można przeprowadzić zgrubne oszacowanie w używając do tego wartości P, w której wartość w jest przechowywana i wielokrotnie wykorzystana dopóki nie nastąpi zmiana P. Jeżeli oszacowanie jest zbyt mało dokładne, przy kalkulowaniu w należy korzystać z ostatnio oszacowanego okresu i dokonywać iteracji, tak długo aż osiągnie się zadaną wiarygodność. Związek między estymatą wysokości dźwięku i w to:
gdzie Ts jest okresem próbkowania a Tu jest oszacowaniem okresu. Złożoność obliczeniową można poprawić wykorzystując parzystość i nieparzystość funkcji sinus i cosinus oraz symetrię definicji filtru. Równanie sprowadza się do:
Dalsze oszczędności uzyskuje się wprowadzając tablicowanie wartości funkcji sinus, cosinus i arcustangens. Opóźnienie fazowe filtru oblicza się:
Dodając obliczone opóźnienie czasowe do opóźnienia czasowego linii opóźniającej o długości P, oblicza się opóźnienie czasowe całego obwodu. Opóźnienie to używane jest następnie do oszacowania okresu i częstotliwości:
|
[L1]"A Wheelflat Detection Device Based on CEPSTRUM Analysis of Rail Acceleration Measurements":
http://www.dmti.unifi.it/dwebuserbracciali/wf2.htm[L2]"RFM N° 1999": http://perso.club-internet.fr/fabri/sfm/99_1.htm
[L3]"Appendix : Autocorrelation Analysis": http://www.csu.edu.au/ci/vol02/cmxhk/node10.html
[L4]"Robust Pitch Analysis": http://www.isip.msstate.edu/publications/journals/ieee_assp/1985/pitch_detection/page_02.html
[L5]"Pitch Detection": http://www.iua.upf.es/~xserra/articles/msm/pitch.html ,
http://gigue.peabody.jhu.edu/~ich/research/welcome.html#pitch
|
[1] S. Zieliński, papers from work on comb transformation method of pitch detection ("Description of assumptions of comb transformation", "Comb transformation - implementation and comparison with another pitch detection methods"), Technical University of Gdansk, 1997.
[2] P. R. Cook, "An Automatic Pitch Detection and MIDI Control System for Brass Instruments," Stanford Center for Computer Research in Music and Acoustics.
[3] W. Hess, " Pitch Determination of Speech Signals," Berlin: Springer Verlag, 1983.
[4] L. R. Rabiner, M. J. Cheng, A. E. Rosenberg and C. A. McGonegal, "A Comparative Performance Study of Several Pitch Detection Algorithms,'' IEEE Trans. on Acoustics, Speech, and Signal Processing, vol. 24, no. 5, pp. 399418, 1976.
[5] F. J. Harris, "On the Use of Windows for Harmonic Analysis with the Discrete Fourier Transform.'' Proceedings of the IEEE, vol. 66, no. 1, pp. 5184, 1978.
[6] A. H. Nuttall, "Some Windows With Very Good Sidelobe Behavior,'' IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 29, no. 1, pp. 8491, 1981.
[7] T. V. Ananthapadmanabha and B. Yegnanarayana, "Epoch Extraction of Voiced Speech,'' IEEE Trans. on Acoustics, Speech, and Signal Processing, vol. 23, no. 6, pp. 562570, 1975.
[8] Y. M. Cheng and D. O'Shaughnessy, "Automatic and Reliable Estimation of Glottal Closure Instant and Period,'' IEEE Trans. on Acoustics, Speech, and Signal Processing, vol. 37, no. 12, pp. 18051815, 1989.
[9] H. W. Strube, "Determination of the Instant of Glottal Closure From the Speech Wave,'' Journal of the Acoustical Society of America, vol. 56, no. 5, pp. 16251629, 1974.
[10] T. V. Ananthapadmanabha and B. Yegnanarayana, "Epoch Extraction from Linear Prediction Residual for Identification of Closed Glottis Interval,'' IEEE Trans. on Acoustics, Speech, and Signal Processing, vol. 27, no. 4, pp. 309319, 1979.
[11] J. F. Deem, W. H. Manning, J. V. Knack and J. S. Matesich, "The Automatic Extraction of Pitch Perturbation Using Microcomputers: Some Methodological Considerations,'' Journal of Speech and Hearing Research, vol. 32, pp. 689697, 1989.
[12] H. Chamberlin, " Musical Applications of Microprocessors". New Jersey: Hayden Book Company, 1980.
[13] J. M. Cioffi, "LimitedPrecision Effects in Adaptive Filtering,'' IEEE Transactions on Circuits and Systems, vol. 34, no. 7, pp. 821833, 1987.
[14] M. J. Ross, H. L. Shaffer, A. Cohen, R. Freudberg and H. J. Manley, "Average Magnitude Difference Function Pitch Extractor,'' IEEE Trans. on Acoustics, Speech and Signal Processing, vol. 22, no. 5, pp. 353362, 1974.
[15] M. M. Sondhi, "New Methods of Pitch Extraction,'' IEEE Trans. on Audio and ElectroAcoustics, vol. 16, no. 2, pp. 262266, 1968.
[16] R. L. Miller and E. S. Weibel, "Measurements of the Fundamental Period of Speech Using a Delay Line,'' Journal of the Acoustical Society of America, vol. 28, Abstract, 1956.
[17] J. A. Moorer, "The Optimum Comb Method of Pitch Period Analysis of Continuous Digitized Speech,'' IEEE Trans. on Acoustics, Speech, and Signal Processing, vol. 22, no. 5, pp. 330338, 1974.