http://nbviewer.jupyter.org/gist/leftaroundabout/83df89a7d3bdc24373ea470fb50be629
DFT, розмір 16
FFT, розмір 16
Різниця в складності досить очевидно з цього, чи не так?
Ось як я розумію FFT.
По-перше, я б завжди думав про перетворення Фур'є насамперед як перетворення безперервних функцій, тобто бієктивне відображення . У цьому світлі зрозуміло, що перейти на "найглибший рівень" та перейти на окремі елементи неможливо , тому що "окремі елементи" - це єдині точки на реальній лінії, яких є надмірно нескінченними. .FT:L2(R)→L2(R)
То як же ця трансформація все ще чітко визначена? Що ж, важливо, щоб він працював не на загальному просторі функцій а лише на просторі (Lebesgue-, квадратних) інтегруваних функцій. Тепер ця інтеграція не є дуже сильною властивістю (набагато слабшою, ніж диференційованість тощо), але вона вимагає, щоб функція стала "локально доступною для відображення з інформацією, що обчислюється". Така характеристика задана коефіцієнтами короткочасного перетворення Фур'є . †R→CНайпростіший випадок полягає в тому, що ваша функція є безперервною, і ви поділяєте її на настільки малі регіони, що вони в основному постійні в кожному з них. Тоді кожен із STFT має найбільш сильний нульовий доданок. Якщо ви ігноруєте (інакше занепадаючі) інші коефіцієнти, то кожен домен - це лише одна точка даних. З усіх цих коротко-часових граничних коефіцієнтів ви можете взяти дискретні перетворення Фур'є. Насправді це саме те, що ти робиш, виконуючи будь-який FT на вимірюваних реальних даних!
Однак вимірювані дані не обов'язково повинні відповідати основній фізичній величині. Наприклад, коли ви вимірюєте деяку інтенсивність світла , ви насправді просто вимірюєте амплітуду електромагнітної хвилі, частота якої сама зависока, щоб бути вибіркою з АЦП. Але очевидно, ви можете також обчислити DFT вибіркового сигналу інтенсивності світла, і це дешево, незважаючи на шалену частоту світлової хвилі.
Це можна зрозуміти як найважливішу причину FFT дешева:
Не турбуйтеся намагатися побачити окремі цикли коливань з найвищого рівня. Натомість трансформуйте лише дещо інформацію високого рівня, яка вже була попередньо оброблена локально.
Але це ще не все. Чудова річ у FFT полягає в тому, що він все ще надає всю інформацію, яку надає повна DFT . Тобто всю інформацію, яку ви також отримаєте, відбираючи точну електромагнітну хвилю світлового променя. Чи можна це досягти шляхом перетворення фотодіодного сигналу? - Ви можете виміряти точну частоту світла від цього?
Ну, відповідь - ні, ти не можеш. Тобто, якщо не застосовувати зайвих хитрощів.
Перш за все, вам потрібно хоча б приблизно виміряти частоту в коротких часових блоках. Ну, це можливо за допомогою спектрографа. Але це можливо лише до точності , типового відношення невизначеності ‡ .Δν=1/Δt
Маючи загальний більш тривалий проміжок часу, ми також повинні мати можливість зменшити невизначеність частоти. І це дійсно можливо, якщо виміряти локально не тільки чортову частоту, але і фазу хвилі. Ви знаєте, що сигнал 1000 Гц матиме абсолютно таку ж фазу, якщо ви подивитесь на нього одну секунду пізніше. Тоді як сигнал 1000,5 Гц, не відрізняючи його від короткомасштабної, буде інвертованою фазою через секунду.
На щастя, ця фазова інформація може дуже добре зберігатися в єдиному комплексному числі. І ось так працює FFT! Це починається з безлічі невеликих, локальних перетворень. Вони дешеві - одне, очевидно, тому що вони використовують лише невелику кількість даних, а по-друге, тому що вони знають, що через короткий проміжок часу вони не можуть вирішити частоту дуже точно - так що це все ще доступно, хоча ви зробити цілу купу таких перетворень.
Однак вони записують також фазу , і після цього ви зможете зробити точнішу роздільну здатність на верхньому рівні. Необхідна трансформація знову дешева, оскільки сама по собі не турбує якісь високочастотні коливання, а лише попередньо оброблені низькочастотні дані.
† Так, моя аргументація на даний момент трохи кругла. Давайте просто назвемо це рекурсивним і ми все добре ...
‡ Це відношення не є квантово-механічним, але невизначеність Гейзенберга має фактично ту ж саму фундаментальну причину.