MatrixOp Convolve と MatrixConvolve について

行列の畳み込み処理には、MatrixOp Convolve と MatrixConvolve が使えます。
どちらを使えばよいかを判断するには、以下の情報を参考にしてみてください。

  • MatrixOP は、単精度、倍精度に関わらず計算します。
  • MatrixOP はレイヤーごとに 3D ウェーブを処理するのに対し、MatrixConvolve は 3D 畳み込みを実行します。
  • MatrixConvolve は ROI ウェーブで動作します。
  • MatrixConvolve は直接畳み込みを計算しますが、MatrixOP は opt パラメーターの設定に応じて FFT を使います。

ウェーブの大きさによっては、次のような直接 FFT の使用を検討してもよいでしょう:

  1. 最初の信号を FFT する
  2. 2番目の信号を FFT する
  3. FFT を要素ごとに乗算する。
  4. その結果を逆 FFT する。

同じカーネルを用いて異なる入力に対して計算を繰り返す必要がある場合、この方法には利点があります。その場合は、まずカーネルの FFT を一度実行してその値を保存し、その後、ループ内で入力の FFT を実行し、乗算を計算(必要に応じてマルチスレッドを使用)し、最後に積の逆変換を行います。

Forum

Support

Gallery

Igor Pro 10

Learn More

Igor XOP Toolkit

Learn More

Igor NIDAQ Tools MX

Learn More