最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。
RGB イメージをインデックス付きイメージに変換
一様量子化 — tol
を指定した場合、rgb2ind
は一様量子化を使用してイメージを変換します。一様量子化では、RGB カラー キューブを長さ tol
の小さいキューブに分割します。たとえば、tol
を 0.1 に指定した場合、立方体の辺は RGB キューブの長さの 10 分の 1 になります。小さなキューブの総数は、以下のとおりです。
t = (floor(1/tol)+1)^3
各キューブは、出力イメージの単一の色を表します。したがって、カラーマップの最大長は t
となります。rgb2ind
は入力イメージに表示されない色をすべて削除するため、実際のカラーマップは t
よりも小さくなることがあります。
最小分散量子化 — Q
を指定した場合、rgb2ind
では最小分散量子化が行われます。最小分散量子化では、イメージ内のカラー分布に応じて RGB カラー キューブをさまざまなサイズの小さいボックス (キューブとは限らない) に分割します。入力イメージが指定した数よりも少ない色を使っている場合、出力カラーマップもより小さくなります。
逆カラーマップ — 入力カラーマップ inmap
を指定した場合、rgb2ind
ではカラーマップへのマッピングが行われます。逆カラーマップ アルゴリズムは、指定されたカラーマップを色の成分ごとに 32 の個別レベルに量子化します。次に、入力イメージのピクセルごとに、量子化されたカラーマップ内で最も近い色が検出されます。
[1] Spencer W. Thomas, "Efficient Inverse Color Map Computation", Graphics Gems II, (ed. James Arvo), Academic Press: Boston. 1991. (includes source code)