ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

ftrans2

周波数変換を使用する 2 次元 FIR フィルター

構文

h = ftrans2(b, t)
h = ftrans2(b)

説明

h = ftrans2(b, t) は変換 t を使用して 1 次元 FIR フィルター b に対応する 2 次元 FIR フィルター h を生成します (ftrans2h を計算分子として返します。これは filter2 と共に使用するのに適した形式です)。b は、Signal Processing Toolbox ソフトウェアで、fir1fir2 または firpm によって返されるような 1 次元 I 型 (偶数対称、奇数長) フィルターでなければなりません。変換行列 t には使用する周波数変換を指定する係数が格納されます。tmn 列で、b の長さが Q の場合、h はサイズ ((m-1)*(Q-1)/2+1)((n-1)*(Q-1)/2+1) 列になります。

h = ftrans2(b) はマクレラン変換行列 t を使用します。

t = [1 2 1; 2 -4 2; 1 2 1]/8;

入力と出力はすべて double クラスでなければなりません。

ftrans2 を使用してほぼ円対称な 2 次元バンドパス フィルターを設計します。通過帯域は 0.1 ~ 0.6 です (これは正規化された周波数であり、1.0 はサンプリング周波数の 1/2 つまり π ラジアンに相当します)。

  1. ftrans2 は 1 次元 FIR フィルターを変換して 2 次元フィルターを作成するので、最初に Signal Processing Toolbox の関数 firpm を使用して 1 次元 FIR バンドパス フィルターを設計します。

    colormap(jet(64))
    b = firpm(10,[0 0.05 0.15 0.55 0.65 1],[0 0 1 1 0 0]);
    [H,w] = freqz(b,1,128,'whole');
    plot(w/pi-1,fftshift(abs(H)))

  2. 既定のマクレラン変換で ftrans2 を使用して目的のほぼ円対称なフィルターを作成します。

    h = ftrans2(b);
    freqz2(h)

ヒント

以下の変換は、ftrans2 によって返される 2 次元フィルターの周波数応答を定義します。

H(ω1,ω2)=B(ω)|cosω=T(ω1,ω2),

ここで、B(ω) は次に示す 1 次元フィルター b のフーリエ変換です。

B(ω)=n=NNb(n)ejωn

また、T(ω1,ω2) は次に示す変換行列 t のフーリエ変換です。

T(ω1,ω2)=n2n1t(n1,n2)ejω1n1ejω2n2.

返されるフィルター hH(ω1,ω2) の逆フーリエ変換です。

h(n1,n2)=1(2π)2ππππH(ω1,ω2)ejω1n1ejω2n2dω1dω2.

参考文献

[1] Lim, Jae S., Two-Dimensional Signal and Image Processing, Englewood Cliffs, NJ, Prentice Hall, 1990, pp. 218-237.

R2006a より前に導入

この情報は役に立ちましたか?