Я искал в магазине приложений для Android гитарный тюнер. Я нашел приложение тюнера, которое утверждало, что оно быстрее, чем другие приложения. Он заявил, что может найти частоту без использования DFT (хотелось бы, чтобы у меня все еще был URL к этой спецификации).
Я никогда не слышал об этом. Можете ли вы получить аудиосигнал и вычислить частоту, не используя алгоритм DFT или FFT?
БПФ сообщает о пике или пиках частоты спектра (квантованных по размеру бина БПФ), который отличается от музыкальной высоты. Вполне возможно, что воспринимаемая частота основного тона будет полностью отсутствовать в спектре БПФ.
Некоторые из самых простых гитарных тюнеров просто использовали низкочастотную или полосовую фильтрацию и измерили время между переходами через ноль. Обратная дает оценку частоты.
Автокорреляция является еще одним распространенным методом оценки основного тона; и скользящая корреляция или другие меры самоподобия имеют множество вариаций, таких как скользящая ASDF (квадратная разность), AMDF (средняя разница), нелинейные сопоставления с образцом, адаптивная проверка только для ограниченного диапазона лагов, интерполяция лагов, оконное отображение и адаптивный выбор окна, различные весовые коэффициенты или использование теории принятия решений для выбора из нескольких возможных последовательностей истории лагов и т. д. Одна из проблем с большинством мер самоподобия - это выбор подходящей октавы, поскольку субоктава может показывать почти одинаковое сходство.
Другие возможности включают использование ФАПЧ, отфильтрованных квадратурных демодуляторов, отфильтрованных преобразований Гильберта и т. Д.
Но обратите внимание, что некоторые методы фильтрации и демодуляции DSP в вычислительном отношении почти эквивалентны выполнению 1-бина оконного ДПФ, что может или не может соответствовать ответу на ваш вопрос.
источник
Обнаружение высоты тона может быть сделано многими универсальными и любопытными способами. Один из способов сделать это - использовать автокорреляцию . Эта статья дает пример того, как ее можно использовать. Автокорреляцию можно сделать смехотворно простой, используя 1-битный коррелятор (по какой-то причине не удалось найти приличных статей по этому вопросу). Теоретически, шаг может быть обнаружен быстрее, чем с помощью FFT, но я сомневаюсь, что он будет гораздо более точным без действительно умной предварительной обработки.
источник
Также взгляните на относительно новое алгоритмически определенное преобразование Гильберта-Хуанга (HHT). Он может обрабатывать нестационарные нелинейные сигналы, которые могут иметь отношение к вашему применению.
источник
Если вы точно знаете, какую частотную ячейку вы ищете в DFT / FFT, то вы можете использовать алгоритм Гертцеля, чтобы получить значение только этой ячейки.
http://en.wikipedia.org/wiki/Goertzel_algorithm
источник
Я купил гитару месяц назад и начал писать тюнер на основе PLL .
Одним из ресурсов, которые я использовал для понимания PLL, была страница «Понимание циклически замкнутых циклов» страницы Пола Лютуса.
источник
Вы можете фактически вычислить частоту сигнала, используя его псевдоспектр, который смотрит на собственные векторы его матрицы автокорреляции. Это в основном разлагает ваш сигнал на шум и сигнальные подпространства. Оттуда вы можете найти его спектр. (Вы также можете ограничить его и указать диапазон частот для проверки). Это также довольно шумоизоляция. Конечно, это параметрический метод, а не непараметрический, как DFT.
источник
Все зависит от того, на какой платформе вы хотите его обработать, если вам нужна простая схема, я предлагаю взорвать сигнал с усилением, превратить его в прямоугольную волну и измерить период с помощью микроконтроллера с помощью таймера.
Но если вы хотите заняться обработкой сигналов, попробуйте метод MUSIC:
http://en.wikipedia.org/wiki/Multiple_signal_classification
Надеюсь, это поможет
источник
Существует много методов оценки основного тона без использования DFT / FFT, некоторые из них, включая метод MUSIC, перечислены в этом документе: https://ieeexplore.ieee.org/abstract/document/6521410/ Результаты моделирования в этой статье указывают что, когда основная частота очень низкая, точный метод NLS превосходит другие среди перечисленных.
источник