Main Content

lab2uint16

L*a*b の色の値を uint16 に変換

説明

lab16 = lab2uint16(lab) は、L*a*b* の色の値を uint16 型に変換します。

すべて折りたたむ

この例では、L*a*b* の色の値を double から uint16 に変換する方法を説明します。

L*a*b* 色空間の白色を指定し、double ベクトルを作成します。

w = [100 0 0];

L*a*b* の色の値を uint16 に変換します。

lab2uint16(w)
ans = 1x3 uint16 row vector

   65280   32768   32768

入力引数

すべて折りたたむ

変換するカラー値。カラー値から成る m 行 3 列の数値行列 (1 行につき 1 色) または m x n x 3 の数値配列として指定します。

データ型: double | uint8

出力引数

すべて折りたたむ

変換後の色の値。入力と同じサイズの数値配列として返されます。

データ型: uint16

アルゴリズム

関数は、L*a*b* の色の値を uint16 型に変換します。Image Processing Toolbox™ は、1976 CIE L*a*b* の値を含む倍精度の L*a*b* の配列の手法に従います。uint8 または uint16 である L*a*b* 配列は、符号なし 8 ビットまたは 16 ビット整数として、L*a*b* 値を表す場合に ICC プロファイル仕様 (ICC.1:2001-4、www.color.org) での方法を使います。ICC エンコード手法を次の表に示します。

値 (L*)

uint8 の値

uint16 の値

0.0

0

0

100.0

255

65280

100.0 + (25500/65280)

なし

65535

値 (a* または b*)

uint8 の値

uint16 の値

-128.0

0

0

0.0

128

32768

127.0

255

65280

127.0 + (255/256)

なし

65535

バージョン履歴

R2006a より前に導入