Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lek06.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
502.27 Кб
Скачать

«Цифрова обробка сигналів»

Тема 6. Швидке перетворення фур’є (шпф)

Обробка сигналів, яка полягає в аналізі їх спектрів називається спектральним аналізом. Він використовується в багатьох алгоритмах ЦОС, зокрема при розпізнаванні, виявленні, стиску сигналів. Основою спектрального аналізу є виконання над вхідними сигналами ДПФ. В реальному масштабі часу, опрацювання вхідних послідовностей виконується частинами (сегментами), довжиною N відліків. Числове значення N залежить від фізичної природи сигналу та поставленої задачі. Рівняння прямого ДПФ має вигляд:

Для обрахунку одного спектрального коефіцієнта слід здійснити N комплексних множень та (N-1) комплексне додавання. Для розрахунку всіх коефіцієнтів маємо:

Кількість операцій множення

Кількість операцій додавання

Таким чином, в загальному випадку, для розрахунку N- точкового ДПФ слід виконати 2N2 арифметичних операцій з комплексними числами. Як правило, оцінюють не просто кількість операцій, а порядок обчислювальної складності алгоритму , відносно довжини N. Це позначають . Порядок обчислювальної складності алгоритму ДПФ оцінюється як . Для зменшення цього показника, були створені алгоритми швидкого обчислення ДПФ.

Швидким перетворення Фур’є називають групу алгоритмів які суттєво зменшують кількість арифметичних операцій при обчисленні дискретного перетворення Фур’є. Тобто ці алгоритми мають менший порядок обчислювальної складності, в порівнянні з безпосереднім обчисленням.

Варто підкреслити, що ШПФ є точним а не наближеним методом обрахунку коефіцієнтів ДПФ (а в більшості випадків, за рахунок зменшення кількості операцій він приводить до менших похибок заокруглення, тобто є навіть точнішим).

Оскільки алгоритмів багато, то як правило, в їх назвах є уточнення, який саме мається на увазі: ШПФ за основою 2, ШПФ за основою 4, ШПФ Винограда і т.д.

Найширше використовується алгоритм ШПФ за основою 2, відомий як алгоритм Кулі – Т’юкі (вперше оприлюднений у 1965 році у США). Існують два, еквівалентні за ефективністю, алгоритми ШПФ за основою 2: з прорідженням за часом та з прорідженням за частотою.

При побудові швидких алгоритмів використовують кілька основних прийомів. Серед них найголовнішими є :

1.  розбиття задачі на підзадачі;

2.  рекурсія : коли деякий метод чи прийом можна рекурсивно застосовувати;

3.  виділення алгебраїчних виразів, що повторюються.

На основі цих прийомів і побудований алгоритм швидкого перетворення Фур’є Кулі – Т’юкі. При чому, в залежності від того, як саме виконується той чи інший етап, утворюється певний вид ШПФ.

ШПФ за основою 2 та прорідженням за часом (ШПФ2t).

1.  Розбиття задачі на підзадачі. Розбиття (поділ) вхідної послідовності в цьому виді ШПФ здійснюється за принципом парності/непарності відліків. Тобто початкова сума розбивається на дві вдвічі меншої розмірності, перша з яких містить відліки з парними індексами, а друга – з непарними.

.

Оскільки : ;

а : ,

можемо записати:

.

Очевидно, що:

;

;

таким чином, отримуємо формулу розкладу (ФР) алгоритму ШПФ2:

.

Вона показує, як задачу розмірності N звести до двох підзадач розмірності N/2.

2. Рекурсія. Рекурсивно продовжуючи за формулою розкладу розбиття перетворення меншої розмірності, тобто та аж до отримання двоточкових перетворень, синтезуємо потрібний алгоритм ШПФ.

3. Виділення однакових виразів. Цей етап виконується для того, щоб однакові вирази обчислювати лише один раз. Тут беруться до уваги властивості періодичності симетричності повертаючих множників.

П еріодичність :

; .

Симетричність :

; .

Крім того, самі послідовності та є періодичні з періодом N/2 (оскільки вони є ДПФ для N/2 точок) , тобто : , . Тому в загальній формулі розкладу для другої половини коефіцієнтів, тобто для k+N/2, будемо мати:

.

Таким чином, маємо основну процедуру швидкого алгоритму:

.

Вона визначає правило обрахунку N- точкового ДПФ за результатами двох ДПФ розмірності N/2 для парних і непарних вхідних відліків.

Основною операцією алгоритму ШПФ, яку ще називають базовою операцією (БО) є одночасне (паралельне) обчислення двох відліків ДПФ – k- того та k+N/2- того, за наведеною вище формулою. Граф БО отримав назву «метелик» :

Базова операція алгоритму ШПФ з часовим прорідженням

Використовуючи основну процедуру ШПФ і продовжуючи розбиття кожної з отриманих підпослідовностей, рекурсивно дійдемо до виконання двоточкового перетворення, яке здійснюється безпосередньо за базовою операцією.

Процес розбиття на парні та непарні відліки – це звичайна перестановка вхідних даних і як обчислювальний процес вона розглядатися не може, хоча при великих значеннях N може займати багато часу. Однак, існує просте правило проріджування: відліки вхідної послідовності повинні бути переставлені в біт – зворотньому (біт-інверсному) порядку своїх двійкових номерів. Це значно економить час і ресурси.

Десяткове число

0

1

2

3

4

5

6

7

Двійковий еквівалент

000

001

010

011

100

101

110

111

Двійкове число в біт-інверсному порядку

000

100

010

110

001

101

011

111

Десятковий еквівалент

0

4

2

6

1

5

3

7

Приклад біт-інверсної перестановки для N=8

Зауважимо, що результат отримуємо у природному порядку слідування відліків.

Структура 8-точового ШПФ2t

Алгоритм 8- точкового ШПФ2t

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]