На які часові частотні коефіцієнти обчислює перетворення Вейвлета?


26

Швидке перетворення Фур'є приймає операції, в той час як швидкий вейвлет - перетворення займає O ( NO(NlogN) . Але що, конкретно, обчислює FWT?O(N)

Хоча їх часто порівнюють, здається, що FFT і FWT - це яблука та апельсини. Як я розумію, було б більш доцільним порівняти STFT (FFTs невеликих шматочків з часом) з складними Morlet WT , оскільки вони обидва представлення частоти на основі складних синусоїд (будь ласка, виправте мене, якщо я помиляюся ). Це часто показано на такій схемі:

Сітки, що показують, як коефіцієнти FFT і WT відповідають площині часу

( Інший приклад )

Ліворуч показано, як STFT - це купа FFT, розміщених один на одного в міру проходження часу (це представлення є джерелом спектрограми ), а праворуч - діадичний WT, який має кращу роздільну здатність часу на високих частотах і кращу частоту роздільна здатність на низьких частотах (таке подання називається скалограмою ). У цьому прикладі для STFT - це кількість вертикальних стовпців (6), і одна операція FFT O ( N log N ) обчислює один рядок N коефіцієнтів з N вибірок. У загальній складності 8 FFT з 6 балів у кожному, або 48 зразків у часовій області.NO(NlogN)NN

Що я не розумію:

  • Скільки коефіцієнтів робить один O(N) обчислює операція FWT, і де вони розміщені на діаграмі часових частот вище?

  • Які прямокутники заповнюються одним обчисленням?

  • Якщо обчислити блок коефіцієнтів часової частоти, рівний за площею, використовуючи обидва, чи отримаємо однаковий обсяг даних?

  • Чи все-таки FWT є більш ефективним, ніж FFT?

Конкретний приклад з використанням PyWavelets :

In [2]: dwt([1, 0, 0, 0, 0, 0, 0, 0], 'haar')
Out[2]:
(array([ 0.70710678,  0.        ,  0.        ,  0.        ]),
 array([ 0.70710678,  0.        ,  0.        ,  0.        ]))

Він створює два набори з 4 коефіцієнтів, тож це те саме, що кількість вибірок у вихідному сигналі. Але яка залежність між цими 8 коефіцієнтами та плитками на діаграмі?

Оновлення:

Насправді я, мабуть, робив це неправильно, і мусив би використовувати wavedec(), що робить багаторівневе розкладання DWT:

In [4]: wavedec([1, 0, 0, 0, 0, 0, 0, 0], 'haar')
Out[4]: 
[array([ 0.35355339]),
 array([ 0.35355339]),
 array([ 0.5,  0. ]),
 array([ 0.70710678,  0.        ,  0.        ,  0.        ])]

2
Для того, щоб краще зрозуміти, як працюють ці вейвлети, одним із корисних інструментів було б можливість це робити на сигналах реального життя: наприклад, аудіосигнал (у мене тут питання dsp.stackexchange.com/ питання / 12694 / stft-and-dwt-wavelets )
Basj

@endolith Ваше запитання все ще запитується? Якщо так, я можу додати інші підказки
Лоран Дюваль

@LaurentDuval Так, це все ще відкрито, і я все ще не розумію. Мене можуть збентежити, оскільки CWT використовує такі речі, як Morlet, а DWT використовує лише такі речі, як Haar або Daubechies. Я не впевнений, чи швидкий FWT є лише Haar або також можна використовувати інші типи вейвлетів.
ендоліт

2
@ndolith Просто коментар до цього: безперервний CWT допускає неймовірну кількість потенційних форм вейвлетів. Вони можуть бути дискретизовані точно лише із зразками вибірки (у часі чи масштабі), які поважають деяку нерівність "Гейзенберга" Ці закономірності залежать від вейвлета. У більшості випадків закономірності створюють дискретний CWT, який є зайвим. Деякі хочуть, щоб це не було зайвим, із діадичною шкалою. Це дозволяють лише дуже мало вейвлетів. Якщо потім нав'язувати підтримку вейвлетів кінцевою, то Хаар - це один, майже неможливо отримати w / "природні вейвлети", саме тому побудовані "Даубечі"
Лоран Дюваль

Відповіді:


13

Ви вірні, що FWT краще розглядати як "двоюрідного брата" STFT, а не FT. Насправді FWT - це лише дискретна вибірка CWT (безперервного вейвлет-перетворення), оскільки FFT / DFT - дискретна вибірка перетворення Фур'є. Це може здатися тонким моментом, але це актуально при виборі того, як ви дискретизуєте перетворення.

CWT і STFT - це надмірний аналіз сигналу. Іншими словами, у вас більше "коефіцієнтів" (у дискретному випадку), ніж потрібно для повного подання сигналу. Однак перетворення Фур'є (або, скажімо, вейвлет-перетворення, використовуючи лише одну шкалу) інтегрує сигнал з-нескінченності до + нескінченності. Це не дуже корисно для сигналів реального світу, тому ми усікаємо (тобто вікно) перетворення на більш короткі довжини. Вікно сигналу змінює перетворення - ви множитеся на вікно у часі / просторі, тому в просторі перетворення у вас відбувається згортання перетворення вікна з перетворенням сигналу.

У випадку з STFT вікна (як правило) завжди мають однакову довжину (ненульовий ступінь) і є частотними агностиками (ви відкриваєте сигнал 10 Гц, такий же шириною, як сигнал 10 кГц). Таким чином ви отримуєте спектрограму прямокутної сітки, як намалювали.

У CWT це віконце вбудоване тим, що вейвлети стають коротшими (у часі чи просторі) у міру зменшення масштабу (як більш висока частота). Таким чином, для більш високих частот ефективне вікно коротше за тривалістю, і ви закінчуєте масштабограмою, яка буде схожа на те, що ви намалювали для FWT.

Як ви дискретизуєте CWT, залежать від вас, хоча я думаю, що є мінімальні вибірки як у зміні, так і в масштабі, щоб повністю представити сигнал. Як правило (принаймні, як я їх використовував), для найнижчої шкали (найвища частота) ви будете робити вибірку у всіх місцях зміни (час / простір). Коли ви набираєте високу шкалу (нижча за частотою), ви можете робити вибірки рідше. Обґрунтування полягає в тому, що низькі частоти не змінюються настільки швидко (подумайте про тріск цимбали порівняно з бас-гітарою - у краху цимбали дуже короткий перехідний час, тоді як для басової гітари потрібно змінити більше часу). Насправді, у найкоротшій шкалі (припускаючи вибірку у всіх місцях зсуву), ви маєте повне представлення сигналу (ви можете реконструювати його, використовуючи лише коефіцієнти в цій шкалі). Я не дуже впевнений в обґрунтованості вибірки шкали. Я ' Я бачив, що це пропонується як логарифмічне, з (я думаю) ближчим проміжком між коротшими масштабами. Я думаю, що це тому, що вейвлети на більш тривалих масштабах мають більш широке перетворення Фур'є (тому вони "набирають" більше частот).

Зізнаюсь, я не повністю розумію FWT. Моя думка полягає в тому, що це насправді мінімальний вибірки в зсуві / масштабі, і не є зайвим представленням. Але тоді я думаю, що ви втрачаєте можливість аналізувати (і возитися) з сигналом за короткий час, не вводячи небажаних артефактів. Я прочитаю докладніше про це, і, якщо дізнаюся щось корисне, звіту. Сподіваємось, інші сподобаються коментувати.


1
"це насправді мінімальний вибірки в зсуві / масштабі, і не є надмірним представленням." Ах! Я думаю, ти маєш рацію, і це пояснило б, чому його завжди порівнюють із FFT, що також є мінімальним представленням.
ендоліт

3
FWT є критичною вибіркою CWT. Я все ще намагаюся зрозуміти це краще, але я дізнався, що STFT і CWT - це Рамки. Теорія кадру виходить за рамки мене, але одне цікаве поняття - це формула невизначеності, що для STFT dw * dt> C (dw - роздільна здатність частоти, а dt - роздільна здатність часу). Іншими словами, намагаючись краще вирішити частоту, ви втрачаєте часовий дозвіл. CWT не має цього обмеження. Я продовжую читати і намагатимусь уточнити свою відповідь вище, як тільки я проясню її в голові.

1
Як я розумію, CWT має те саме обмеження, але використовує кращі компроміси.
ендоліт

1
"STFT - це надлишковий аналіз сигналу". Я не думаю, що це правда. Якщо у вас є 100-кратний сигнал, розділіть його на шматки по 10 балів, після чого зробіть 10-бальний FFT на кожному, ви все одно маєте ту саму інформацію, що зберігається в одній кількості зразків.
ендоліт

11

Розглянемо випадок вейвлет Хаар. Швидке перетворення вейвлетів рекурсивно підрозділяє ваш сигнал і щоразу обчислює суму та різницю двох половин. Різниця - це величина перетворення для поточного вейвлета, і повертається сума для абонента для обчислення величини перетворення для розширеного вейвлета з половиною частоти. Таким чином, FWT охоплює площину частоти часу, використовуючи шаблон, описаний на схемі, яку ви навели.

Зауважте, що наведена вами схема трохи вводить в оману. Те, що вони насправді намагаються сказати, - це те, що ви отримуєте один зразок з найнижчою частотою, два зразки з подвійною цією частотою, чотири зразки в чотириразовій частоті тощо. Часово-частотні властивості кожного вейвлета не є такі, щоб вони покривали плитку. На практиці кожен вейвлет буде охоплювати нескінченну область, оскільки він має компактну підтримку і, отже, повинен бути повністю декаркалізований за частотою. Тож варто просто подумати про центри цих плиток.

Крім того, FWT вимагає дискретного вейвлета, який повинен відповідати куди більш обмежувальним критеріям допустимості, ніж суцільні вейвлети для CWT. Отже, часові частотні властивості дискретних вейвлетів, як правило, жахливі (наприклад, вейвлети Daubechies або повні різких особливостей, або мають зміну частоти), і корисність площини частоти часу значно зменшується в контексті FWT. Однак суцільні вейвлети використовуються для обчислення частотно-часових уявлень сигналів.


Так, я розумію локалізацію коефіцієнтів. Це те саме, що і FFT. Коли ви говорите "повинен дотримуватися", що ви маєте на увазі? Це лише вимога, якщо ви намагаєтесь отримати мінімальне / не надмірне подання сигналу? Що робити, якщо ви просто намагаєтесь проаналізувати / візуалізувати це? Додаю більш конкретний приклад до питання.
ендоліт

1
Дотримання критерію допустимості забезпечує існування роздільної здатності ідентичності, тобто всі сигнали можуть бути відновлені з їх вейвлет-перетворень. Якщо ви не дотримуєтесь цього, ви не можете відновити сигнал від його перетворення, і тоді ви повинні запитати, що саме ви аналізуєте (чи відображає він навіть будь-яку інформацію, що була в сигналі ?!). Якщо вам не потрібне мінімальне / не надмірне представлення, тоді ви можете використовувати більш легкий критерій прийнятності від CWT (який дозволяє визначити більше "ідеальних" вейвлетів).

1
Я думаю, ви вважаєте мою кандидатську дисертацію справді корисною. Я викладу його онлайн для вас ...

Ви розмістили його в Інтернеті? :)
ендоліт

2
Я впевнений, що це: flyingfrogblog.blogspot.com/2010/02/…

3

Ваша довідка:

Послідовність коефіцієнтів на основі ортогональної основи малих кінцевих хвиль або вейвлетів.

Для отримання додаткової інформації вам може сподобатися сторінка DWT . Там він представляє вейвлети Хаар, вейвлети Daubechies та інші. Це вказує, як

  • Вейвлети мають розташування - вейвлет (1,1, -1, –1) відповідає «лівій частині» та «правій стороні», тоді як останні два вейвлети мають підтримку з лівого або правого боку, а один є перекладом з іншого.
  • Синусоїдальні хвилі не мають місця розташування - вони поширюються по всьому простору - але мають фазу - друга і третя хвилі є перекладами один одного, що відповідає 90 ° поза фазою, як косинус і синус, з яких це дискретні версії .

Якщо замість дискретних вейвлетів ви хочете зараз про безперервні вейвлети або складні вейвлети, ви можете почати з вейвлет-серії .

Окрім вікіпедії, підручник і курс можуть зробити вам добре.


Я не розумію цієї відповіді. Чи відповідає це на мої запитання? Лівий бік і правий бік чого? Що це стосується представлення часових частот?
ендоліт

Опис "ліва сторона проти правої сторони" - це витягнутий попередній перегляд сторінки DWT, показуючи, що ця сторінка містить простий приклад для пояснення відносних достоїнств синусоїдальної основи та основи вейвлетів Хаара. Ви запитували про природу коефіцієнтів у вейвлет-перетворенні. Це звучало так, ніби ви шукали інтуїції. Я подумав, що ти можеш вважати цей приклад корисним.

Так, я прочитав статті Вікіпедії кілька разів, перш ніж публікувати це питання. Я не знаю, чи / що має ваша відповідь на моє запитання про представлення часових частот. Якщо це так, ви могли б з'єднати точки? FFT з n зразків дасть n коефіцієнтів, які складають єдиний стовпець спектрограми STFT. Чи існує відповідна залежність між коефіцієнтами, виробленими WT, і скалограмою? Якщо так, то що це? Які з полів у нижній правій таблиці заповнюються одним пробігом через FWT?
ендоліт

1
Практично все на сторінках Вікіпедії, пов’язаних з вейвлетами, наразі невірно.

3

O(N2)

O(N)O(Nlog(N))O()

Почніть з загального вікна STFT (суцільна форма). Якщо ви підключите нескінченне вікно висоти одиниці, ви відновите перетворення Фур'є як особливий випадок. Який ви можете дискретизувати (і отримати DFT) і зробити його швидким (і отримати FFT).

Почніть з CWT (суцільна форма). Постійний CWT допускає неймовірну кількість потенційних форм вейвлетів. Їх можна точно визначити лише за допомогою зразків (у часі чи масштабі), які враховують деяку нерівність «Гейзенберга»: один зразок на одиницю поверхні. Ці закономірності залежать від вейвлета. У більшості випадків шаблони роблять дискретний CWT, який є надлишковим, і дають вейвлет-кадр.

Деякі хотіли, щоб це не було зайвим, із діадичною шкалою (DWT). Лише дуже мало вейвлетів (як і раніше нескінченна кількість, але ви не можете їх знайти випадково). Серед перших були вейкети Хаар, Франклін та Мейєр. Якщо потім нав'язувати підтримку вейвлетів кінцевою, то Хаар довгий час був цілком єдиним. Це майже неможливо отримати ортогональний вейвлет від «природних безперервних вейвлет», тому Daubechies були побудовані то », а пізніше Symmlets і койфлети . У цих дивних вейвлетів немає гарних і простих формул, як вейвлет Morlet.

O(N) алгоритмах . У вас є FWT. Я, таким чином, трохи не погоджуюся з:

Насправді, FWT - це лише дискретний вибірковий аналіз CWT

DWT (або FWT) є точним, як DFT / FFT. Більшість інших розрізнених CWT (з будь-яким вейвлетом) приблизно так (без особливої ​​шкоди, якщо у вас достатня надмірність).

Так:

  • kkk804T2×424[ω/2,ω]42×22[ω/8,ω/4][1,1,2,4]
  • k
  • +×O(N) . Для синусового аналізу? ПДВ ніколи не є хорошим (зокрема, завдяки фільтрам кінцевої довжини). Але для компактного зображення зображень, як у JPEG2000, вони можуть бути непоганими. Там ви можете скористатися трохи швидшою схемою, як схема підйому.

Наступні фотографії показують, як безперервна версія вейвлета Хаар безперервний вейвлет Хаара

можна відібрати в ортогональний, дискретний вейвлет: дискретний критичний вейвлет Хаара

Зауважте, що деякі дискретні вейвлети, особливо довгі (як шпонки), іноді обчислюються за допомогою FFT :)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.