Arduino Pitch upptäckt algoritm (med AMDF) (8 / 8 steg)
Steg 8: slutsatser
Den största begränsande faktorn i denna kod är lågfrekventa analysen. Måste det göra alla beräkningar på 392 prover för låg frekvensanalys på 196hz. En särskild källa till ytterligare förbättring skulle beräkna på varje fjärde prov vid lägre frekvenser.
I stället för beräkning av 392 prover kan bara plocka intervall inom detta intervall så gör matematik på hälften eller kvartal antalet prover vara fördelaktigt. Problemet blir dock sedan kantutjämning eller ett falskt intryck av en signal på grund av övertoner multiplar visar i data. Som skulle kunna kompenseras genom slumpmässiga intervall poäng? Om du inte vet är vad anti-aliasing är här ett snabbt exempel. Minns att titta på bil hjulen roterar? Baserat på det ljus som du kan se det, ett hjul faktiskt går framåt kan verka som om dess roterande bakåt. Ljuskälla (60hz glödlampa) precis som samplingsfrekvens, och ögat precis som algoritmen, att bearbeta informationen på ett särskilt sätt att ge dig ett felaktigt intryck.
Jag har inte helt analyserat om dess mödan värt ändå. Jag kommer att rapportera tillbaka och uppdatera när jag gör!