skimage.color
#
色空間変換。
染色から RGB 色空間への変換。 |
|
画像配列を新しい色空間に変換します。 |
|
Lab 色空間における 2 点間のユークリッド距離 |
|
CIEDE 2000 規格で与えられる色差。 |
|
CIEDE 94 規格による色差 |
|
CMC l:c 規格による色差。 |
|
グレースケール画像の RGB 表現を作成します。 |
|
グレースケール画像の RGBA 表現を作成します。 |
|
ヘマトキシリン-エオシン-DAB (HED) から RGB 色空間への変換。 |
|
HSV から RGB 色空間への変換。 |
|
CIE-LAB の画像を CIE-LCh 色空間に変換します。 |
|
CIE-LAB の画像を sRGB 色空間に変換します。 |
|
CIE-LAB の画像を XYZ 色空間に変換します。 |
|
カラーコード化されたラベルが画像に描画された RGB 画像を返します。 |
|
CIE-LCh の画像を CIE-LAB 色空間に変換します。 |
|
Luv から RGB 色空間への変換。 |
|
CIE-Luv から XYZ 色空間への変換。 |
|
RGB 画像の輝度を計算します。 |
|
RGB からヘマトキシリン-エオシン-DAB (HED) 色空間への変換。 |
|
RGB から HSV 色空間への変換。 |
|
与えられたイルミナントおよび観察者の下での sRGB 色空間 (IEC 61966-2-1:1999) から CIE Lab 色空間への変換。 |
|
RGB から CIE-Luv 色空間への変換。 |
|
RGB から RGB CIE 色空間への変換。 |
|
RGB から XYZ 色空間への変換。 |
|
RGB から YCbCr 色空間への変換。 |
|
RGB から YDbDr 色空間への変換。 |
|
RGB から YIQ 色空間への変換。 |
|
RGB から YPbPr 色空間への変換。 |
|
RGB から YUV 色空間への変換。 |
|
アルファブレンディングを使用した RGBA から RGB への変換 [1]。 |
|
RGB CIE から RGB 色空間への変換。 |
|
RGB から染色色空間への変換。 |
|
XYZ から CIE-LAB 色空間への変換。 |
|
XYZ から CIE-Luv 色空間への変換。 |
|
XYZ から RGB 色空間への変換。 |
|
CIE XYZ 三刺激値を取得します。 |
|
YCbCr から RGB 色空間への変換。 |
|
YDbDr から RGB 色空間への変換。 |
|
YIQ から RGB 色空間への変換。 |
|
YPbPr から RGB 色空間への変換。 |
|
YUV から RGB 色空間への変換。 |
- skimage.color.combine_stains(stains, conv_matrix, *, channel_axis=-1)[ソース]#
染色から RGB 色空間への変換。
- パラメータ:
- stains(…, C=3, …) array_like
染色色空間の画像。デフォルトでは、最後の次元がチャネルを示します。
- conv_matrix: ndarray
G. ランディーニ [1] によって記述された染色分離行列。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGB 形式の画像。入力と同じ次元。
- 例外:
- ValueError
stains
が少なくとも 2 次元で、形状が (…, C=3, …) でない場合。
注釈
color
モジュールで利用可能な染色組み合わせ行列と、それぞれの色空間rgb_from_hed
: ヘマトキシリン + エオシン + DABrgb_from_hdx
: ヘマトキシリン + DABrgb_from_fgx
: フューゲン + ライトグリーンrgb_from_bex
: ギムザ染色: メチルブルー + エオシンrgb_from_rbd
: ファストレッド + ファストブルー + DABrgb_from_gdx
: メチルグリーン + DABrgb_from_hax
: ヘマトキシリン + AECrgb_from_bro
: ブルーマトリックス アニリンブルー + レッドマトリックス アゾカルミン + オレンジマトリックス オレンジGrgb_from_bpx
: メチルブルー + ポンソーフクシンrgb_from_ahx
: アルシアンブルー + ヘマトキシリンrgb_from_hpx
: ヘマトキシリン + PAS
参考文献
[1][2]A. C. ルイフロクと D. A. ジョンストン、「色デコンボリューションによる組織化学的染色の定量化」、Anal. Quant. Cytol. Histol.、vol. 23、no. 4、pp. 291–299、2001 年 8 月。
例
>>> from skimage import data >>> from skimage.color import (separate_stains, combine_stains, ... hdx_from_rgb, rgb_from_hdx) >>> ihc = data.immunohistochemistry() >>> ihc_hdx = separate_stains(ihc, hdx_from_rgb) >>> ihc_rgb = combine_stains(ihc_hdx, rgb_from_hdx)
- skimage.color.convert_colorspace(arr, fromspace, tospace, *, channel_axis=-1)[ソース]#
画像配列を新しい色空間に変換します。
- 有効な色空間は次のとおりです。
‘RGB’, ‘HSV’, ‘RGB CIE’, ‘XYZ’, ‘YUV’, ‘YIQ’, ‘YPbPr’, ‘YCbCr’, ‘YDbDr’
- パラメータ:
- arr(…, C=3, …) array_like
変換する画像。デフォルトでは、最後の次元がチャネルを示します。
- fromspacestr
変換元の色空間。小文字で指定できます。
- tospacestr
変換先の色空間。小文字で指定できます。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
変換された画像。入力と同じ次元。
- 例外:
- ValueError
fromspace が有効な色空間でない場合
- ValueError
tospace が有効な色空間でない場合
注釈
変換は「中心」の RGB 色空間を介して実行されます。つまり、XYZ から HSV への変換は、直接ではなく
XYZ -> RGB -> HSV
として実装されます。例
>>> from skimage import data >>> img = data.astronaut() >>> img_hsv = convert_colorspace(img, 'RGB', 'HSV')
- skimage.color.deltaE_cie76(lab1, lab2, channel_axis=-1)[ソース]#
Lab 色空間における 2 点間のユークリッド距離
- パラメータ:
- lab1array_like
参照色 (Lab 色空間)
- lab2array_like
比較色 (Lab 色空間)
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- dEarray_like
lab1
とlab2
の間の色の距離
参考文献
[2]A. R. ロバートソン、「CIE 1976 色差式」、Color Res. Appl. 2、7-11 (1977)。
- skimage.color.deltaE_ciede2000(lab1, lab2, kL=1, kC=1, kH=1, *, channel_axis=-1)[ソース]#
CIEDE 2000 規格で与えられる色差。
CIEDE 2000 は、CIDE94 の大幅な改訂版です。知覚的なキャリブレーションは、主に滑らかな表面の自動車用塗料の経験に基づいています。
- パラメータ:
- lab1array_like
参照色 (Lab 色空間)
- lab2array_like
比較色 (Lab 色空間)
- kLfloat (範囲), optional
明度スケール係数、「許容できるほど近い」の場合は 1、 「知覚できない」の場合は 2、deltaE_cmc を参照
- kCfloat (範囲), optional
彩度スケール係数、通常は 1
- kHfloat (範囲), optional
色相スケール係数、通常は 1
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- deltaEarray_like
lab1
とlab2
の間の距離
注釈
CIEDE 2000 では、明度、彩度、色相のパラメータ重み付け係数 (
kL
、kC
、kH
) が想定されています。これらはデフォルトで 1 に設定されます。参考文献
[3]M. メルゴーサ、J. ケサーダ、E. ヒタ、「正確な色差許容データセットでテストされた最近のいくつかの色メトリクスの均一性」、Appl. Opt. 33、8069-8077 (1994)。
- skimage.color.deltaE_ciede94(lab1, lab2, kH=1, kC=1, kL=1, k1=0.045, k2=0.015, *, channel_axis=-1)[source]#
CIEDE 94 規格による色差
知覚的な非均一性を、アプリケーション固有のスケールファクター(
kH
、kC
、kL
、k1
、およびk2
)を使用して調整します。- パラメータ:
- lab1array_like
参照色 (Lab 色空間)
- lab2array_like
比較色 (Lab 色空間)
- kHfloat, optional
色相スケール
- kCfloat, optional
彩度スケール
- kLfloat, optional
明度スケール
- k1float, optional
最初のスケールパラメータ
- k2float, optional
2番目のスケールパラメータ
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- dEarray_like
lab1
とlab2
の間の色の差
注釈
deltaE_ciede94は、lab1とlab2に関して対称ではありません。CIEDE94は、最初の色に関して、明度、色相、および彩度のスケールを定義します。したがって、最初の色は「基準」色と見なされるべきです。
kL
、k1
、k2
はアプリケーションに依存し、デフォルトではグラフィックアーツに推奨される値になります。パラメータ
グラフィックアーツ
テキスタイル
kL
1.000
2.000
k1
0.045
0.048
k2
0.015
0.014
参考文献
- skimage.color.deltaE_cmc(lab1, lab2, kL=1, kC=1, *, channel_axis=-1)[source]#
CMC l:c 規格による色差。
この色の差は、染料と着色剤協会(英国)の色測定委員会(CMC)によって開発されました。これは、繊維産業での使用を目的としています。
スケールファクター
kL
、kC
は、色相の違いに対する明度と彩度の違いに与える重みを設定します。通常の値は、「許容範囲」ではkL=2
、kC=1
、「知覚不能」ではkL=1
、kC=1
です。dE > 1
の色は、与えられたスケールファクターに対して「異なる」と見なされます。- パラメータ:
- lab1array_like
参照色 (Lab 色空間)
- lab2array_like
比較色 (Lab 色空間)
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- dEarray_like
lab1
とlab2
の間の色の距離
注釈
deltaE_cmcは、最初の色に関して、明度、色相、および彩度のスケールを定義します。したがって、
deltaE_cmc(lab1, lab2) != deltaE_cmc(lab2, lab1)
となります。参考文献
[3]F. J. J. Clarke, R. McDonald, and B. Rigg, “Modification to the JPC79 colour-difference formula,” J. Soc. Dyers Colour. 100, 128-132 (1984).
- skimage.color.gray2rgb(image, *, channel_axis=-1)[source]#
グレースケール画像の RGB 表現を作成します。
- パラメータ:
- imagearray_like
入力画像。
- channel_axisint, optional
このパラメータは、出力配列のどの軸がチャンネルに対応するかを示します。
- 戻り値:
- rgb(…, C=3, …) ndarray
RGB画像。長さ3の新しい次元が入力画像に追加されます。
注釈
入力が形状
(M,)
の1次元画像の場合、出力は形状(M, C=3)
になります。
- skimage.color.gray2rgba(image, alpha=None, *, channel_axis=-1)[source]#
グレースケール画像の RGBA 表現を作成します。
- パラメータ:
- imagearray_like
入力画像。
- alphaarray_like, optional
出力画像のアルファチャンネル。スカラーまたは
image
にブロードキャストできる配列を使用できます。指定しない場合は、image
dtypeに対応する最大値に設定されます。- channel_axisint, optional
このパラメータは、出力配列のどの軸がチャンネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- rgbandarray
RGBA画像。長さ4の新しい次元が入力画像の形状に追加されます。
- skimage.color.hed2rgb(hed, *, channel_axis=-1)[source]#
ヘマトキシリン-エオシン-DAB (HED) から RGB 色空間への変換。
- パラメータ:
- hed(…, C=3, …) array_like
HED色空間の画像。デフォルトでは、最後の次元がチャンネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGBの画像。入力と同じ次元です。
- 例外:
- ValueError
hed
が(…, C=3, …)の形状で少なくとも2次元でない場合。
参考文献
[1]A. C. Ruifrok and D. A. Johnston, “Quantification of histochemical staining by color deconvolution.,” Analytical and quantitative cytology and histology / the International Academy of Cytology [and] American Society of Cytology, vol. 23, no. 4, pp. 291-9, Aug. 2001.
例
>>> from skimage import data >>> from skimage.color import rgb2hed, hed2rgb >>> ihc = data.immunohistochemistry() >>> ihc_hed = rgb2hed(ihc) >>> ihc_rgb = hed2rgb(ihc_hed)
- skimage.color.hsv2rgb(hsv, *, channel_axis=-1)[source]#
HSV から RGB 色空間への変換。
- パラメータ:
- hsv(…, C=3, …) array_like
HSV形式の画像。デフォルトでは、最後の次元がチャンネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGB 形式の画像。入力と同じ次元。
- 例外:
- ValueError
hsv
が(…, C=3, …)の形状で少なくとも2次元でない場合。
注釈
RGBとHSVの色空間間の変換は、整数演算と丸めのために精度がいくらか失われます[1]。
参考文献
例
>>> from skimage import data >>> img = data.astronaut() >>> img_hsv = rgb2hsv(img) >>> img_rgb = hsv2rgb(img_hsv)
- skimage.color.lab2lch(lab, *, channel_axis=-1)[source]#
CIE-LAB の画像を CIE-LCh 色空間に変換します。
CIE-LChは、CIE-LAB(直交座標)色空間の円筒表現です。
- パラメータ:
- lab(…, C=3, …) array_like
CIE-LAB色空間の入力画像。
channel_axis
が設定されていない限り、最後の次元はCIE-LABチャンネルを示します。L*値の範囲は0〜100です。a*およびb*値の範囲は-128〜127です。- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
CIE-LCh色空間の画像。入力と同じ形状です。
- 例外:
- ValueError
lab
が少なくとも3つのチャンネル(つまり、L*、a*、およびb*)を持っていない場合。
参考
注釈
hチャネル(つまり、色相)は、
(0, 2*pi)
の範囲の角度として表されます。参考文献
例
>>> from skimage import data >>> from skimage.color import rgb2lab, lab2lch >>> img = data.astronaut() >>> img_lab = rgb2lab(img) >>> img_lch = lab2lch(img_lab)
- skimage.color.lab2rgb(lab, illuminant='D65', observer='2', *, channel_axis=-1)[ソース]#
CIE-LAB の画像を sRGB 色空間に変換します。
- パラメータ:
- lab(…, C=3, …) array_like
CIE-LAB色空間の入力画像。
channel_axis
が設定されていない限り、最後の次元はCIE-LABチャンネルを示します。L*値の範囲は0〜100です。a*およびb*値の範囲は-128〜127です。- illuminant{"A", "B", "C", "D50", "D55", "D65", "D75", "E"}、オプション
光源の名前(関数は大文字と小文字を区別しません)。
- observer{"2", "10", "R"}、オプション
観察者の開口角。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
入力と同じ形状のsRGB色空間の画像。
- 例外:
- ValueError
lab
が少なくとも2次元で形状(..., C=3, ...)でない場合。
参考
注釈
この関数は、
lab2xyz()
とxyz2rgb()
を使用します。CIE XYZ三刺激値は、x_ref = 95.047、y_ref = 100.、および z_ref = 108.883 です。サポートされている光源のリストについては、関数xyz_tristimulus_values()
を参照してください。参考文献
- skimage.color.lab2xyz(lab, illuminant='D65', observer='2', *, channel_axis=-1)[ソース]#
CIE-LAB の画像を XYZ 色空間に変換します。
- パラメータ:
- lab(…, C=3, …) array_like
CIE-LAB色空間の入力画像。
channel_axis
が設定されていない限り、最後の次元はCIE-LABチャンネルを示します。L*値の範囲は0〜100です。a*およびb*値の範囲は-128〜127です。- illuminant{"A", "B", "C", "D50", "D55", "D65", "D75", "E"}、オプション
光源の名前(関数は大文字と小文字を区別しません)。
- observer{"2", "10", "R"}、オプション
観察者の開口角。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
入力と同じ形状のXYZ色空間の画像。
- 例外:
- ValueError
lab
が少なくとも2次元で形状(..., C=3, ...)でない場合。- ValueError
光源または観察角度がサポートされていないか不明な場合。
- UserWarning
ピクセルが無効(Z < 0)な場合。
参考
注釈
CIE XYZ三刺激値は、x_ref = 95.047、y_ref = 100.、および z_ref = 108.883 です。サポートされている光源のリストについては、関数
xyz_tristimulus_values()
を参照してください。参考文献
- skimage.color.label2rgb(label, image=None, colors=None, alpha=0.3, bg_label=0, bg_color=(0, 0, 0), image_alpha=1, kind='overlay', *, saturation=0, channel_axis=-1)[ソース]#
カラーコード化されたラベルが画像に描画された RGB 画像を返します。
- パラメータ:
- labelndarray
image
と同じ形状のラベルの整数配列。- imagendarray、オプション
ラベルの下敷きとして使用される画像。
labels
と同じ形状である必要があり、オプションで追加のRGB(チャネル)軸を持つことができます。image
がRGB画像の場合、色付けの前にグレースケールに変換されます。- colorslist、オプション
色のリスト。ラベルの数が色の数を超える場合、色は循環します。
- alphafloat [0, 1]、オプション
色付けされたラベルの不透明度。imageが
None
の場合無視されます。- bg_labelint、オプション
背景として扱われるラベル。
bg_label
が指定されている場合、bg_color
はNone
であり、kind
がoverlay
の場合、背景は色で塗りつぶされません。- bg_colorstrまたは配列、オプション
背景色。
skimage.color.color_dict
の名前、または[0, 1]の間のRGB浮動小数点値である必要があります。- image_alphafloat [0, 1]、オプション
画像の不透明度。
- kind文字列、{'overlay'、'avg'}のいずれか
必要なカラー画像のタイプ。「overlay」は定義された色を循環し、色付けされたラベルを元の画像に重ねます。「avg」は、各ラベル付きセグメントをその平均色に置き換え、染色クラスまたはパステル画のような外観にします。
- saturationfloat [0, 1]、オプション
完全に彩度が高い(元のRGB、
saturation=1
)から完全に彩度が低い(グレースケール、saturation=0
)の間で、元の画像に適用される彩度を制御するパラメーター。kind='overlay'
の場合にのみ適用されます。- channel_axisint, optional
このパラメーターは、出力配列のどの軸がチャネルに対応するかを示します。
image
が指定されている場合、これはチャネルに対応するimage
の軸とも一致する必要があります。バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- result
image
と同じ形状のfloatのndarray 特定のアルファ値で、
label
の個別の値ごとに、循環カラーマップ(colors
)を画像とブレンドした結果。
- result
- skimage.color.lch2lab(lch, *, channel_axis=-1)[ソース]#
CIE-LCh の画像を CIE-LAB 色空間に変換します。
CIE-LChは、CIE-LAB(直交座標)色空間の円筒表現です。
- パラメータ:
- lch(…, C=3, …) array_like
CIE-LCh色空間の入力画像。
channel_axis
が設定されていない限り、最後の次元はCIE-LABチャネルを示します。L*の値は0から100の範囲です。Cの値は0から100の範囲です。hの値は0から2*pi
の範囲です。- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
入力と同じ形状のCIE-LAB形式の画像。
- 例外:
- ValueError
lch
に少なくとも3つのチャネル(つまり、L*、C、およびh)がない場合。
参考
注釈
hチャネル(つまり、色相)は、
(0, 2*pi)
の範囲の角度として表されます。参考文献
例
>>> from skimage import data >>> from skimage.color import rgb2lab, lch2lab, lab2lch >>> img = data.astronaut() >>> img_lab = rgb2lab(img) >>> img_lch = lab2lch(img_lab) >>> img_lab2 = lch2lab(img_lch)
- skimage.color.luv2rgb(luv, *, channel_axis=-1)[ソース]#
Luv から RGB 色空間への変換。
- パラメータ:
- luv(…, C=3, …) array_like
CIE Luv形式の画像。デフォルトでは、最後の次元はチャネルを示します。
- 戻り値:
- out(…, C=3, …) ndarray
RGB 形式の画像。入力と同じ次元。
- 例外:
- ValueError
luv
が少なくとも2次元で形状(..., C=3, ...)でない場合。
注釈
この関数は、luv2xyzとxyz2rgbを使用します。
- skimage.color.luv2xyz(luv, illuminant='D65', observer='2', *, channel_axis=-1)[ソース]#
CIE-Luv から XYZ 色空間への変換。
- パラメータ:
- luv(…, C=3, …) array_like
CIE-Luv形式の画像。デフォルトでは、最後の次元はチャネルを示します。
- illuminant{"A", "B", "C", "D50", "D55", "D65", "D75", "E"}、オプション
光源の名前(関数は大文字と小文字を区別しません)。
- observer{"2", "10", "R"}、オプション
観察者の開口角。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
XYZ形式の画像。入力と同じ次元です。
- 例外:
- ValueError
luv
が少なくとも2次元で形状(..., C=3, ...)でない場合。- ValueError
光源または観察角度がサポートされていないか不明な場合。
注釈
XYZ変換の重みはobserver=2Aを使用します。D65光源の参照白色点は、XYZ三刺激値が
(95.047, 100., 108.883)
です。サポートされている光源のリストについては、関数xyz_tristimulus_values()
を参照してください。参考文献
- skimage.color.rgb2gray(rgb, *, channel_axis=-1)[ソース]#
RGB 画像の輝度を計算します。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- 戻り値:
- outndarray
輝度画像。入力配列と同じサイズで、チャネル次元が削除された配列です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
注釈
この変換で使用される重みは、現代のCRT蛍光体用に調整されています。
Y = 0.2125 R + 0.7154 G + 0.0721 B
アルファチャネルが存在する場合、無視されます。
参考文献
例
>>> from skimage.color import rgb2gray >>> from skimage import data >>> img = data.astronaut() >>> img_gray = rgb2gray(img)
- skimage.color.rgb2hed(rgb, *, channel_axis=-1)[ソース]#
RGB からヘマトキシリン-エオシン-DAB (HED) 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
HED形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
参考文献
[1]A. C. Ruifrok and D. A. Johnston, “Quantification of histochemical staining by color deconvolution.,” Analytical and quantitative cytology and histology / the International Academy of Cytology [and] American Society of Cytology, vol. 23, no. 4, pp. 291-9, Aug. 2001.
例
>>> from skimage import data >>> from skimage.color import rgb2hed >>> ihc = data.immunohistochemistry() >>> ihc_hed = rgb2hed(ihc)
- skimage.color.rgb2hsv(rgb, *, channel_axis=-1)[ソース]#
RGB から HSV 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
HSV形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
注釈
RGBとHSVのカラースペース間の変換は、整数演算と丸めにより、精度の損失が発生します [1]。
参考文献
例
>>> from skimage import color >>> from skimage import data >>> img = data.astronaut() >>> img_hsv = color.rgb2hsv(img)
- skimage.color.rgb2lab(rgb, illuminant='D65', observer='2', *, channel_axis=-1)[ソース]#
与えられたイルミナントおよび観察者の下での sRGB 色空間 (IEC 61966-2-1:1999) から CIE Lab 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- illuminant{"A", "B", "C", "D50", "D55", "D65", "D75", "E"}、オプション
光源の名前(関数は大文字と小文字を区別しません)。
- observer{"2", "10", "R"}、オプション
観察者の開口角。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
Lab形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
注釈
RGBはデバイス依存のカラースペースであるため、この関数を使用する場合は、分析する画像がsRGBカラースペースにマッピングされていることを確認してください。
この関数はrgb2xyzとxyz2labを使用します。デフォルトでは、Observer = "2"、Illuminant = "D65"です。CIE XYZ三刺激値x_ref = 95.047、y_ref = 100.、z_ref = 108.883。サポートされている光源のリストについては、関数
xyz_tristimulus_values()
を参照してください。参考文献
- skimage.color.rgb2luv(rgb, *, channel_axis=-1)[ソース]#
RGB から CIE-Luv 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
CIE Luv形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
注釈
この関数はrgb2xyzとxyz2luvを使用します。
参考文献
- skimage.color.rgb2rgbcie(rgb, *, channel_axis=-1)[ソース]#
RGB から RGB CIE 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGB CIE形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
参考文献
例
>>> from skimage import data >>> from skimage.color import rgb2rgbcie >>> img = data.astronaut() >>> img_rgbcie = rgb2rgbcie(img)
- skimage.color.rgb2xyz(rgb, *, channel_axis=-1)[ソース]#
RGB から XYZ 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
XYZ形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
注釈
CIE XYZカラースペースは、CIE RGBカラースペースから派生しています。ただし、この関数はsRGBから変換することに注意してください。
参考文献
例
>>> from skimage import data >>> img = data.astronaut() >>> img_xyz = rgb2xyz(img)
- skimage.color.rgb2ycbcr(rgb, *, channel_axis=-1)[ソース]#
RGB から YCbCr 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
YCbCr形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
注釈
Yは16〜235の間です。これは、ビデオコーデックで一般的に使用されるカラースペースです。時々、誤って「YUV」と呼ばれます。
参考文献
- skimage.color.rgb2ydbdr(rgb, *, channel_axis=-1)[ソース]#
RGB から YDbDr 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
YDbDr形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
注釈
これは、ビデオコーデックで一般的に使用されるカラースペースです。また、JPEG2000の可逆カラー変換でもあります。
参考文献
- skimage.color.rgb2yiq(rgb, *, channel_axis=-1)[ソース]#
RGB から YIQ 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
YIQ形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
- skimage.color.rgb2ypbpr(rgb, *, channel_axis=-1)[ソース]#
RGB から YPbPr 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
YPbPr形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
参考文献
- skimage.color.rgb2yuv(rgb, *, channel_axis=-1)[ソース]#
RGB から YUV 色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
YUV形式の画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
注釈
Yは0〜1の間です。Yが16〜235の範囲であるビデオコーデックで一般的に使用されるカラースペースには、YUVの代わりにYCbCrを使用してください。
参考文献
- skimage.color.rgba2rgb(rgba, background=(1, 1, 1), *, channel_axis=-1)[ソース]#
アルファブレンディングを使用したRGBAからRGBへの変換[1]。
- パラメータ:
- rgba(…, C=4, …) array_like
RGBA形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- backgroundarray_like
画像をブレンドする背景色(0〜1の間の3つの浮動小数点数 - 背景のRGB値)。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGB 形式の画像。入力と同じ次元。
- 例外:
- ValueError
rgba
が少なくとも2次元で、形状が(…, 4, …)でない場合。
参考文献
例
>>> from skimage import color >>> from skimage import data >>> img_rgba = data.logo() >>> img_rgb = color.rgba2rgb(img_rgba)
- skimage.color.rgbcie2rgb(rgbcie, *, channel_axis=-1)[ソース]#
RGB CIE から RGB 色空間への変換。
- パラメータ:
- rgbcie(…, C=3, …) array_like
RGB CIE形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGB 形式の画像。入力と同じ次元。
- 例外:
- ValueError
rgbcie
が少なくとも2次元で、形状が(…, C=3, …)でない場合。
参考文献
例
>>> from skimage import data >>> from skimage.color import rgb2rgbcie, rgbcie2rgb >>> img = data.astronaut() >>> img_rgbcie = rgb2rgbcie(img) >>> img_rgb = rgbcie2rgb(img_rgbcie)
- skimage.color.separate_stains(rgb, conv_matrix, *, channel_axis=-1)[ソース]#
RGB から染色色空間への変換。
- パラメータ:
- rgb(…, C=3, …) array_like
RGB形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- conv_matrix: ndarray
G. Landiniによって記述された染色分離行列[1]。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
染色カラースペースの画像。入力と同じ次元です。
- 例外:
- ValueError
rgb
が少なくとも2次元で、形状が (…, C=3, …) でない場合。
注釈
color
モジュールで利用可能な染色分離行列と、それぞれのカラースペースhed_from_rgb
: ヘマトキシリン + エオシン + DABhdx_from_rgb
: ヘマトキシリン + DABfgx_from_rgb
: フォイルゲン + ライトグリーンbex_from_rgb
: ギムザ染色 : メチルブルー + エオシンrbd_from_rgb
: ファストレッド + ファストブルー + DABgdx_from_rgb
: メチルグリーン + DABhax_from_rgb
: ヘマトキシリン + AECbro_from_rgb
: ブルーマトリックス アニリンブルー + レッドマトリックス アゾカルミン + オレンジマトリックス オレンジGbpx_from_rgb
: メチルブルー + ポンソーフクシンahx_from_rgb
: アルシアンブルー + ヘマトキシリンhpx_from_rgb
: ヘマトキシリン + PAS
この実装は、DIPlib[2]からいくつかのアイデアを借用しています。たとえば、ベール・ランバートの法則を計算する際のログアーティファクトを回避するための小さな値を使用した補正などです。
参考文献
[1][3]A. C. ルイフロクと D. A. ジョンストン、「色デコンボリューションによる組織化学的染色の定量化」、Anal. Quant. Cytol. Histol.、vol. 23、no. 4、pp. 291–299、2001 年 8 月。
例
>>> from skimage import data >>> from skimage.color import separate_stains, hdx_from_rgb >>> ihc = data.immunohistochemistry() >>> ihc_hdx = separate_stains(ihc, hdx_from_rgb)
- skimage.color.xyz2lab(xyz, illuminant='D65', observer='2', *, channel_axis=-1)[ソース]#
XYZ から CIE-LAB 色空間への変換。
- パラメータ:
- xyz(…, C=3, …) array_like
XYZ形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- illuminant{"A", "B", "C", "D50", "D55", "D65", "D75", "E"}、オプション
光源の名前(関数は大文字と小文字を区別しません)。
- observer{"2", "10", "R"}、オプション
次のいずれか:2度のオブザーバー、10度のオブザーバー、またはR関数grDevices::convertColorの「R」オブザーバー。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
CIE-LAB形式の画像。入力と同じ次元です。
- 例外:
- ValueError
xyz
が少なくとも2次元で、形状が(…, C=3, …)でない場合。- ValueError
照明または観測角がサポートされていないか不明な場合。
注釈
デフォルトでは、Observer = "2", Illuminant = "D65"です。CIE XYZ三刺激値x_ref = 95.047、y_ref = 100.、z_ref = 108.883。サポートされている照明のリストについては、関数
xyz_tristimulus_values()
を参照してください。参考文献
例
>>> from skimage import data >>> from skimage.color import rgb2xyz, xyz2lab >>> img = data.astronaut() >>> img_xyz = rgb2xyz(img) >>> img_lab = xyz2lab(img_xyz)
- skimage.color.xyz2luv(xyz, illuminant='D65', observer='2', *, channel_axis=-1)[ソース]#
XYZ から CIE-Luv 色空間への変換。
- パラメータ:
- xyz(…, C=3, …) array_like
XYZ形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- illuminant{"A", "B", "C", "D50", "D55", "D65", "D75", "E"}、オプション
光源の名前(関数は大文字と小文字を区別しません)。
- observer{"2", "10", "R"}、オプション
観察者の開口角。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
CIE-Luv形式の画像。入力と同じ次元です。
- 例外:
- ValueError
xyz
が少なくとも2次元で、形状が(…, C=3, …)でない場合。- ValueError
光源または観察角度がサポートされていないか不明な場合。
注釈
デフォルトでは、XYZ変換の重みはobserver=2Aを使用します。D65イルミナントの参照ホワイトポイント。XYZ三刺激値は
(95.047, 100., 108.883)
です。サポートされている照明のリストについては、関数xyz_tristimulus_values()
を参照してください。参考文献
例
>>> from skimage import data >>> from skimage.color import rgb2xyz, xyz2luv >>> img = data.astronaut() >>> img_xyz = rgb2xyz(img) >>> img_luv = xyz2luv(img_xyz)
- skimage.color.xyz2rgb(xyz, *, channel_axis=-1)[ソース]#
XYZ から RGB 色空間への変換。
- パラメータ:
- xyz(…, C=3, …) array_like
XYZ形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGB 形式の画像。入力と同じ次元。
- 例外:
- ValueError
xyz
が少なくとも2次元で、形状が(…, C=3, …)でない場合。
注釈
CIE XYZ色空間は、CIE RGB色空間から派生しています。ただし、この関数はsRGBに変換することに注意してください。
参考文献
例
>>> from skimage import data >>> from skimage.color import rgb2xyz, xyz2rgb >>> img = data.astronaut() >>> img_xyz = rgb2xyz(img) >>> img_rgb = xyz2rgb(img_xyz)
- skimage.color.xyz_tristimulus_values(*, illuminant, observer, dtype=<class 'float'>)[ソース]#
CIE XYZ 三刺激値を取得します。
照明とオブザーバーを指定すると、この関数は、\(Y = 1\)となるようにスケーリングされたCIE XYZ三刺激値を返します[2]。
- パラメータ:
- illuminant{“A”, “B”, “C”, “D50”, “D55”, “D65”, “D75”, “E”}
光源の名前(関数は大文字と小文字を区別しません)。
- observer{“2”, “10”, “R”}
次のいずれか:2度のオブザーバー、10度のオブザーバー、またはR関数
grDevices::convertColor
の「R」オブザーバー[3]。- dtype: dtype, optional
出力データ型。
- 戻り値:
- valuesarray
指定された照明のCIE XYZ三刺激値を含む3つの要素\(X, Y, Z\)を持つ配列。
- 例外:
- ValueError
光源または観察角度がサポートされていないか不明な場合。
注釈
CIE XYZ三刺激値は、式を用いて\(x, y\)[1]から計算されます。
\[X = x / y\]\[Y = 1\]\[Z = (1 - x - y) / y\]唯一の例外は、後方互換性の理由から、開口角度が2°のイルミナント「D65」です。
参考文献
例
10度の視野角の「D65」照明のCIE XYZ三刺激値を取得します
>>> xyz_tristimulus_values(illuminant="D65", observer="10") array([0.94809668, 1. , 1.07305136])
- skimage.color.ycbcr2rgb(ycbcr, *, channel_axis=-1)[ソース]#
YCbCr から RGB 色空間への変換。
- パラメータ:
- ycbcr(…, C=3, …) array_like
YCbCr形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGB 形式の画像。入力と同じ次元。
- 例外:
- ValueError
ycbcr
が少なくとも2次元で、形状が(…, C=3, …)でない場合。
注釈
Yは16〜235の間です。これは、ビデオコーデックで一般的に使用されるカラースペースです。時々、誤って「YUV」と呼ばれます。
参考文献
- skimage.color.ydbdr2rgb(ydbdr, *, channel_axis=-1)[ソース]#
YDbDr から RGB 色空間への変換。
- パラメータ:
- ydbdr(…, C=3, …) array_like
YDbDr形式の画像。デフォルトでは、最後の次元がチャネルを示します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGB 形式の画像。入力と同じ次元。
- 例外:
- ValueError
ydbdr
が少なくとも2次元で、形状が(…, C=3, …)でない場合。
注釈
これは、ビデオコーデックで一般的に使用される色空間であり、JPEG2000では可逆カラートランスフォームとも呼ばれます。
参考文献
- skimage.color.yiq2rgb(yiq, *, channel_axis=-1)[ソース]#
YIQ から RGB 色空間への変換。
- パラメータ:
- yiq(…, C=3, …) array_like
YIQ形式の画像。デフォルトでは、最後の次元がチャンネルを表します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGB 形式の画像。入力と同じ次元。
- 例外:
- ValueError
yiq
が少なくとも 2 次元で形状 (…, C=3, …) でない場合。
- skimage.color.ypbpr2rgb(ypbpr, *, channel_axis=-1)[ソース]#
YPbPr から RGB 色空間への変換。
- パラメータ:
- ypbpr(…, C=3, …) array_like
YPbPr形式の画像。デフォルトでは、最後の次元がチャンネルを表します。
- channel_axisint, optional
このパラメータは、配列のどの軸がチャネルに対応するかを示します。
バージョン 0.19 で追加:
channel_axis
は 0.19 で追加されました。
- 戻り値:
- out(…, C=3, …) ndarray
RGB 形式の画像。入力と同じ次元。
- 例外:
- ValueError
ypbpr
が少なくとも 2 次元で形状 (…, C=3, …) でない場合。
参考文献