Цитата(QuickNick @ Jul 19 2011, 13:37)

У меня возник вопрос по переводу на дискретных множествах из сачтоты в частоту - никак не могу по примерам поймать закономерность.
signalLength - длина сигнала.
sampleRate - частота дискретизации.
Когда получаем спектр, то частоте, равной (i*sampleRate/signalLength), соответствуют коэффициэнты в массиве в ячейках 2*i (косинус) и 2*i+1 (синус).
Но с сачтотой не понимаю - когда мы получили кепстр, то ячейки 2*i и 2*i+1 будут соответствовать какой сачтоте и какой частоте?
Правильно это задумано так: БПФ->определение амплитуд->логарифмирование с ограничением чтобы уравнять гармоники->Еще раз БПФ чтобы собрать каждую группу кратных гармоник в одну сачтоту->определение амплитуд. Таким образом сачтота обратно пропорциональна расстоянию между кратными частотами(1 / fundamental frequency!). Так было задумано.
Однако:
1.Логарифмирование с ограничением не очень понятная операция, я бы предложил какое-нибудь АРУ по максимумам.
2.Сигнал совсем не похож на синусы, спектр от него маловразумительный, может нелинейность вставить?
Пробовал, результат есть, но не нравится. Метод надо бы доработать.
PS:А если чистый синус подавать без кратных гармоник, то только выброс на нулевой сачтоте и остального по мелочи.
Сообщение отредактировал SPACUM - Jul 20 2011, 07:37
Ты можешь знать все что угодно, но пока ты не доказал это на практике, ты не знаешь ничего!© Ричард Бах