Wikipedia-sidan för genomsnittlig magnitudskillnadsfunktion / -formel (AMDF) verkar vara tom. Vad är en AMDF? Vad är AMDF: s egenskaper? Vad är AMDF: s styrkor och svagheter jämfört med andra tonhöjningsmetoder som autokorrelation?
Kommentarer
- Det här papperet är ganska praktiskt.
Svar
Jag har aldrig sett ordet ”Formula” med ”AMDF”. Min förståelse för definitionen av AMDF är
$$ Q_x [k, n_0] \ triangelq \ frac {1} {N} \ sum \ limit_ {n = 0} ^ {N-1} \ Stor | x [n + n_0] – x [n + n_0 + k] \ Big | $$
$ n_0 $ är det intressanta området i $ x [n] $ . Observera att du bara sammanfattar icke-negativa termer. Så $ Q_x [k, n_0] \ ge 0 $ . Vi kallar ” $ k $ ” ”lag” . Tydligt om $ k = 0 $ , sedan $ Q_x [0, n_0] = 0 $ . Även om $ x [n] $ är periodiskt med period $ P $ (och låt oss låtsas för tillfället att $ P $ är ett heltal) sedan $ Q_x [P, n_0] = 0 $ och $ Q_x [mP, n_0] = 0 $ för alla heltal $ m $ .
Nu även om $ x [n] $ inte är exakt periodisk, eller om perioden inte exakt är ett heltal prover (med den specifika samplingsfrekvensen du använder), förväntar mig $ Q_x [k, n_0] \ ca 0 $ för alla fördröjningar $ k $ som är nära till perioden eller någon helmultipel av perioden. Faktum är att om $ x [n] $ är nästan periodisk, men perioden inte har ett heltal antal prover, förväntar vi oss att kunna interpolera $ Q_x [k, n_0] $ mellan heltalsvärden $ k $ för att få ett ännu lägre minimum.
Min favorit är inte AMDF utan ”ASDF” (gissa vad ”S” står för?)
$$ Q_x [k, n_0 ] \ triangleq \ frac {1} {N} \ sum \ limit_ {n = 0} ^ {N-1} \ big (x [n + n_0] – x [n + n_0 + k] \ big) ^ 2 $ $
Visas att du kan göra kalkyl med det eftersom kvadratfunktionen har kontinuerliga derivat, men funktionen för absolutvärde inte.
Här är en annan anledning som jag gillar ASDF bättre än AMDF. Om $ N $ är väldigt stort och vi spelar lite snabbt och löst med summeringsgränserna:
$$ \ begin {align} Q_x [k] & = \ frac {1} {N} \ left (\ sum_n \ big (x [n] – x [n + k] \ big) ^ 2 \ höger) \\ & = \ frac {1} {N} \ left (\ sum_n (x [n]) ^ 2 + \ sum_n (x [ n + k]) ^ 2 – 2 \ sum_n x [n] x [n + k] \ höger) \\ & = \ frac {1} {N} \ sum_n ( x [n]) ^ 2 + \ frac {1} {N} \ sum_n (x [n + k]) ^ 2 – \ frac {2} {N} \, \ sum_n x [n] x [n + k ] \\ & = \ överlinje {x ^ 2 [n]} + \ överlinje {x ^ 2 [n]} – 2 \, R_x [k] \\ & = 2 \ vänster (\ överlinje {x ^ 2 [n]} – R_x [k] \ höger) \\ \ slut {align} $$
där
$$ \ börjar {align} R_x [k] & \ triangleq \ frac {1} {N} \ sum_n x [n] x [n + k] \\ & = \ overline {x ^ 2 [n]} – \ tfrac {1} {2} Q_x [k] \\ & = R_x [0] – \ tfrac {1} {2} Q_x [k] \\ \ end {align} $$
identifieras normalt som ”autokorrelation” för $ x [n] $ .
Så vi förväntar oss att autokorrelationsfunktionen är en upp och ner (och offset) replik av ASDF. Varhelst autokorrelationstopparna är där ASDF (och vanligtvis också AMDF) har ett minimum.