主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

idct2

2次元逆離散コサイン変換

説明

B= idct2 (一个は,一个の2次元逆離散コサイン変換(DCT)を返します。

B= idct2 (一个nおよび

B= idct2 (一个,[n])は逆変換を適用する前に一个0でパディングし,サイズをn列にします。またはn一个の対応する次元より小さい場合,idct2は変換前に一个をトリミングします。

すべて折りたたむ

イメージをワークスペースに読み取った後,グレースケールに変換します。

RGB = imread (“autumn.tif”);I = im2gray (RGB);

関数dct2を使用して,グレースケールイメージの2次元DCTを実行します。

J = dct2(我);

対数スケールを使用して,変換後のイメージを表示します。大半のエネルギーが左上隅にあることに注目してください。

imshow(日志(abs (J)), []) colormapparulacolorbar

图中包含一个坐标轴。轴包含一个image类型的对象。

DCT行列内で大きさが10未満の値を0に設定します。

J(abs(J) < 10) = 0;

逆DCT関数idct2を使用してイメージを復元します。データ型のイメージに期待できる範囲[0,1]に値を再スケーリングします。

K = idct2 (J);K =重新调节(K);

元のグレースケールイメージを処理されたイメージと並べて表示します。処理済みのイメージでは,高周波数の細部(樹木のテクスチャなど)が少なくなります。

蒙太奇({I、K})标题(“原始灰度图像(左)和处理后的图像(右)”);

图中包含一个坐标轴。标题为“原始灰度图像(左)”和“处理图像(右)”的轴包含一个类型为图像的对象。

入力引数

すべて折りたたむ

入力行列。2次元数値行列として指定します。

データ型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

イメージの行数。正の整数として指定します。idct2はイメージ一个0でパディング,またはイメージ一个行になるように切り捨てます。既定では,大小(1)と等価です。

イメージの列数。正の整数として指定します。idct2はイメージ一个0でパディング,またはイメージ一个n列になるように切り捨てます。既定では,n大小(2)と等価です。

出力引数

すべて折りたたむ

2次元離散コサイン変換を使用して変換された行列。n列の数値行列として返されます。

データ型:

ヒント

  • 任意の行列一个に対して,idct2 (dct2 (A))は,丸め誤差の範囲内で一个と等価です。

アルゴリズム

idct2は,以下を使用して2次元逆DCTを計算します。

一个 n p 0 1 0 N 1 α p α B p 因为 π 2 + 1 p 2 因为 π 2 n + 1 2 N 0 1 0 n N 1

ここで,

α p 1 p 0 2 1 p 1

および

α 1 N 0 2 N 1 N 1

参照

Jain, A. K.,数字图像处理基础,Englewood Cliffs, NJ, Prentice Hall, 1989, pp. 150-153。

Pennebaker, W. B.和J. L. Mitchell, JPEG:静止图像数据压缩标准,纽约,Van Nostrand Reinhold, 1993。

R2006aより前に導入