時間領域でのゼロパディングの感覚


7

ラドン変換に関連するタスクがあります。DFTによるリサンプリングを使用するサブタスクが含まれています。

長さ515ピクセルの非周期的な離散化信号(図1)(たとえば、ピクセルのストリング)を考えてみましょう。私のリサンプリングの実装では、次の手順が含まれています。

  1. 循環左シフト(図2)。
  2. 信号の長さが2 ^ nになるように、中心にゼロを追加します(この場合、1024-515 = 509のゼロを追加する必要があります)(図3)。
  3. この信号からDFTを取得します(図4)。
  4. 循環右シフト。(低周波数を中心にシフトするため)(図5)

図1 元の画像

図2 循環左シフト

図3 ゼロパッド

図4 DFTスペクトル

図5 DFT後方シフト

主な質問:

なぜ信号の循環シフトを実行し、中心に正確にゼロを追加する必要があるのですか?(私はこれが信号を周期的にしたと仮定しました)ゼロパディングは補間DFTスペクトルを作ります、それは正しいですか?(私は尋ねました、そしてそれはかなりそうではないことを誰かが言います)多分誰かはゼロパディングの後で信号で何が起こるかを簡単な方法で説明することができます。

Matlabでいくつかの実験を行ったところ、他の一連のアクションでは必要な結果が得られないことがわかりました。

次の2つのケースを考えてみましょう。

a)(この正しいバリアント)非周期的な離散化された信号(たとえば、ピクセルの文字列)があります。これは、左に循環シフトされ、中央にゼロが埋められた後、これからDFTが取得され、シフトバックされます。 ここに画像の説明を入力してください

b)非周期的な離散化された信号(たとえば、ピクセルの設定された文字列)があり、左から右にゼロが埋められ、これからDFTが取得されます。

ここに画像の説明を入力してください

これらのDFTスペクトルの違いは何ですか?

私はいくつかの本を読みましたが、このゼロパディングのケースの答えは見つかりませんでした。これは自分の経験だけで見つけられるようです。

本の答え:

AC KakおよびMalcolm Slaney、コンピュータ断層撮影イメージングの原則、工業および応用数学学会、25ページ、2001年


私があなたが何をしようとしているのか正確に伝えるのは難しいです。時間領域信号(すなわち、DFT、周波数領域のゼロパッド、次にIDFT)を補間しますか、それとも周波数領域(時間領域のゼロパッド、次にDFT)で補間しますか?
ジェイソンR

@JasonR、時間領域でゼロパディングを使用して周波数領域の補間を実行したい。しかし、適切に補間するためにN / 2で循環シフトを実行し、次にゼロを埋める必要がある理由を理解できません。
Roman Shkarin

1
fftshiftを使用しない場合、ゼロパディング後にすべての位相結果が変化します(元のウィンドウ幅と等しくない量)。したがって、補間された結果だけでなく、さまざまな結果が得られます。ねじれたスペクトルは、ねじれていないスペクトルと同じではありません。
hotpaw2

回答:


3

データポイントのシフト(fftshift)とFFTアパーチャの正確な中心のゼロパディングには、元のデータセットの中心を基準とするすべての偶数(対称)成分が複素FFT結果の実数部になるという特性があります。 、そしてすべての奇数成分は虚数部になります。たとえば、偶数と奇数の比率が維持され、(ウィンドウの中心を基準にして)位相を簡単に補間できます。

ゼロパディングはスペクトルの大きさも補間するため、ゼロパディングFFTの場合、位相を補間できることが重要です。ゼロパディングの結果は補間されたFFT結果になるため、元の補間されていないFFT結果ポイントはゼロパディングされた結果から補間する必要があります。パディングされていないデータとゼロがパディングされたデータの両方のFFTシフトがない場合、これらの内挿された結果は、内挿されていないFFT結果(フェーズ内)とは異なります。

この手法は、1つのドメインでのシフトが他のドメインでの複雑な周波数変調であるというFTプロパティの単純な(宿題またはクイズレベル)結果です。


信号の終わりにゼロを追加すると理解したように、周波数領域の位相は中心で対称にならないでしょう?「偶数と奇数の比率」の物理的な感覚と、これをどのように計算するかを説明できますか?
Roman Shkarin

偶数関数と奇数関数の関係は新しい質問のように聞こえます。おそらく数学の質問ですか?
hotpaw2

「元のデータセットが複雑なFFT結果の実数部になり、すべての奇数成分が虚数部に終わる」ときに何が得られるか、またはこれが元のデータセットよりも優れている理由を説明してください。 FFTの実際の値に対応しておらず、すべての奇数成分がFFT結果の虚数部に対応していませんか?私にとって、これらの行動の物理的な感覚を理解することは非常に重要です。
Roman Shkarin

1
ウィンドウの中心に対する参照角度= 0。その後、すべての余弦は偶数(中心を中心に対称)関数となり、複雑なFFT結果の実数部に現れます。非周期的周波数に対しても真であり、ウィンドウ幅に関して不変です。変更しないようにする場合は、不変のプロパティが役立ちます。
hotpaw2

この信号にFFTを使用する前に、ゼロパディングとシフトが正確に実行される場合についてのすべてのメッセージを改善できますか?私は少し混乱しているようです:)
Roman Shkarin

1

@Roman:時間領域でも周波数領域でも、私の経験から、補間(ファクター2としましょう)の結果、サンプリング周波数が高くなります(アップサンプリングされた信号、(2 * Fs))。時間領域補間では、信号の帯域幅をそのままにして信号をより高いサンプリング周波数に変換するため、ゼロを挿入するのと同じ方法で、代替サンプルにゼロを挿入します。「センターフィリング」の正確な理由は、FFTインデックスとベースバンド(BB)インデックスの関係です。たとえば、信号帯域幅fmとサンプリング周波数Fsの場合、周波数領域では、信号fmが+ NFsと-NFsを中心としており、Nは整数(0,1,2 ...)です。DCの周りの信号(ベースバンド信号)は-fm / 2からfm / 2を占め、Fsの信号はFs-fm / 2からFs + fm / 2を占め、以下同様に、これらすべてのレプリカは同じ情報を持ちます。DCに-fm / 2を考慮する代わりに、Fs-fm / 2(どちらも同じ)を検討しています。違いは正側または負側のみです。最後に、検討する信号は{[DC to fm / 2] [Fs-fm / 2 to Fs]}です。このため、[fm / 2〜Fs-fm / 2]の間にゼロを追加します(アップサンプリング係数に依存)。元の信号fmをそのまま維持します。


ありがとう!サンプリング周波数からfm / 2を差し引く理由を説明できますか?また、「Nが整数(0,1,2 ...)である+ NFおよび-NFを中心とする信号fm」と言ったのは、その信号が-NFと+ NFの間にあるということですよね?
Roman Shkarin

1
@Roman:サンプリング後、+ NFおよび-NFに信号(fm)のレプリカがあります。ベースバンド信号(N = 0)は[-fm / 2 fm / 2]の間にあります。元の信号のレプリカ(画像)は、+ NFと-NF(N = 1,2,3、...)の中央に配置されます。 )。N = 1の場合、信号(fm)はFsを中心とし、信号帯域は[Fs-fm / 2 Fs + fm / 2]です。
Taru

有限信号(ピクセルのストリップ)の場合に理解したように、DFTはこれを周期信号として認識します。また、ゼロパディングの場合、ソース信号内のサンプルの配置にも意味があります(ゼロパディングは、サンプルの位置が異なると異なる結果になります)。DFTの前に循環シフトを実行して、DFTの後に配置されるのと同じ方法でソース信号のサンプルを配置しますか?ゼロシフトの循環たたみ込みによって引き起こされるエラーを回避するという意味で循環シフトがありますか?申し訳ありませんが、私はこの分野ではあまり経験がありません。
Roman Shkarin

0

バンドパスフィルターからの出力があり、それをタイムドメインに変換する場合。

これは、ウィンドウ処理を適用して時間領域に戻す前に、左への循環シフトとゼロを中央に埋め込む正しいアプローチですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.