入力シーケンスXの離散余弦変換 (DCT) を計算します。データをX入力に配線して使用する多態性インスタンスを決定するか、インスタンスを手動で選択します。


icon

1D DCT

シーケンスXの1次元離散余弦変換DCT {X}は、以下の式で定義されます。

および

ここで、NXの長さです。

xnは Xの n番目の 要素である、 ykはDCT{X}のk 番目の要素である。

このVIは離散余弦変換を直接計算せずに、高速DCTアルゴリズムを適用します。LabVIEWでは、この高速DCTアルゴリズムをFFTテクニックを使用して実装しています。

2D DCT

行列Xの2次元離散余弦変換DCT {X}は、以下の式で定義されます。

ここで、MNは、それぞれ入力行列Xの行数および列数です。

x(m,n)Xの 行番号 m 、列番号 nの要素である、 y(u,v) は、 DCT{X}の 行番号 u 、列番号 vの要素である。

このVIは、以下の2段階の手順で2次元DCTを実行します。

  1. 入力行列Xに対して1行ごとに1次元DCTを実行します。この出力をY'とします。
  2. Y'に対して1列ごとに一次元DCTを実行します。この出力がDCT {X}になります。

サンプルプログラム

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

  • labview\examples\Signal Processing\Transforms\Image Compression with DCT.vi