Main Content

xyz2rgb

CIE 1931 XYZ を RGB に変換

説明

RGB = xyz2rgb(XYZ) は CIE 1931 XYZ 値 (2 度視野) を sRGB 値に変換します。

RGB = xyz2rgb(XYZ,Name,Value) では、1 つ以上の名前と値の引数を使用して、RGB イメージの色空間など追加の変換オプションを指定します。

すべて折りたたむ

XYZ 色空間の色の値を sRGB 色空間に変換します。

xyz2rgb([0.25 0.40 0.10])
ans = 1×3

    0.4174    0.7434    0.2152

XYZ 色空間の色の値を Adobe RGB (1998) 色空間に変換します。

xyz2rgb([0.25 0.40 0.10],'ColorSpace','adobe-rgb-1998')
ans = 1×3

    0.5323    0.7377    0.2730

D50 白色点を指定して XYZ カラー値を sRGB に変換します。

xyz2rgb([0.25 0.40 0.10],'WhitePoint','d50')
ans = 1×3

    0.3276    0.7517    0.2869

XYZ カラー値を 8 ビットエンコードされた RGB カラー値に変換します。

xyz2rgb([0.25 0.40 0.10],'OutputType','uint8')
ans = 1x3 uint8 row vector

   106   190    55

入力引数

すべて折りたたむ

XYZ の色の値。次のいずれかの形式の数値配列として指定します。

  • c 行 3 列のカラーマップ。各行が 1 つの XYZ の色の値を指定します。

  • m x n x 3 のイメージ。

  • m x n x 3 x p のイメージのスタック。

データ型: single | double

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

例: rgb = xyz2rgb([0.25 0.40 0.10],ColorSpace="adobe-rgb-1998")

R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name を引用符で囲みます。

例: rgb = xyz2rgb([0.25 0.40 0.10],"ColorSpace","adobe-rgb-1998")

出力 RGB 値の色空間。"srgb""adobe-rgb-1998""prophoto-rgb"、または "linear-rgb" を指定します。"linear-rgb" を指定した場合、xyz2rgb は線形化された sRGB 値を返します。

データ型: string | char

基準白色点。1 行 3 列のベクトルまたは次の表の CIE 標準光源のいずれかとして指定します。

白色点
"a"

CIE 標準光源 A [1.0985, 1.0000, 0.3558]。相関色温度 2856 K で典型的な家庭用のタングステン製フィラメントの照明をシミュレートしたものです。

"c"CIE 標準光源 C [0.9807, 1.0000, 1.1822]。相関色温度 6774 K で平均天空または北空の昼光をシミュレートしたものです。CIE では推奨されていません。
"e"等エネルギー放射体、[1.000, 1.000, 1.000]。理論的参照値として有用。
"d50"CIE 標準光源 D50 [0.9642, 1.0000, 0.8251]。相関色温度 5003 K で日の出または日没時の暖か味のある昼光をシミュレートしたものです。"地平光" とも呼ばれます。

"d55"

CIE 標準光源 D55 [0.9568, 1.0000, 0.9214]。相関色温度 5500 K で午前または午後の中ごろの昼光をシミュレートしたものです。

"d65"CIE 標準光源 D65 [0.9504, 1.0000, 1.0888]。相関色温度 6504 K で正午の昼光をシミュレートしたものです。
"icc"ICC プロファイルで使用される PCS (プロファイル接続空間) の輝度。小数ビットが 16 ビットの 32 ビット符号付き固定小数点数による [0.9642, 1.000, 0.8249] の近似。実際の値: [31595,32768, 27030]/32768

データ型: single | double | string | char

返される RGB 値のデータ型。"double""single""uint8"、または "uint16" を指定します。OutputType を指定しない場合、出力の型は入力と同じになります。

データ型: string | char

出力引数

すべて折りたたむ

変換後の RGB の色の値。入力と同じサイズの数値配列として返されます。出力の型は、OutputType パラメーターを指定した場合を除いて入力の型と同じになります。

ヒント

  • 出力 RGB 色空間を "linear-rgb" に指定した場合、出力値は線形化された sRGB 値になります。代わりに、出力色空間を線形化された Adobe RGB (1998) にする場合は、関数 rgb2lin を使用できます。

    たとえば、CIE 1931 XYZ イメージ XYZ を線形化された Adobe RGB (1998) 色空間に変換するには、変換を次の 2 つのステップで実行します。

    RGBadobe = xyz2rgb(XYZ,"ColorSpace","adobe-rgb-1998");
    RGBlinadobe = rgb2lin(RGBadobe,"ColorSpace","adobe-rgb-1998");

バージョン履歴

R2014b で導入

すべて展開する