Прокладка з нульовою частотою домену частоти - спеціальна обробка X [N / 2]


18

Припустимо, ми хочемо інтерполювати періодичний сигнал з парною кількістю вибірок (наприклад, N = 8) шляхом нульового прокладки в частотній області.

Нехай DFT X=[A,B,C,D,E,F,G,H]
Тепер давайте накладемо його на 16 зразків Y. У кожному прикладі підручника та онлайн-підручнику я бачив вставки нулів при наданні . (Тоді інтерпольований сигнал.)[Y4...Y11]
Y=[2A,2B,2C,2D,0,0,0,0,0,0,0,0,2E,2F,2G,2H]
y = idft(Y)

Чому б замість цього не використовувати Y=[2A,2B,2C,2D,E,0,0,0,0,0,0,0,E,2F,2G,2H]?

Наскільки я можу сказати (мої знання з математики обмежені):

  • Це мінімізує загальну потужність
  • Це гарантує, що якщо xце реально оцінено, то так і єy
  • yяк і раніше перетинається xу всіх точках вибірки (я думаю, це справедливо для будь-якого pмісця Y=[2A,2B,2C,2D,pE,0,0,0,0,0,0,0,(2-p)E,2F,2G,2H])

То чому ж це ніколи не робиться так?


Редагування : xне обов'язково має реальну цінність або обмежується діапазоном.


Ви пишете "Кожен приклад підручника та онлайн-підручник. Я бачив вставки нулів на ...", чи можете ви оновити свою публікацію деякими посиланнями? Цікаво, тому що ви також пишете, що x не обов'язково має значення в реальному значенні, і перша конструкція, яку ви згадуєте, не дає (взагалі) реального результату шляхом оберненого DFT.
niaren

@niaren ось один приклад: dspguru.com/dsp/howtos/…
finnw

1
Варто зазначити, що для того, щоб було реально оцінено, тоді вам потрібно дозволити Y = [ 2 A , 2 B , 2 C , 2 D , E , 0 , 0 , 0 , 0 , 0 , 0 , 0 , E , 2 F , 2 G , 2 H ]yY=[2A,2B,2C,2D,E,0,0,0,0,0,0,0,E,2F,2G,2H](тобто, коли ви дублюєте E для половини вектора частотної області, вам потрібно поєднати його. Сигнали, які є реальними в часовій області, мають сполучені-симетричні DFT.
Jason R

1
@ Джейсон R, якщо вхідний сигнал має значення в реальному значенні, то E так [2A, 2B, 2C, 2D, E, 0,0,0,0,0,0,0, E, 2F, 2G, 2H] задовольняє цій умові. Якщо вхід не є реальним, тоді не потрібно змушувати вихід реально оцінювати.
finnw

Ви праві. Ось що я отримую для написання коментаря надто пізно ввечері.
Джейсон R

Відповіді:


7

Давайте подивимось на частоти бункерів у вашому 8-бальному DFT:

Отже, коли ви інтерполюєте коефіцієнт 2 ,частотаточкиEстає-πабо+π.

ωA=0,ωB=π/4,ωC=π/2,ωD=3π/4,ωE=π=π (mod 2π),ωF=5π/4=3π/4 (mod 2π),ωG=3π/2=π/2 (mod 2π),ωH=7π/4=π/4 (mod 2π)
Eπ+π

На перший погляд, я не бачу, у чому полягає проблема у вашому підході, оскільки незрозуміло, чи слід класти у кошик, пов'язаний з π або - π .Eππ

На сторінці Джуліус О. Сміт III він зазначає умову:

Крім того, нам потрібно коли N парне, а непарне не вимагає такого обмеження.x(N/2)=x(N/2)=0N

І його приклад є для непарного , що дозволяє уникнути проблеми.N


Не впевнений, що потрібно, але ось повна посилання на роботу Юлія:

Сміт, Дж. О. Математика дискретної трансформації Фур'є (DFT) з аудіо-додатками, друге видання, http://ccrma.stanford.edu/~jos/mdft/ , 2007 р., Онлайн-книга, доступ до якої відбувся 28 вересня 2011 року.


2

Існує багато способів інтерполяції даних. Інтерполяція в моєму розумінні означає, що ви 'малюєте' лінії між деякими точками даних. Це можна зробити багатьма способами. Одним з типів інтерполяції, який корисний у DSP (особливо при багатосторонньому DSP), є "Bandlimited interpolation". Якщо ви перейдете на Google, ви отримаєте багато цікавих і корисних хітів. Що ви пропонуєте, це не обмежена інтерполяція. У своєму 'upsampled' x у вас частотні компоненти, відсутні в оригіналі x.

Редагувати (занадто довго, щоб вписатись у коментар):

X=[A,B,C,D,E,F,G,H]

Враховуючи реальний вклад

X=[A,B,C,D,E,D,C,B]

x0,0,x1,0,...0π/2π/2π

X2=[A,B,C,D,E,D,C,B,A,B,C,D,E,D,C,B]

π/2

yn=k=x2ksinc(0.5nk)

На практиці, хоча буде певне викривлення, оскільки цегляний стіновий фільтр не є реалістичним. Практичний фільтр може придушувати / видаляти частоти на вході, або він може залишати в деяких із частотних компонентів зображення зображення в підвищеному зразку сигналу. Або фільтр може зробити компроміс між ними. Я думаю, що ваша побудова частотної області також відображає цей компроміс. Ці два приклади представляють два різні варіанти:

Y=[A,B,C,D,E,0,0,0,0,0,0,0,E,D,C,B]

Y=[A,B,C,D,0,0,0,0,0,0,0,0,0,D,C,B]

Якщо введення обмежено смугою частот нижче частоти найквістів, як у вашій посилання, ця проблема зникає.

ρ

Y=[A,B,C,D,ρ,0,0,0,0,0,0,0,ρ,D,C,B]


1
x

@leftaroundabout Оригінальний x обмежений у діапазоні (у цьому прикладі до частоти Найквіста). ОП хоче збільшити вибірку x на коефіцієнт 2 (моя інтерпретація). Один із способів збільшити вибірку x - це вставити нулі в частотну характеристику, як показано в ОП (приклад без E, той, який показано в текстових книгах DSP) і зробити зворотний FFT. Я вважаю, що те ж саме можна було досягти, вставивши нулі (переплетені) у x та (low-pass) фільтр sinc. Вставляючи Е, як показано в ОП, збільшений зразок x не обмежується вихідною частотою Найквіста. Зазвичай це не бажано (це спотворення). Ви згодні?
niaren

1
Eπ2π2

Я припускаю, що частота ± N / 2 присутня в x. Якщо це не так (через обмеження смуги чи інше), то E все одно буде 0, тому різниці між набиванням E (або 2E) і padding з 0. не буде
різниці

1
Діапазонний сигнал все ще може містити вміст у бункері N / 2 через "спектральний витік" з будь-якого спектрального вмісту діафрагми неперіодичного в DFT, особливо поблизу (але не при) Fs / 2.
hotpaw2
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.