入力シーケンスXおよびYのコンボリューションを計算します。XおよびY入力にデータを配線して、使用する多態性インスタンスを決定するか、インスタンスを手動で選択します。


icon

1Dコンボリューション

信号x(t)およびy(t)の線形コンボリューションは以下のように定義されます。

ここで、記号*は線形コンボリューションを意味します。

アルゴリズムdirectの場合、VIは次の公式を使用して線形コンボリューションを個々に行い、X * Yの要素を取得します。

ここで、i = 0, 1, 2, … , M+N-2

また、hX * Y です。

Nは Xの要素数です、 Mは Yの要素数です、 XY の 範囲外の被指数要素は,以下の関係に示すように,0 に等しくなる:

xj = 0, j < 0, または j≥N

および

yj =0、 j <0、または jMとする。

アルゴリズムfrequency domainの場合、このVIは次の手順を順に実行して線形コンボリューションを計算します。

  • まず、以下の式で示すように、XYの長さがM + N – 1となるように末尾を0でパッドします。
  • 次に、以下の式に従って、X'とY'のフーリエ変換を実行します。
X'(f) = FFT(x') Y'(f)=FFT(y')である。
  • さらに、X'(f)にY'(f)を乗算して、積の逆フーリエ変換を計算します。その結果が以下の式で示すようにXYの線形コンボリューションです。
X * Y = IFFT(X'(f) · Y'(f))

したがって、このVIは線形コンボリューションでなく巡回コンボリューションを計算します。しかし、 x(t) * y(t)NX(f)Y(f) はフーリエ変換の組で、 x(t) * y(t)Nx(t) と y(t) の循環畳み込みなので、畳み込みの循環バージョンを作ることができる。巡回コンボリューションの計算には、以下の図のようなブロックダイアグラムを使用できます。

2Dコンボリューション

アルゴリズムdirectの場合、VIは次の公式を使用して入力行列XYの2次元コンボリューションを計算します。

ここで、i = 0, 1, 2, … , M1+M2–2 および j = 0, 1, 2, … , N1+N2–2

また、hX * Y です。

M 1は、行列 Xの行数です、 N 1は、行列 Xの列数です、 M 2は行列 Yの行数である、 N 2は行列 Yの列数である、 以下の関係に示すように, Xと Yの 範囲外の指標となる要素は0に等しい:

x(m,n)、 m <0または mM 1または n <0または nN1

および

y(m,n) , m < 0 または m≥ M2 または n < 0 または n≥ N2.

アルゴリズムfrequency domainの場合、VIは次の手順を順に実行して2次元コンボリューションを計算します。

  • 最初に、以下の式に示すように、このVIはサイズが (M1 + M2 – 1) x (N1 + N2 – 2)となるように、XYの末尾をゼロでパッドします。
  • 次に、以下の式に従って、X'とY'のフーリエ変換を実行します。
X'(f) = FFT(x') Y'(f)=FFT(y')である。
  • さらに、X'(f)にY'(f)を乗算して、積の逆フーリエ変換を計算します。その結果は、以下の式で示すようにXYの2次元コンボリューションとなります。
X * Y = IFFT(X'(f) · Y'(f))

出力サイズは、以下の図に示すように出力行列X * Yのサイズを指定します。

  1. full

    The output matrix X * Y is (M1+M2–1)-by-(N1+N2–1).

  2. size X

    画像処理を行う上で役立ちます。X がフィルタ処理する画像の場合、Y はコンボリューションカーネルと呼ばれる小さい行列です。X * Y は画像Xと同じサイズのフィルタ処理された画像です。出力サイズfullの場合、出力M1-x-N1行列は、出力行列の中心部分です。

  3. compact

    X * Y のエッジ要素を計算するには, 出力サイズが full または size Xの場合,ゼロパディングが必要です.LabVIEWは、出力サイズcompactの場合、これらのエッジ要素を削除します。出力サイズsize Xの場合、出力 (M1M2+1)-x-(N1N2+1) 行列は、出力行列の中心部分です。

サンプルプログラム

LabVIEWに含まれている以下のサンプルファイルを参照してください。

  • labview\examples\Signal Processing\Signal Operation\Edge Detection with 2D Convolution.vi