Полифазное FFT - миф или реальность?

В одной из тем на форуме, мелькнуло упоминание о "полифазном FFT", мне показалось это достаточно интересным, тем более, что пройдясь по ссылкам полученным на запрос "polyphase FFT" неизменно встречались выражения типа high dynamic resolution и прочие не менее завлекательные вещи. Еще больше поражает простота с которой получают, или, если быть точным, обещают получить все эти прелести. Обычно, если есть метод дающий некоторые уникальные преимущества, должен быть софт в котором эти преимущества видны. Такой софт нашелся на сайте Rocky/ правда выяснилось, что он не работает с обычными wav файлами, а заточен под два квадратурных канала для SDR технологии. На этом же сайте есть сравнительные спектры обычного FFT и "полифазного".



Слов нет, на лицо разница в пользу "полифазного FFT", закономерный вопрос, где анализаторы спектра со столь качественным разрешением, и отчего отечественные авторы обходят тему "полифазного FFT" упорным молчанием? Попробуем разобраться со всем этим, не претендуя ни на верность выводов, ни на правильность подхода в принципе, нас интересует сам метод и его "феноменальные" возможности, насколько все это обосновано и за счет чего получается. Принцип "полифазного FFT" на удивление прост, исходный блок отсчетов сигнала после "взвешивания" разбивается на неперекрывающиеся сегменты стык в стык, затем эти сегменты складываются друг с другом, после чего берется обычное FFT. Все! Эта не хитрая процедура, по уверениям авторов, обеспечивает high dynamic resolution, доказательством чего служат сравнительные спектры приведенные выше. Умножение на "поворачивающие множители", для выравнивания фаз, по словам самих же авторов процедура для многих приложений не обязательная, так как не влияет на амплитуды частотных составляющих, по крайней мере для сонограмм, и легко может быть пропущена. Если вы хоть раз пытались получить от обычного FFT high dynamic resolution, вы не можете не чувствовать подвох, вопрос в чем он, где и почему. Легкость реализации "полифазного FFT", дает легкую возможность все проделать собственными руками слегка модернизировав соответствующий софт, сделаем это. Будем брать выборку в N отчетов, после "взвешивания" окном Кайзера, разобъем ее на четыре сегмента по N/4 отсчета, сложим все вместе и сделаем классическое FFT на N/4 отсчета, в общем все как написано, и сравним с обычным FFT на N/4 отсчета.





Как видим, все "честно", разрешение "полифазного FFT" лучше чем у классического с таким же окном. Хорошо бы определиться на сколько лучше. На столько, насколько сегменты меньше основного блока, в нашем случае в четыре раза, а это значит, если мы возьмем классическое FFT от блока N отсчетов, мы получим в точности такую же картину как у "полифазного" от N/4. Проверяем.





То есть, high resolution носит довольно локальный и условный характер, оно ничуть не лучше классического FFT взятого от всего блока, а если присмотреться, то оно хуже, линии более размытые. Автоматически возникает вопрос, раз это так, то в чем прикол? Может тогда dynamical тут рулит? Увы, динамика точно такая же как и у классики, что "полифазное FTT", что классическое равноценное по основному блоку, работают с блоком в N отсчетов, что и ограничивает минимальное разрешение во времени. Собственно чуда не произошло, "полифазное FFT" реально не дает, ни высокого разрешения, ни динамики, лучше, чем это можно получить и обычным FFT. Это означает, если мы имеем блок в 4096 отсчетов "полифазное FFT" нам не даст ни чего такого, чего бы мы не могли получить от классического. ;)
Сдается мне, история с "полифазным FFT" имеет много общего с преобразованием Хартли. В свое время это преобразование было запатентовано, и всякий кто его хотел использовать должен был платить, в 1994 году(если не ошибаюсь) срок патента истек, преобразование получило широкую огласку, появились быстрые алгоритмы, однако и по сей день оно остается довольно экзотической вещью, с трудом пробиваясь в массы, чего не скажешь про Фурье преобразование. Думаю, что в свое время, когда вычислительные мощности не позволяли в реальном времени делать FFT с относительно большими выборками, было найдено и так же запатентовано "полифазное FFT", которое позволяло с небольшим FFT ядром обрабатывать относительно большие блоки малой вычислительной мощностью с приемлимым качеством, со временем проблема мощностей потеряла актуальность, и "полифазное FFT" вышло в свет. На сегодня оно не имеет ни каких преимуществ перед классическим, ни в разрешении, ни в динамике, и его использование оправдано в случаях, когда сильно ограничены вычислительные ресурсы или задачи очень масштабны. К слову,подход предлагаемый "полифазным FFT" вовсе не нов, аналогичные вещи хорошо известны, когда делаются спектры маленьких сегментов из большой выборки(сегменты могут перекрываться) и потом складываются и усредняются, разница в том, что в "полифазном" подходе явный упор на минимизацию вычислений, реализованный весьма изящно и неожиданно, при, в общем то, тех же результатах. В общем "полифазное FFT" не обладает ни какими суперразрешениями и динамикой, оно дает именно то, что позволяет основной блок отсчетов, ни больше ни меньше, а в сравнении с классическим FFT того же размера что и основной блок, даже хуже, разница в худшую сторону будет тем больше чем больше будет длина сегментов отличатся от основного блока отсчетов, под "динамикой" возможно имеется ввиду именно скорость вычислений, она действительно высокая. Использовать "полифазное FFT" или классическое, вопрос скорее риторический, зависит от задач и области применения, просто важно понимать, если задача решается и классическим методом, то "полифазный" будет проигрывать по разрешению, оно у него хуже, если классические варианты очень объемны по затратам или не применимы в принципе, "полифазный" как альтернатива вполне хорош, но не стройте иллюзий насчет суперразрешений. ;) Просьба не путать "полифазное FFT", с полифазной фильтрацией.

Еще на упомянутом выше сайте очень интересный намек на super-high resolution на спектрах



Ссылка на алгоритм мертвая, но думается, это не имеет отношения к процессу вычисления спектра, а скорее всего результат обработки именно его изображения с целью повышения резкости, впечатляет конечно, смотрится великолепно. getQuotation();






Рекомендуемый контент




Copyright © 2010-2017 housea.ru. Контакты: info@housea.ru При использовании материалов веб-сайта Домашнее Радио, гиперссылка на источник обязательна.