ˇ ´ ´ AUTOKORELACN ˇ ´I REAL-TIME MOZNOSTI ZKRACEN E ´ ´ FUNKCE PRO DETEKCI ZAKLADNI FREKVENCE Jan Bartoˇsek ˇ Katedra teorie obvod˚ u, CVUT , Technick´a 2, 166 27 Praha Abstract ˇ anek se zab´ Cl´ yv´ a moˇ znostmi energeticky normalizovan´ e autokorelaˇ cn´ı funkce pro detekci z´ akladn´ı frekvence (F0) na zkr´ acen´ em oknˇ e sign´ alu. Korelaˇ cn´ı funkce bˇ eˇ znˇ e operuj´ı na oknˇ e dlouh´ em alespoˇ n dvˇ e z´ akladn´ı periody nejniˇ zˇ s´ı detekoˇ anek pˇ vateln´ e frekvence a t´ım omezuj´ı dosaˇ zitelnou latenci. Cl´ rin´ aˇ s´ı v´ ysledky charakterizuj´ıc´ı zmˇ eny v pˇ resnosti algoritmu pˇ ri zkr´ acen´ı okna na 3/4 a 2/3 p˚ uvodn´ı d´ elky. Jako testovac´ı data poslouˇ zila ˇ reˇ cov´ a datab´ aze KEELE s referenˇ cn´ımi hodnotami F0. Ukazuje se, ˇ ze pouˇ zit´ a metoda energeticky normalizovan´ e autokorelaˇ cn´ı funkce skuteˇ cnˇ e umoˇ zn ˇ uje detekovat z´ akladn´ı frekvenci i na takto zkr´ acen´ em oknˇ e, byˇ t za cenu zv´ yˇ sen´ı chybovosti pro frekvence vyˇ sˇ s´ı.
1
´ Uvod
Detekce z´akladn´ı frekvence (F0) pro pouˇzit´ı v re´aln´em ˇcase s co nejmenˇs´ım zpoˇzdˇen´ım je st´ ale v´ yzvou zejm´ena v oblasti real-time hudebn´ıch technologi´ı (pˇrevod skuteˇcn´eho sign´alu na MIDI ud´alosti a n´asledn´ a synt´eza, doplnˇen´ı harmonie k hlasu a podobnˇe). Fyzik´alnˇe jsme ale omezeni zejm´ena nejniˇzˇs´ı detekovatelnou frekvenc´ı - ˇc´ım niˇzˇs´ı frekvence chceme hledat, t´ım d´ele mus´ıme v digit´aln´ım svˇetˇe ˇcekat na dostateˇcn´ y poˇcet vzork˚ u sign´alu, abychom odhad F0 mohli prov´est. Tyto dva principy jsou bohuˇzel protich˚ udn´e. S probl´emem sn´ıˇzen´ı latence detekce F0 se odjakˇziva pot´ ykaj´ı zejm´ena v´ yrobci hardwarov´ ych MIDI pˇrevodn´ık˚ u/syntez´ ator˚ u obvykle u ´zce spjat´ ych se speci´aln´ımi n´astrojov´ ymi multi-kan´alov´ ymi ”MIDI” sn´ımaˇci a po desetilet´ı vyv´ıjej´ı propriet´arn´ı algoritmy, kter´e ˇcasto vyuˇz´ıvaj´ı specifick´ ych vlastnost´ı pouˇzit´eho n´astroje a sn´ımaˇce. Napˇr´ıklad kytarov´ y pˇrevodn´ık firmy AXON pomoc´ı magnetick´eho sn´ımaˇce sleduje rozkmit strun a dok´aˇze detekovat odraˇzenou ˇspiˇcku sign´alu u ´deru trs´ atka od zm´ aˇcknut´eho praˇzce a podle doby trv´an´ı t´eto prodlevy urˇcit F0 mnohem dˇr´ıve, neˇz klasickou cestou. My budeme v naˇsem experimentu operovat jen na hol´ ych ˇreˇcov´ ych akustick´ ych sign´ alech (tj. sejmut´ ych mikrofonem). Je nutn´e si uvˇedomit, ˇze pˇri nepˇr´ıliˇs komplexn´ıch real-time DSP audio v´ ypoˇctech se s dneˇsn´ı v´ ypoˇcetn´ı silou vˇetˇsinu ˇcasu ˇcek´a na dostatek dat ke zpracov´an´ı. Doba nutn´a k nasb´ır´an´ı tˇechto dat (nejˇcastˇeji naplnˇen´ı bufferu zvolen´e velikosti zvukov´e karty) je urˇcena fyzik´aln´ımi principy a nelze ji urychlit. Tabulka 1 ukazuje vybran´e kombinace vzorkovac´ıch frekvenc´ı, d´elek oken a pˇr´ısluˇsnou nejniˇzˇs´ı detekovatelnou frekvenci klasick´ ym pˇr´ıstupem (cel´e dvˇe periody sign´alu uvnitˇr okna). V d˚ usledku se tedy m˚ uˇzeme ˇcasto setkat se situac´ı, kdy des´ıtky milisekund ˇcek´ ame na data, na kter´ ych pot´e bˇehem jednotek milisekund provedeme potˇrebn´ y v´ ypoˇcet (samozˇrejmˇe v z´ avislosti na sloˇzitosti a implementaci DSP algoritmu). Pˇrestoˇze je bˇeˇzn´e operovat v ˇc´ıslicov´em zpracov´ an´ı sign´ al˚ u s okny d´elky mocnin dvou (zejm´ena kv˚ uli optim´aln´ımu rozkladu pro ”rychl´e” algoritmy typu FFT), v tomto experimentu se na nˇe omezovat nebudeme. ˇ Casov´ e rozliˇsen´ı PDA je d´ ano jeho krokem, kter´ y se odv´ıj´ı od posunu oken ve zpracov´avan´em sign´alu. Detekc´ı z´ akladn´ı frekvence sign´ alu se zab´ yv´a ˇrada citac´ı jak z historie, tak souˇcasnosti. Jen p´ar z nich se vˇsak dot´ yk´ a aspektu co nejniˇzˇs´ı latence a pouˇzit´ı v re´aln´em ˇcase ([3], [2], [6]). Nen´ı n´am ale zn´ ama studie, kter´ a by se snaˇzila detekovat z´akladn´ı frekvenci z okna kratˇs´ıho neˇz cel´e dvˇe periody nejniˇzˇs´ı detekovateln´e frekvence.
Bˇeˇzn´e korelaˇcn´ı metody, kter´e se ze vˇsech PDA (Pitch Detection Algorithm) uˇz´ıvaj´ı nejˇcastˇeji, operuj´ı nad oknem, kter´e m´a d´elku N rovnu dvojn´asobku periody nejniˇzˇs´ı detekovateln´e z´akladn´ı frekvence F 0min (a tedy nejvyˇsˇs´ı moˇzn´e periody: N = 2 ∗ T 0max ). T´ım je zaruˇcena skuteˇcnost, ˇze pro vˇsechny detekovateln´e frekvence F 0 >= F 0min budou v korelaˇcn´ım oknˇe obsaˇzeny alespoˇ n dvˇe cel´e z´ akladn´ı periody sign´alu, jejichˇz podobnost lze pot´e snadno porovn´avat. Hlavn´ı myˇslenka, kterou se zab´ yv´a tento ˇcl´anek, je zaloˇzena na zkr´acen´ı d´elky okna N, v r´ amci kter´e operuje autokorelaˇcn´ı funkce, ide´alnˇe vˇsak pˇri zachov´an´ı moˇznosti detekce povodn´ı nejhlubˇs´ı frekvence. Chceme tedy ovˇeˇrit, zda dok´aˇzeme ze sign´alu s rozumnou chybovost´ı detekovat F0 i v pˇr´ıpadˇe, ˇze nem´ame k dispozici cel´e dvˇe periody sign´alu. Za t´ımto u ´ˇcelem je jako z´ aklad testovan´e metody vyuˇzit odhad autokorelaˇcn´ı funkce spolu s energetickou normalizac´ı.
2
Teoretick´ yu ´ vod
2.1
Pˇ rehled metod
Jsou zn´amy dva z´ akladn´ı typy odhad˚ u autokorelaˇcn´ı funkce [5]: odhad vych´ ylen´ y (1) a nestrann´ y (2). V praxi je d´ıky sv´e vˇetˇs´ı numerick´e stabilitˇe ˇcastˇeji uˇz´ıvan´ y odhad vych´ ylen´ y. Ze vzorc˚ u je zˇrejm´e, ˇze u vych´ ylen´eho odhadu pro vyˇsˇs´ı lagy“ k (testovan´e periody sign´alu) kles´a poˇcet ” realizovan´ ych souˇcin˚ u a v´ ysledn´ a hodnota funkce m´a tedy klesaj´ıc´ı charakter. Nestrann´ y odhad na rozd´ıl od vych´ ylen´eho odhadu zohledˇ nuje skuteˇcn´ y realizovan´ y poˇcet souˇcin˚ u a pro vˇetˇs´ı k se snaˇz´ı trend funkce narovnat.
ACFtime (k) =
ACFtime (k) =
1 N
N −n−1 X
1 N −k
CCF (k) =
x(n)x(n + k), k = 0, 1, ...K
(1)
n=0
N −1 X
N −n−1 X
x(n)x(n + k), k = 0, 1, ...K
(2)
n=0
x(n)x(n + k), k = 0, 1, ...K
(3)
n=0
Cross-korelace (CCF) [7] form´ alnˇe odstraˇ nuje z´avislost d´elky okna na maxim´aln´ı detekovateln´e periodˇe. V literatuˇre se setk´ av´ame zejm´ena s myˇslenkou zkr´acen´ı jinak dlouh´eho okna s v´ıce nˇeˇz dvˇema periodami sign´ alu pro vyˇsˇs´ı z´akladn´ı frekvence, kdy se z´akladn´ı frekvence ze zaˇc´atku okna m˚ uˇze na konci okna liˇsit (dojde ke rychl´e zmˇenˇe F0 v pr˚ ubˇehu zkouman´eho u ´seku ˇreˇci) a podoba jednotliv´ ych period sign´alu se tak bude v p˚ uvodnˇe nepˇrimˇeˇrenˇe dlouh´em oknˇe tak´e liˇsit (ve skuteˇcnosti se mnohdy liˇs´ı i pˇr´ımo sousedn´ı periody sign´alu, coˇz detekci F0 v ˇreˇcov´em sign´ alu ˇcasto znesnadˇ nuje). Dan´a skuteˇcnost vede k vyhlazen´ı maxima autokorelaˇcn´ı funkce, kter´e pot´e mnohdy nen´ı nalezeno. ´ ln´ı detekovatelne ´ F0 v za ´ vislosti na de ´lce okna a vzorkovac´ı Table 1: Minima frekvenci vzorkovac´ı frekvence FS [kHz] 11,025 16 22,05 44,1
d´elka vzorku [ms] 0,0907 0,0625 0,0454 0,0227
d´elka okna [vzork˚ u] 512 512 1024 2048
d´elka okna [ms] 46,440 32,000 46,440 46,440
nejniˇzˇs´ı detekovateln´e F0, dvˇe periody [Hz] 43,07 62,50 43,07 43,07
PN −1
x(n)x(n + k) , k = 0, 1, ...K N CCF (k) = qP n=0 P N −1 N −1 2 2 n=0 x(n) n=0 x(n + k)
(4)
NCCF v rovnici (4) pˇrid´ av´ a energetickou normalizaci hodnot sumy individu´alnˇe pro kaˇzd´e testovan´e zpoˇzdˇen´ı. Ve skuteˇcnosti se jedn´a o geometrick´ y pr˚ umˇer energi´ı porovn´avan´ ych suboken, coˇz by mˇelo pomoci zejm´ena pˇri rozd´ıln´ ych amplitud´ach sousedn´ıch period sign´alu - po energetick´e normalizaci by mˇela staˇcit tvarov´a podobnost period. Koneˇcnˇe nestrann´ y odhad NCCF (5) kombinuje energetickou normalizaci s narovn´an´ım trendu. N −1 1 n=0 x(n)x(n + k) qP nN CCF (k) = , k = 0, 1, ...K P N −1 N −k x(n)2 N −1 x(n + k)2
P
n=0
2.2
(5)
n=0
Vlastnosti autokorelaˇ cn´ıch funkc´ı s ohledem na nalezen´ı nejkratˇ s´ı periody (tedy z´ akladn´ı frekvence) sign´ alu
Pˇredpokl´ad´ame, ˇze vybran´e okno sign´ alu je periodick´e s periodou T0 . Pak plat´ı, ˇze je periodick´e i se vˇsemi pˇrirozen´ ymi n´ asobky periody T0 : x[k + nT0 ] = x[k] Oˇcek´avan´e vrcholy (peaky) autokorelaˇcn´ı funkce budou proto nejen na hodnotˇe zpoˇzdˇen´ı T0 , ale i na zpoˇzdˇen´ı 2T0 , 3T0 , atd. Pokud bude sign´al stacion´arn´ı v r´amci cel´eho okna (z´akladn´ı frekvence bude konstantn´ı), pak lze oˇcek´avat i zcela totoˇzn´e hodnoty nestrann´eho odhadu autokorelaˇcn´ı funkce v bodech T0 , 2T0 , 3T0 atd. Hodnoty odhadu vych´ ylen´eho (1) budou line´arnˇe klesat spolu s u ´bytkem ˇclen˚ u sumy pro rostouc´ı zpoˇzdˇen´ı k. Dodejme jen, ˇze frekvenˇcn´ı anal´ yzou sign´alu ˇz´adn´e sub-harmonick´e sloˇzky F0 /2, F0 /3, ... (odpov´ıd´aj´ıc´ı 2T0 , 3T0 , ...) nenalezneme, jedn´a se o tzv. ”virtu´ aln´ı” z´ akladn´ı frekvence. Pokud je jako z´akladn´ı frekvence u ´seku oznaˇcena frekvence F0 /2 (odpov´ıdaj´ıc´ı 2T0 ), jedn´a se o ”halving” (poloviˇcn´ı) okt´avovou chybu odhadu. U nestrann´eho odhadu se tedy ˇcasto setk´ av´ame s nadrˇzov´an´ım niˇzˇs´ıch frekvenc´ı, kter´e odpov´ıdaj´ıc´ı n´asobk˚ um skuteˇcn´e F0 .
2.3
Uk´ azka v´ ystupu metod pˇ ri zkr´ acen´ı okna
M´ame znˇel´ y u ´sek ˇreˇci s F0=68Hz vzorkovan´ y frekvenc´ı 20kHz. Pln´a d´elka takov´eho u ´seku je 51,2ms (vybrali jsme okno dlouh´e 1024 vzork˚ u, tedy bˇeˇznˇe detekovateln´a nejniˇzˇs´ı z´akladn´ı frekvence F 0min pˇri existenci dvou cel´ ych period sign´alu v u ´seku je aˇz 39Hz). Z´akladn´ı perioda sign´alu tedy odpov´ıd´ a zhruba 294 vzork˚ um. Nyn´ı vezmˇeme pouze levou polovinu u ´seku - prvn´ıch 25,6ms (512 vzork˚ u, tedy bˇeˇznˇe detekovateln´a F 0min vzroste na 78,13Hz), tento u ´sek je nakreslen na obr´azku 1a. Vˇsimnˇeme si, ˇze se do nˇej nevejdou cel´e dvˇe periody sign´alu, ty jsou totiˇz dlouh´e zhruba 588 vzork˚ u. Avˇsak funkce NCCF byla schopna detekovat F0 pomˇernˇe spr´avnˇe (obr.1c). D´ale m´ame jeˇstˇe v´ıce zkr´ acen´ y u ´sek (obr.1b), kter´ y obsahuje pouze prvn´ı 3/4 jiˇz zkr´acen´eho u ´seku, tedy 19,2ms (384 vzork˚ u, ˇcemuˇz odpov´ıd´a bˇeˇznˇe detekovateln´a F 0min =104,17Hz). I v tomto pˇr´ıpadˇe je funkce NCCF schopn´a F0 pomˇernˇe spr´avnˇe detekovat (obr.1d).
(a) Zkr´ acen´e okno sign´ alu 512 vzork˚ u, T0=294 vzork˚ u
(b) Zkr´ acen´e okno sign´ alu 384 vzork˚ u, T0=294 vzork˚ u
(c) NCCF funkce na oknˇe 512 vzork˚ u
(d) NCCF funkce na oknˇe 384 vzork˚ u
Figure 1: Zkr´ acen´ a okna sign´ alu a detekce jejich z´akladn´ı frekvence pomoc´ı NCCF
3
Pouˇ zit´ a datab´ aze
V experimentu byla pouˇzita referenˇcn´ı F0 datab´aze KEELE Pitch DB [4]. Jedn´a se o jednokan´alovou datab´ azi, ve kter´e jsou referenˇcn´ı hodnoty z´ısk´any z pˇridruˇzen´eho laryngographov´eho sign´alu. Obsahem datab´ aze je anglick´ y text o d´elce zhruba 30 vteˇrin ˇcten´ y 10 neprofesion´aln´ımi mluvˇc´ımi, pˇeti muˇzi a pˇeti ˇzenami. Form´at datab´aze je n´asleduj´ıc´ı: vzorkovac´ı frekvence 20kHz, Mono, 16-bit Little Endian.
4 4.1
Pouˇ zit´ a krit´ eria pro hodnocen´ı PDA Znˇ elost/neznˇ elost (V/UV), chyby znˇ elosti
Znˇelost u ´seku je ˇcasto rozhodov´ ana na z´akladˇe prahov´an´ı velikosti maxima spoˇcten´e korelaˇcn´ı funkce - pr´ah je obvykle nastaven na fixn´ı hodnotu podle povahy testovan´eho materi´alu (pˇr´ıtomnost ˇsumu v nahr´ avk´ ach) a m˚ uˇze pro jeden dan´ y PDA fungovat uspokojivˇe. Tento postup s jedn´ım pevn´ ym prahem ale nebude fungovat pro r˚ uzn´e varianty PDA, kdy doch´az´ı k neline´arn´ım modifikac´ım korelaˇcn´ıch kˇrivek. Detekce znˇelosti vˇsak nen´ı prim´arn´ım c´ılem pr´ace, a proto jsme pro porovnatelnost vˇsech metod ve fin´ aln´ı f´azi naˇseho experimentu vyˇradili V/UV blok. Vˇsechny u ´seky byly tedy algoritmy povaˇzovan´e za znˇel´e a doˇslo u nich k v´ ypoˇctu odhadu F0. Ve f´ azi hodnocen´ı v´ ysledk˚ u jsou vˇsak br´ any v potaz pouze ty u ´seky, kter´e jsou referenˇcnˇe oznaˇceny jako znˇel´e. Vˇsechny algoritmy tedy v experimentu dosahuj´ı stejn´ ych hodnot chyb znˇelosti, coˇz d´ ale umoˇzn ˇuje objektivn´ı mˇeˇren´ı.
4.2
Chyby pˇ resnosti
Gross Error High GEH (Gross Error Low GEL) je pod´ıl odhad˚ u F0 (spr´avnˇe urˇcen´ ych jako znˇel´ ych), kter´e se nevejdou do 20% horn´ı (doln´ı) frekvenˇcn´ı tolerance v Hz. Chyby GEH10 a GEL10 byly zavedeny analogicky pro pˇr´ısnˇejˇs´ı toleranci jen 10%. Mezi okt´avov´e chyby patˇr´ı halving chyby (HE - odhad frekvence je polovina referenˇcn´ı hodnoty) a doubling chyby (DE dvojn´asobek), zde pouˇz´ıv´ ame toleranci 1 p˚ ult´onu na obˇe strany od referenˇcn´ı hodnoty F0.
4.3
Chyby v p´ asmech
V´ yˇse zm´ınˇen´e chyby pˇresnosti pˇredstavuj´ı jen jednu ˇc´ast pohledu na danou skuteˇcnost. Pro podrobnˇejˇs´ı anal´ yzu a ucelen´ı tohoto pohledu na zkoumanou metodu uv´ad´ıme tak´e v´ yˇcet procentu´aln´ı chybovosti metody v urˇcit´ ych referenˇcn´ıch frekvenˇcn´ıch p´asmech. Osvˇedˇcilo se n´am rozdˇelit hlasov´ y rozsah na pˇet 2/3-okt´avov´ ych p´asem (57Hz-88Hz, 88Hz-141Hz, 141Hz-225Hz, 225Hz-353Hz, 353Hz-565Hz). Z vlastn´ı zkuˇsenosti m˚ uˇzeme tvrdit, ˇze valn´a vˇetˇsina referenˇcn´ıch F0 v muˇzsk´ ych promluv´ ach se nach´ az´ı ve druh´em frekvenˇcn´ım p´asmu a v ˇzensk´ ych promluv´ach ve tˇret´ım frekvenˇcn´ım p´ asmu. Pro tento experiment jsme pouˇzili 20% toleranci pro mˇeˇren´ı chyb v p´asmech, ud´ av´ an´ a hodnota je tedy souˇctem GEH+GEL pro dan´e p´asmo.
4.4
Statistick´ a krit´ eria
K vyhodnocen´ı pouˇz´ıv´ ame tak´e vylepˇsen´a statistick´a krit´eria [1] - stˇredn´ı hodnotu rozd´ılu ∆% (6) a smˇerodatnou odchylku rozd´ıl˚ u δ% (7), obˇe poˇc´ıtan´e v centech p˚ ult´on˚ u (100cent˚ u=1p˚ ult´ on).
∆% =
N 1200 X Fest (n) log2 N n=1 Fref (n)
v u N u1 X Fest (n) δ% = t [1200 log2 − ∆% ]2
N
5
n=1
Fref (n)
(6)
(7)
Popis a nastaven´ı experimentu
5.1
Zkouman´ e PDA metody
Vˇsechny testovan´e algoritmy ve sv´e podstatˇe vych´azej´ı z autokore poˇc´ıtan´e v ˇcasov´e oblasti: • M0 - ACF - vych´ ylen´ y odhad na pln´em oknˇe • M1 - ACF - nestrann´ y odhad na pln´em oknˇe • M2 - NCCF na pln´em oknˇe • M3 - Nestrann´ y odhad NCCF na pln´em oknˇe • M4 - NCCF na 3/4 zkr´ acen´em oknˇe • M5 - Nestrann´ y odhad NCCF na 3/4 zkr´acen´em oknˇe
• M6 - NCCF na 2/3 zkr´ acen´em oknˇe • M7 - Nestrann´ y odhad NCCF na 2/3 zkr´acen´em oknˇe D˚ usledky zkr´ acen´ı okna na 3/4 a 2/3 d´elky pro u ´sek s p˚ uvodnˇe nejniˇzˇs´ı detekovatelnou frekvenc´ı (pln´e okno tedy obsahuje pˇresnˇe dvˇe periody sign´alu) jsou n´asleduj´ıc´ı: Pokud zkr´at´ıme pln´e okno na 3/4 jeho d´elky, pak pro takov´ y u ´sek se budou v korelaˇcn´ı sumˇe pro zpoˇzdˇen´ı k odpov´ıdaj´ıc´ı maxim´ aln´ı detekovan´e periodˇe MAX PER porovn´avat pouze prvn´ı poloviny p˚ uvodn´ıch period (zprava zkr´ acen´e okno n´am neumoˇzn´ı porovnat dalˇs´ı vzorky). Pro pˇr´ıpad zkr´acen´ı okna na 2/3 se v takov´em pˇr´ıpadˇe porovn´avaj´ı jen lev´e tˇretiny p˚ uvodn´ıch period.
5.2
DSP blok
Cel´ y experiment prob´ıh´ a v offline reˇzimu - m´ame tedy v kaˇzd´em okamˇziku dostupn´ y cel´ y sign´ al, kter´ y nejprve normalizujeme tak, aby rozsah amplitud byl v intervalu < 0; 1 >. D´ale n´asleduje bˇeˇzn´e DSP - ze sign´ alu jsou s 50% pˇrekryvem br´any u ´seky, z kaˇzd´eho u ´seku dost´av´ame odhad ˇ adn´e pˇredzpracov´an´ı u jedn´e z´akladn´ı frekvence. Z´ ´seku sign´alu nen´ı provedeno. V pˇr´ıpadˇe potˇreby dosaˇzen´ı vyˇsˇs´ı robustnosti algoritmu lze napˇr´ıklad zaˇradit high-pass filtr se zlomovou frekvenc´ı 50Hz, kter´ y odstran´ı s´ıˇtovou sloˇzku. Nejniˇzˇs´ı hledan´a frekvence F 0min byla nastavena na 62.5Hz, nejvyˇsˇs´ı F 0max na 450Hz. D´elka pln´eho okna byla nastavena pˇresnˇe na dvojn´asobek periody F 0min , tedy na 32ms.
6
V´ ysledky a jejich zhodnocen´ı
D´ıky u ´mysln´e absenci rozhodovac´ı logiky VUV jsou vˇsemi testovan´ ymi metodami povaˇzov´any vˇsechny u ´seky za znˇel´e, coˇz vede k hodnot´am Voiced Error (VE) = 0% a Unvoiced Error (UE)=1. Tyto hodnoty tedy v tabulk´ ach s v´ ysledky uvedeny z´amˇernˇe nejsou, protoˇze pro tento experiment nepˇrin´aˇsej´ı ˇz´ adnou informaci. V´ ysledky pro KEELE ˇreˇcovou datab´azi jsou v tabulce 2 a 3. Table 2: V´ ysledky namˇeˇren´e na KEELE datab´azi, prvn´ı ˇc´ast PDA method M0 M1 M2 M3 M4 M5 M6 M7
GEH [%] 3,17 1,98 1,57 0,75 1,06 0,43 0,74 0,30
GEL [%] 1,83 9,37 6,78 66,18 11,19 68,80 14,71 70,65
GEH10 [%] 4,56 3,24 2,80 1,42 1,96 0,98 1,52 0,71
GEL10 [%] 3,94 11,56 8,97 67,57 13,01 70,13 16,31 71,68
DE [%] 0,88 0,50 0,35 0,14 0,24 0,06 0,15 0,02
HE [%] 0,57 5,30 3,49 18,40 6,27 18,60 8,15 18,90
∆% (cents)
δ% (cents)
5,3 -126 -93 -1246 -165 1374 -224 -1344
313 473 399 994 494 978 561 964
Nestrann´ y odhad zklamal jiˇz ve variant´ach na pln´e d´elce okna (M1 a M3). M1 oproti z´akladn´ı autokorelaˇcn´ı metodˇe vych´ ylen´eho odhadu (M0) sice pˇrin´aˇs´ı drobn´e zlepˇsen´ı chybovosti typu Gross Error High (GEH,GEH10 a DE) a sn´ıˇzen´ı chybovosti v nejniˇzˇs´ım p´asmu, to je ale vykoupeno v´ yrazn´ ym zv´ yˇsen´ım chyb typu GEL a chybovosti ve tˇret´ım a ˇctvrt´em frekvenˇcn´ı p´asmu. Potvrdila se tedy tendence nestrann´eho odhadu nadhodnocovat vyˇsˇs´ı zpoˇzdˇen´ı (lagy) a detekovat tak frekvence niˇzˇs´ı neˇz referenˇcn´ı. Samotn´a energetick´a normalizace na pln´em oknˇe (M2) pˇrin´aˇs´ı zlepˇsen´ı GEH, kter´e je opˇet kompenzov´ano v´ yraznˇejˇs´ım zhorˇsen´ım GEL.
Table 3: V´ ysledky namˇeˇren´e na KEELE datab´azi, druh´a ˇc´ast
PDA method M0 M1 M2 M3 M4 M5 M6 M7
procento chyb ve 2/3 okt´avov´ ych p´asmech (20% tolerance) 57Hz-88Hz 88Hz-141Hz 141Hz-225Hz 225Hz-353Hz 353Hz-565Hz 28,3 5,1 6,7 2,8 38,1 18,9 6,7 15,8 12,6 39,8 17,0 5,0 12,6 8,6 41,5 12,0 28,1 92,3 89,6 85,6 14,2 7,9 18,5 12,5 42,4 11,5 29,3 95,5 92,8 92,4 13,8 10,2 23,3 15,9 41,5 13,0 31,7 96,3 94,4 92,4
Energetick´ a normalizace dohromady s nestrann´ ym odhadem (M3) m´a zcela nepˇr´ıpustnou hodnotu GEL>60% a oba principy pouˇzit´e u t´eto metody se evidentnˇe podporuj´ı v nadhodnocov´an´ı niˇzˇs´ıch frekvenc´ı. Zkr´ acen´ı okna na 3/4 p˚ uvodn´ı d´elky vede u NCCF (M4) ke zhorˇsen´ı GEL z 6.78% na 11,19%. Zkr´ acen´ı na 2/3 (M6) pak oproti cel´emu oknu sice sniˇzuje GEH na polovinu, ale souˇcasnˇe zhruba dvakr´ at zvyˇsuje GEL. Je tedy jasnˇe vidˇet, ˇze NCFF je schopna detekovat p˚ uvodn´ı n´ızk´e frekvence i se zkr´acen´ ym oknem, ale za cenu zv´ yˇsen´ı GEL chyb.
7
Z´ avˇ er
Pˇredstavili jsme myˇslenku, kter´ a je zaloˇzena na energeticky normalizovan´e korelaˇcn´ı funkci a umoˇzn ˇuje detekovat z´ akladn´ı frekvence i z okna kratˇs´ıho neˇz dvˇe periody sign´alu. Nestrann´ y odhad korelaˇcn´ı funkce v kombinaci s normalizovanou energi´ı bohuˇzel ned´av´a dobr´e v´ ysledky a systematicky velmi zv´ yhodˇ nuje niˇzˇs´ı frekvence. Avˇsak i samotn´a energetick´a normalizace nadrˇzuje niˇzˇs´ım frekvenc´ım. Jistˇe bude na dalˇs´ım zkoum´an´ım, zda-li se podaˇr´ı dalˇs´ımi u ´pravami algoritmu v´ıce se na zkr´ acen´em oknˇe pˇribl´ıˇzit v´ ysledk˚ um p˚ uvodn´ı autokorelaˇcn´ı funkce na nezkr´acen´em oknˇe.
8
Podˇ ekov´ an´ı
ˇ Tento v´ yzkum je podporov´ an Ceskou grantovou agenturou v r´amci grantu SGS12/143/OHK3/2T/13 ”Algoritmy a hardwarov´e realizace ˇc´ıslicov´eho zpracov´an´ı sign´al˚ u”.
References [1] Hynek Boˇril and Petr Poll´ ak. Direct time domain fundamental frequency estimation of speech in noisy conditions. in Proceedings of EUSIPCO 2004 (European Signal Processing Conference, Vol. 1), pages 1003–1006, 2004. [2] Patricio De La Cuadra and Aaron Master. Efficient pitch detection techniques for interactive music. In In Proceedings of the 2001 International Computer Music Conference, La Habana, 2001. [3] J. J. Dubnowski and R. W. Schafer. Digital hardware for pitch detection. The Journal of the Acoustical Society of America, 56(S1):S16–S16, 1974.
[4] G. Meyer F. Plante and A. Ainsworth. A pitch extraction reference database. In Eurospeech, pages 837–840, 1995. ˇ ıslicov´e zpracov´ ˇ [5] P. Sovka J. Uhl´ıˇr. C´ an´ı sign´ al˚ u. CVUT Praha, 1995. [6] Fei Sha and Lawrence K. Saul. Real-time pitch determination of one or more voices by nonnegative matrix factorization. In in Advances in Neural Information Processing Systems 17, pages 1233–1240. MIT Press, 2005. [7] D. Talkin. A robust algorithm for pitch tracking (rapt). Speech Coding and Synthesis, Elsevier Science, pages 495–518, 1995.
Jan Bartoˇsek
[email protected]