ColorConvert[color,colspace]
色の色空間を指定された色空間 colspace に変換する.
ColorConvert[image,colspace]
image の色空間を変換する.
ColorConvert[{expr1,…},colspace]
色と画像のリストの色空間を変換する.
ColorConvert
ColorConvert[color,colspace]
色の色空間を指定された色空間 colspace に変換する.
ColorConvert[image,colspace]
image の色空間を変換する.
ColorConvert[{expr1,…},colspace]
色と画像のリストの色空間を変換する.
詳細とオプション
- ColorConvertは,画像の色指定の変更によく使われる.色空間は,例えばCMYK色空間は印刷に,CIELAB色空間は色の比較にというように,さまざまな目的で使われる.
- ColorConvertは,カラー画像や任意の2Dおよび3Dの画像,さらには明示的な色チャンネル値のリストに使うことができる.
- ColorConvert[list,colspace]はデフォルトで list を次のように解釈する.
-
{v} グレーレベル {v,α} グレーレベルおよび
パラメータ{r,g,b} 赤,緑,青のレベル {r,g,b,α}
パラメータを伴うRGB - サポートされる色空間 colspace
-
"Grayscale" グレーレベル (GrayLevel) "RGB" 赤,緑,青 (RGBColor) "CMYK" シアン,マジェンタ,黄,黒 (CMYKColor) "HSB" 色相,彩度,明度 (Hue) "XYZ" CIE XYZ (XYZColor) "LAB" CIE
(LABColor)"LCH" CIE 

(LCHColor)"LUV" CIE
(LUVColor)ColorProfileData[…][i] 指定の描画明度 i を使ったカラープロファイル - "Grayscale","RGB","CMYK","HSB"から,あるいはこれらに変換する場合は,0から1の間になるようにチャンネル値が切り取られる.
- "XYZ","LAB","LUV","LCH"から,あるいはこれらに変換する場合は,チャンネル値は切り取られず,画像に適用されると,結果として実数型の画像となる.
- ColorConvertは,自動的に色(白色点)の適応を行う."XYZ","LAB","LUV","LCH"にはD50白色点が,"RGB","CMYK","HSB","Grayscale"にはD65白色点が仮定される.
- "RGB"から,あるいはこれへの変換では,チャンネル値はsRGB色空間のものであると仮定される.
- "RGB","CMYK","HSB","Grayscale"はD65白色点を想定する."XYZ","LAB","LUV","LCH"はD50白色点を想定する.これは,WhitePointオプションで変更可能である.
- WhitePointは,RGBとXYZの間の変換における色順応のための白色点と,XYZとCIELABまたはLuv間の変換のための基準白色を指定する.
- ColorConvert[input,src->dst]を使って,入力中のチャンネル値を色空間 src に従って解釈しながら,dst で指定された色空間に変換することができる.src と dst はどちらも既知の色空間あるいはカラープロファイルであってよい.
- ColorConvert[image,colspace]はColorConvert[image,ImageColorSpace[image]->colspace]と等価である.
- src で指定された色空間は,image 中のチャンネル数と互換である.
- dst がカラープロファイルの場合,デバイス空間あるいは接続空間の1つは入力の色空間あるいは指定されたソースの色空間 src にマッチしなければならない.
例題
すべて開く すべて閉じる例 (3)
ColorConvert[[image], "Grayscale"]ColorConvert[[image], "CMYK"]ImageColorSpace[%]ColorConvert[RGBColor[1, 0, 0], "CMYK"]//InputFormスコープ (9)
ColorConvert[{0.3}, "Grayscale"]//InputFormColorConvert[{0.3}, "RGB"]//InputFormColorConvert[{1.5, 1.2, 0}, "RGB"]//InputFormColorConvert[{1, 1, 0}, "CMYK"]//InputFormColorConvert[Red, "LAB"]//InputFormColorConvert[{Red, Green, Blue}, "CMYK"]//InputFormColorConvert[[image], "RGB"]%//ImageColorSpaceColorConvert[[image], "LAB"]ColorConvert[[image], "XYZ" -> "RGB"]ColorConvert[{[image], [image]}, "CMYK"]カラープロファイルを使って4色空間のsRGBバージョンに変換する:
rgbprof = Import[FindFile["sRGB_v4_ICC_preference.icc"]];
ColorConvert[[image], rgbprof]ソースとデスティネーション両方のデバイスプロファイルを指定する:
rgbprof = Import[FindFile["sRGB_v4_ICC_preference.icc"]];cmykprof = Import[FindFile["USWebCoatedSWOP.icc"]];
ColorConvert[[image], rgbprof -> cmykprof]rgbprof = Import[FindFile["sRGB_v4_ICC_preference.icc"]];
cmykprof = Import[FindFile["USWebCoatedSWOP.icc"]];
ColorConvert[[image], rgbprof -> cmykprof["MediaRelativeColorimetricProfile"]]ColorConvert[[image], "LCH"]オプション (2)
WhitePoint (2)
CIE色空間に変換する際のデフォルトの白色点はD50である:
ColorConvert[White, "XYZ"]//InputFormColorConvert[{1, 1, 1}, "XYZ", WhitePoint -> "F2"]//InputForm明示的なXYZColorを使う:
ColorConvert[White, "XYZ", WhitePoint -> XYZColor[.98, 1, .95]]//InputForm白色からXYZに変換するとき,結果は与えられる基準白色に一致する:
Table[ColorDistance[ColorConvert[{1, 1, 1}, "RGB" -> "XYZ", WhitePoint -> white], white], {white, RandomColor[XYZColor[_, 1, _], 10]}]Table[ColorDistance[ColorConvert[{1, 0, 0}, "LAB" -> "XYZ", WhitePoint -> white], white], {white, RandomColor[XYZColor[_, 1, _], 10]}]Table[ColorDistance[ColorConvert[{1, 0, 0}, "LUV" -> "XYZ", WhitePoint -> white], white], {white, RandomColor[XYZColor[_, 1, _], 10]}]アプリケーション (2)
img = [image];Multicolumn[With[
{img = ColorConvert[img, "LAB"]}, MapThread[Labeled[#1, TraditionalForm@#2]&, {
{img,
ImageApply[({L, a, b} {1 - L, a, b})@@#&, img],
ImageApply[({L, a, b} {L, -a, b})@@#&, img], ImageApply[({L, a, b} {L, a, -b})@@#&, img], ImageApply[({L, a, b} {L, -a, -b})@@#&, img], ImageApply[({L, a, b} {1 - L, -a, -b})@@#&, img]},
{{L, a, b}, {1 - L, a, b}, {L, -a, b}, {L, a, -b}, {L, -a, -b}, {1 - L, -a, -b}}}
]]]画像を"LCH"色モデルに変換し,特定の彩度および色相の変換を行う:
img = ColorConvert[[image], LCHColor];masks = Image /@ ComponentMeasurements[ColorNegate@RegionBinarize[img, {{0, 0}}, .5], "Mask"][[All, 2]]ImageCompose[img, MapThread[{alpha, chroma, Δh} ImageApply[#{1, chroma, 1, 1} + {0, 0, Δh, 0}&, SetAlphaChannel[img, alpha]], {masks, {1.5, 1, .2}, {.75, 0, .4}}]]特性と関係 (3)
ColorConvertは色指示子を使うときは自動的に色順応を行う:
List@@ColorConvert[RGBColor[1, 1, 1], XYZColor]ChromaticityPlot3Dは順応したものとしないものの表現の差が可視化できる:
ChromaticityPlot3D[{"RGB", "sRGB"}, "XYZ", WhitePoint -> All, PlotRange -> {{.7, 1.1}, {.7, 1.1}, {.7, 1.1}}]目標がColorProfileDataで指定されている場合,結果はデバイスの色空間で与えられる:
icc = Import[FindFile["sRGB_v4_ICC_preference.icc"]]ColorConvert[RGBColor[1, 0, 0], icc]//HeadRGBカラーのグレースケール表現は,Y'CbCrカラーモデルにおける輝度と同等である:
c = RGBColor[.1, .2, .3];ColorConvert[c, GrayLevel][[1]]List@@c.{0.299, 0.587, 0.114}考えられる問題 (1)
色のプロファイルを使った変換は,近似色での表示になることがある:
p = Import[FindFile["USWebCoatedSWOP.icc"]];
c = ColorConvert[RGBColor[1, 0, 0], p]そのような場合,もとの色空間へ変換し直すと異なる色が与えられる:
ColorConvert[c, RGBColor]//InputFormp = Import["USWebCoatedSWOP.icc"];
NestList[ColorConvert[ColorConvert[#, p], p -> "RGB"]&, Red, 20]Equal@@
NestList[ColorConvert[ColorConvert[#, "CMYK"], "CMYK" -> "RGB"]&, Red, 20]テキスト
Wolfram Research (2008), ColorConvert, Wolfram言語関数, https://reference.wolfram.com/language/ref/ColorConvert.html (2021年に更新).
CMS
Wolfram Language. 2008. "ColorConvert." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2021. https://reference.wolfram.com/language/ref/ColorConvert.html.
APA
Wolfram Language. (2008). ColorConvert. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ColorConvert.html
BibTeX
@misc{reference.wolfram_2026_colorconvert, author="Wolfram Research", title="{ColorConvert}", year="2021", howpublished="\url{https://reference.wolfram.com/language/ref/ColorConvert.html}", note=[Accessed: 08-September-2026]}
BibLaTeX
@online{reference.wolfram_2026_colorconvert, organization={Wolfram Research}, title={ColorConvert}, year={2021}, url={https://reference.wolfram.com/language/ref/ColorConvert.html}, note=[Accessed: 08-September-2026]}