ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

imapprox

色の数を減らしてインデックス付きイメージを近似

構文

[Y,newmap] = imapprox(X,map,n)
[Y,newmap] = imapprox(X,map,tol)
Y = imapprox(X,map,newmap)
Y = imapprox(...,dither_option)

説明

[Y,newmap] = imapprox(X,map,n) は最小分散量子化を使用してインデックス付きイメージ X と関連カラーマップ map の色に近づけます。imapprox は最大 n 色が含まれたカラーマップ newmap をもつインデックス付きイメージ Y を返します。

[Y,newmap] = imapprox(X,map,tol) は一様量子化を使用して Xmap の色に近づけます。newmap は最大 (floor(1/tol)+1)^3 色を含んでいます。tol は 0 ~ 1.0 でなければなりません。

Y = imapprox(X,map,newmap) はカラーマップのマッピングを使用して map の色の近似値を求め、map の色に一番近い色を newmap から見つけます。

Y = imapprox(...,dither_option) は、ディザリングを適用するか、適用しないかを設定します。dither_option には、次の値のいずれかを使うことができます。

説明

{'dither'} (既定の設定)

必要な場合は、空間的な解像度を犠牲にしても色の解像度を高めるためにディザリングを適用します。

'nodither'

元のイメージの色を新しいマップの最も近い色にマッピングします。ディザリングは適用されません。

クラス サポート

入力イメージ X は、クラス uint8uint16、またはdouble です。出力イメージ Y は、newmap の長さが 256 以下の場合はクラス uint8 です。newmap の長さが 256 を超える場合、Y はクラス double になります。

すべて折りたたむ

マンドリルの顔のインデックス付きイメージを読み込みます。220 色の関連カラーマップ map を使用してイメージ X を表示します。

figure
load mandrill
image(X)
colormap(map)
axis off         
axis image

新しいイメージ Y とその関連カラーマップ newmap を作成してインデックス付きイメージの色の数を 220 色から 16 色に削減します。

figure
[Y,newmap] = imapprox(X,map,16);
image(Y)
colormap(newmap)
axis off       
axis image

アルゴリズム

imapprox は、rgb2ind を使用して、色が少ない新しいカラーマップを作成します。

この情報は役に立ちましたか?