DCTとPCAの関係


12

画像とビデオの圧縮に使用される2D 8x8 DCTの基本的な実装知識があります。主成分分析について読んでいると、PCAの方が明らかに一般的であるにもかかわらず、多くの類似性が見られます。以前DCTについて読んだとき、DFTに関連して常に提示されていました。私の質問は、PCTの観点からDCTをどのように導き出すことができるのでしょうか?(手作業での説明でも十分です)

どうもありがとう

回答:


19

DCTとPCA(より正確には、相関行列の固有ベクトルによって形成される基底のデータセットを表す-Karhunen Loeve変換としても知られている)の主な違いは、PCAは特定のデータセット(相関行列は推定されます)、DCTは「絶対」であり、入力サイズによってのみ定義されます。これにより、PCTは「適応」変換になりますが、DCTはデータに依存しません。

PCAがその適応性のために、画像または音声の圧縮でより頻繁に使用されない理由を疑問に思うかもしれません。2つの理由があります。

  1. エンコーダがデータセットのPCAを計算し、係数をエンコードするとします。データセットを再構築するには、デコーダーには係数自体だけでなく、変換行列も必要になります(アクセスできないデータに依存します!)。DCTまたはその他のデータに依存しない変換は、入力データの統計的依存性を除去する効率が低い場合がありますが、変換行列は、送信する必要なしにコーダーとデコーダーの両方で事前に知られています。サイド情報をほとんど必要としない「十分な」変換は、サイド情報の追加負荷を必要とする最適な変換よりも優れている場合があります...

  2. NN×64これらのタイルの光度のマトリックス。このデータでPCAを計算し、推定される主成分をプロットします。これは非常に啓発的な実験です!上位の固有ベクトルのほとんどが、実際にDCT基底の一種の変調正弦波パターンのように見える可能性が非常に高いです。これは、画像タイルの十分に大きく一般的なセットの場合、DCTは固有基底の非常に優れた近似であることを意味します。音声についても同じことが確認されており、大量の音声録音で推定された、メル間隔の周波数帯域の対数信号エネルギーの固有基底がDCTに近い(したがって、DCTを非相関変換として使用する) MFCCを計算する場合)。


1
おもしろいですが、元の画像の「通常の」統計に基づいて別の基底セットを構築し、DCTの代わりに使用する基底セットを構築することはできませんか?このような基盤はPCAほど優れていないと思いますが、DCTよりはましでしょうか。
スペイシー

@pichenettes-DCTに関して、増加する水平および垂直周波数の一般的な画像は何ですか(つまりgoo.gl/XLMt5)。DCT基底関数の画像表現ですか?その場合、これらの画像の共分散行列からPCA /固有ベクトルを計算すると、基本的にDCT係数行列が得られますか?
トリカン

ところで、@ pichenettesの洞察に満ちた回答に感謝します。私はポイント1を知っていましたが、ポイント2を実際には考慮していませんでした
トリカン

1
@Mohammad:これは良い質問です。答えはわかりません。DCTを使用する利点:仕様を書きやすい(「この変換はこの64x64マトリックスは別館で公開されている」よりも「変換はこの閉じた形式の関数」を印刷しやすい)、トレーニングするデータセットに関する会議が標準化委員会にない変換、デコーダのROMに埋め込むルックアップテーブルの削減、および恐らくハードウェアアクセラレーションを可能にする変換マトリックスの「対称性」により、64x64マトリックスの残忍な乗算と比較して、これらの利点はわずかな圧縮ゲインを上回る可能性があります。
ピクネット

1
@trican:リンク先の画像は、8x8タイルの2-D DCTベースを表しています。64個の小さなタイルのそれぞれが基底関数です。実際の画像から8x8タイルの大規模なコレクションを取得し、データに対してPCAを実行した場合、取得される固有基底はそれに非常に類似しています。
ピケネット
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.