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

名前と値のペアの引数

オプションの引数 Name,Value のコンマ区切りペアを指定します。Name は引数名で、Value は対応する値です。Name は引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を、任意の順番で指定できます。

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

出力 RGB 値の色空間。'ColorSpace''srgb''adobe-rgb-1998'、または 'linear-rgb' から構成されるコンマ区切りのペアとして指定します。'linear-rgb' を指定した場合、xyz2rgb は線形化された sRGB 値を返します。

データ型: char

基準白色点。'WhitePoint' と 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 | char

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

データ型: 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 で導入