skimage.color
#
污渍到RGB颜色空间的转换。 |
|
将图像数组转换为新的色彩空间。 |
|
Lab 颜色空间中两点之间的欧几里得距离 |
|
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 颜色空间转换。 |
|
使用 alpha 混合进行 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颜色空间的转换。
- 参数:
- 污渍(…, C=3, …) 类数组
染色颜色空间中的图像。默认情况下,最终维度表示通道。
- conv_matrix: ndarray
如G. Landini所述的污渍分离矩阵 [1]。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
RGB 格式的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 stains 的维度至少为 2 维且形状为 (…, C=3, …)。
注释
color
模块中可用的污渍组合矩阵及其相应的颜色空间:rgb_from_hed
: 苏木精 + 伊红 + DABrgb_from_hdx
: 苏木精 + DABrgb_from_fgx
: Feulgen + 亮绿rgb_from_bex
: Giemsa 染色 : 甲基蓝 + 伊红rgb_from_rbd
: FastRed + FastBlue + DABrgb_from_gdx
: 甲基绿 + DABrgb_from_hax
: 苏木精 + AECrgb_from_bro
: 蓝色矩阵苯胺蓝 + 红色矩阵偶氮胭脂红 + 橙色矩阵橙Grgb_from_bpx
: 甲基蓝 + 品红rgb_from_ahx
: 阿利新蓝 + 苏木精rgb_from_hpx
: 苏木精 + 过碘酸雪夫
参考文献
[1][2]A. C. Ruifrok and D. A. Johnston, “Quantification of histochemical staining by color deconvolution,” Anal. Quant. Cytol. Histol., vol. 23, no. 4, pp. 291–299, Aug. 2001.
示例
>>> 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, …) 类数组
要转换的图像。默认情况下,最终维度表示通道。
- fromspacestr
要转换的颜色空间。可以用小写字母指定。
- tospacestr
要转换的颜色空间。可以用小写字母指定。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
转换后的图像。与输入图像尺寸相同。
- Raises:
- 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 颜色空间中两点之间的欧几里得距离
- 参数:
- 实验1array_like
参考颜色 (Lab 颜色空间)
- lab2array_like
比较颜色 (Lab 颜色空间)
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- dEarray_like
颜色 lab1 和 lab2 之间的距离
参考文献
[2]A. R. Robertson, “The CIE 1976 color-difference formulae,” 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 的一次重大修订。其感知校准主要基于对光滑表面上汽车漆的经验。
- 参数:
- 实验1array_like
参考颜色 (Lab 颜色空间)
- lab2array_like
比较颜色 (Lab 颜色空间)
- kLfloat (范围), 可选
亮度比例因子,1 表示“可接受接近”;2 表示“不可察觉”,参见 deltaE_cmc
- kCfloat (范围), 可选
色度比例因子,通常为 1
- kHfloat (范围), 可选
色调比例因子,通常为 1
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- deltaEarray_like
lab1 和 lab2 之间的距离
注释
CIEDE 2000 假设了亮度、色度和色调的参数加权因子(分别为 kL、kC、kH)。这些默认值为 1。
参考文献
[3]M. Melgosa, J. Quesada, and E. Hita, “Uniformity of some recent color metrics tested with an accurate color-difference tolerance dataset,” 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)[源代码][源代码]#
根据CIEDE 94标准的颜色差异
通过使用特定于应用程序的尺度因子(kH、kC、kL、k1 和 k2)来适应感知上的非均匀性。
- 参数:
- 实验1array_like
参考颜色 (Lab 颜色空间)
- lab2array_like
比较颜色 (Lab 颜色空间)
- kHfloat, 可选
色调比例
- kCfloat, 可选
色度标度
- kLfloat, 可选
亮度等级
- k1float, 可选
第一个比例参数
- k2float, 可选
第二个比例参数
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 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)[源代码][源代码]#
CMC l:c 标准下的色差。
这种色差是由英国染色师和色彩师协会(Society of Dyers and Colourists)的色彩测量委员会(CMC)开发的。它旨在用于纺织行业。
比例因子 kL, kC 设置了相对于色调差异,亮度差异和色度差异的权重。通常的值是
kL=2
,kC=1
用于“可接受性”,kL=1
,kC=1
用于“不可感知性”。对于给定的比例因子,dE > 1
的颜色是“不同的”。- 参数:
- 实验1array_like
参考颜色 (Lab 颜色空间)
- lab2array_like
比较颜色 (Lab 颜色空间)
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 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)[源代码][源代码]#
创建一个灰度图像的RGB表示。
- 参数:
- 图像array_like
输入图像。
- channel_axisint, 可选
此参数指示输出数组的哪个轴将对应于通道。
- 返回:
- rgb(…, C=3, …) ndarray
RGB 图像。输入图像增加了一个长度为 3 的新维度。
注释
如果输入是一个形状为
(M,)
的一维图像,输出将是形状为(M, C=3)
的图像。Tinting gray-scale imagesCircular and Elliptical Hough TransformsRegion Boundary based Region adjacency graphs (RAGs)
- skimage.color.gray2rgba(image, alpha=None, *, channel_axis=-1)[源代码][源代码]#
创建一个灰度图像的RGBA表示。
- 参数:
- 图像array_like
输入图像。
- alpha类似数组, 可选
输出图像的Alpha通道。它可以是一个标量或一个可以广播到
image
的数组。如果未指定,则设置为与image
dtype 对应的最大限制。- channel_axisint, 可选
此参数指示输出数组的哪个轴将对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- rgbandarray
RGBA 图像。输入图像形状中添加了一个长度为 4 的新维度。
- skimage.color.hed2rgb(hed, *, channel_axis=-1)[源代码][源代码]#
苏木精-伊红-DAB (HED) 到 RGB 颜色空间的转换。
- 参数:
- hed(…, C=3, …) 类数组
HED 色彩空间中的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
RGB 图像。与输入相同尺寸。
- Raises:
- ValueError
如果 hed 的维度至少为 2-D 且形状为 (…, 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, hed2rgb >>> ihc = data.immunohistochemistry() >>> ihc_hed = rgb2hed(ihc) >>> ihc_rgb = hed2rgb(ihc_hed)
Separate colors in immunohistochemical staining
- skimage.color.hsv2rgb(hsv, *, channel_axis=-1)[源代码][源代码]#
HSV 到 RGB 颜色空间转换。
- 参数:
- hsv(…, C=3, …) 类数组
HSV 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
RGB 格式的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 hsv 的维度至少为 2 维且形状为 (…, C=3, …)。
注释
RGB 和 HSV 颜色空间之间的转换会导致一些精度损失,这是由于整数运算和舍入 [1]。
参考文献
示例
>>> from skimage import data >>> img = data.astronaut() >>> img_hsv = rgb2hsv(img) >>> img_rgb = hsv2rgb(img_hsv)
Tinting gray-scale imagesFlood Fill
- skimage.color.lab2lch(lab, *, channel_axis=-1)[源代码][源代码]#
将图像从 CIE-LAB 转换为 CIE-LCh 色彩空间。
CIE-LCh 是 CIE-LAB(笛卡尔)色彩空间的圆柱表示法。
- 参数:
- 实验室(…, C=3, …) 类数组
CIE-LAB 颜色空间中的输入图像。除非设置了 channel_axis,否则最后一个维度表示 CIE-LAB 通道。L* 值范围从 0 到 100;a* 和 b* 值范围从 -128 到 127。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
CIE-LCh 色彩空间中的图像,形状与输入相同。
- Raises:
- ValueError
如果 lab 没有至少 3 个通道(即 L*、a* 和 b*)。
参见
注释
h 通道(即色调)以范围
(0, 2*pi)
内的角度表示。参考文献
[3]https://en.wikipedia.org/wiki/HCL_颜色空间
示例
>>> 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 色彩空间。
- 参数:
- 实验室(…, C=3, …) 类数组
CIE-LAB 颜色空间中的输入图像。除非设置了 channel_axis,否则最后一个维度表示 CIE-LAB 通道。L* 值范围从 0 到 100;a* 和 b* 值范围从 -128 到 127。
- 光源{“A”, “B”, “C”, “D50”, “D55”, “D65”, “D75”, “E”},可选
光源的名称(该函数不区分大小写)。
- 观察者{“2”, “10”, “R”},可选
观察者的孔径角。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
sRGB 色彩空间中的图像,形状与输入相同。
- Raises:
- 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 色彩空间。
- 参数:
- 实验室(…, C=3, …) 类数组
CIE-LAB 颜色空间中的输入图像。除非设置了 channel_axis,否则最后一个维度表示 CIE-LAB 通道。L* 值范围从 0 到 100;a* 和 b* 值范围从 -128 到 127。
- 光源{“A”, “B”, “C”, “D50”, “D55”, “D65”, “D75”, “E”},可选
光源的名称(该函数不区分大小写)。
- 观察者{“2”, “10”, “R”},可选
观察者的孔径角。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
与输入形状相同的XYZ色彩空间中的图像。
- Raises:
- ValueError
如果 lab 的维度至少为 2 维且形状为 (…, C=3, …)。
- ValueError
如果光源或观察角度不受支持或未知。
- 用户警告
如果任何像素无效(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图像,其中颜色编码的标签绘制在图像上。
- 参数:
- 标签ndarray
与 image 形状相同的标签整数数组。
- 图像ndarray,可选
用作标签底图的图像。它应与 labels 具有相同的形状,可选地具有额外的 RGB(通道)轴。如果 image 是 RGB 图像,则在着色之前会将其转换为灰度图。
- 颜色列表,可选
颜色列表。如果标签的数量超过颜色的数量,那么颜色将被循环使用。
- alphafloat [0, 1], 可选
彩色标签的不透明度。如果图像为 None,则忽略此项。
- bg_labelint, 可选
被视为背景的标签。如果指定了 bg_label,bg_color 为 None,且 kind 为 overlay,则不会用任何颜色绘制背景。
- bg_colorstr 或 array,可选
背景颜色。必须是
skimage.color.color_dict
中的名称或介于 [0, 1] 之间的 RGB 浮点值。- image_alphafloat [0, 1], 可选
图像的不透明度。
- 种类字符串,可选值为 {‘overlay’, ‘avg’}
所需的颜色图像类型。’overlay’ 循环使用定义的颜色,并在原始图像上覆盖彩色标签。’avg’ 将每个标记的段替换为其平均颜色,以获得染色类或粉彩画的效果。
- 饱和度float [0, 1], 可选
控制应用于原始图像的饱和度的参数,范围从完全饱和(原始RGB,saturation=1)到完全不饱和(灰度,saturation=0)。仅在 kind=’overlay’ 时适用。
- channel_axisint, 可选
此参数指示输出数组的哪个轴将对应于通道。如果提供了 image,这也必须匹配 image 中对应于通道的轴。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 结果 : 浮点型的 ndarray,形状与 image 相同float 类型的 ndarray,形状与
在特定alpha值下,将 label 中每个不同值的循环颜色映射 (colors) 与图像混合的结果。
Removing objectsLocal Binary Pattern for texture classificationRegion adjacency graph (RAG) ThresholdingNormalized CutFind Regular Segments Using Compact WatershedExpand segmentation labels without overlapLabel image regionsFind the intersection of two segmentationsRegion adjacency graph (RAG) MergingHierarchical Merging of Region Boundary RAGsExtremaUse pixel graphs to find an object's geodesic centerComparing edge-based and region-based segmentationSegment human cells (in mitosis)Restore spotted cornea image with inpainting
- skimage.color.lch2lab(lch, *, channel_axis=-1)[源代码][源代码]#
将图像从 CIE-LCh 转换为 CIE-LAB 色彩空间。
CIE-LCh 是 CIE-LAB(笛卡尔)色彩空间的圆柱表示法。
- 参数:
- lch(…, C=3, …) 类数组
CIE-LCh 色彩空间中的输入图像。除非设置了 channel_axis,否则最后一个维度表示 CIE-LAB 通道。L* 值范围从 0 到 100;C 值范围从 0 到 100;h 值范围从 0 到
2*pi
。- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
CIE-LAB 格式的图像,形状与输入相同。
- Raises:
- ValueError
如果 lch 没有至少3个通道(即,L*、C 和 h)。
参见
注释
h 通道(即色调)以范围
(0, 2*pi)
内的角度表示。参考文献
[2]https://en.wikipedia.org/wiki/HCL_颜色空间
示例
>>> 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, …) 类数组
CIE Luv 格式中的图像。默认情况下,最后一个维度表示通道。
- 返回:
- 出(…, C=3, …) ndarray
RGB 格式的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 luv 的维度至少为 2 维且形状为 (…, C=3, …)。
注释
此函数使用 luv2xyz 和 xyz2rgb。
- skimage.color.luv2xyz(luv, illuminant='D65', observer='2', *, channel_axis=-1)[源代码][源代码]#
CIE-Luv 到 XYZ 色彩空间转换。
- 参数:
- luv(…, C=3, …) 类数组
CIE-Luv 格式中的图像。默认情况下,最后一个维度表示通道。
- 光源{“A”, “B”, “C”, “D50”, “D55”, “D65”, “D75”, “E”},可选
光源的名称(该函数不区分大小写)。
- 观察者{“2”, “10”, “R”},可选
观察者的孔径角。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
XYZ 格式的图像。与输入相同的尺寸。
- Raises:
- 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, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- 返回:
- 出ndarray
亮度图像 - 一个与输入数组大小相同但去除了通道维度的数组。
- Raises:
- ValueError
如果 rgb 的维度至少不是 2 维且形状不是 (…, C=3, …)。
注释
在此转换中使用的权重是为当代CRT荧光粉校准的:
Y = 0.2125 R + 0.7154 G + 0.0721 B
如果存在 alpha 通道,它将被忽略。
参考文献
示例
>>> from skimage.color import rgb2gray >>> from skimage import data >>> img = data.astronaut() >>> img_gray = rgb2gray(img)
Block views on images/arraysRGB to grayscaleAdapting gray-scale filters to RGB imagesActive Contour ModelRidge operatorsCircular and Elliptical Hough TransformsRescale, resize, and downscaleFundamental matrix estimationRobust matching using RANSACRegistration using optical flowUsing Polar and Log-Polar Transformations for RegistrationRemoving small objects in grayscale images with a top hat filterImage DeconvolutionUsing window functions with imagesImage DeconvolutionEstimate strength of blurPhase UnwrappingFull tutorial on calibrating Denoisers Using J-InvarianceCENSURE feature detectorRemoving objectsBlob DetectionORB feature detector and binary descriptorGabors / Primary Visual Cortex "Simple Cells" from an ImageBRIEF binary descriptorSIFT feature detector and descriptor extractorRegion Boundary based Region adjacency graphs (RAGs)Apply maskSLIC vs SLICComparison of segmentation and superpixel algorithmsHierarchical Merging of Region Boundary RAGsExtremaUse pixel graphs to find an object's geodesic center
- skimage.color.rgb2hed(rgb, *, channel_axis=-1)[源代码][源代码]#
RGB 到苏木精-伊红-DAB (HED) 颜色空间转换。
- 参数:
- rgb(…, C=3, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
HED 格式的图像。与输入具有相同的尺寸。
- Raises:
- 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)
Separate colors in immunohistochemical staining
- skimage.color.rgb2hsv(rgb, *, channel_axis=-1)[源代码][源代码]#
RGB 到 HSV 颜色空间转换。
- 参数:
- rgb(…, C=3, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
HSV 格式的图像。与输入具有相同的尺寸。
- Raises:
- 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, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- 光源{“A”, “B”, “C”, “D50”, “D55”, “D65”, “D75”, “E”},可选
光源的名称(该函数不区分大小写)。
- 观察者{“2”, “10”, “R”},可选
观察者的孔径角。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
Lab 格式的图像。与输入相同的尺寸。
- Raises:
- 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()
。参考文献
[1]
- skimage.color.rgb2luv(rgb, *, channel_axis=-1)[源代码][源代码]#
RGB 到 CIE-Luv 颜色空间转换。
- 参数:
- rgb(…, C=3, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
CIE Luv 格式中的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 rgb 的维度至少不是 2 维且形状不是 (…, C=3, …)。
注释
此函数使用 rgb2xyz 和 xyz2luv。
参考文献
- skimage.color.rgb2rgbcie(rgb, *, channel_axis=-1)[源代码][源代码]#
RGB 到 RGB CIE 色彩空间转换。
- 参数:
- rgb(…, C=3, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
以RGB CIE格式显示的图像。与输入图像具有相同的尺寸。
- Raises:
- 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, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
XYZ 格式的图像。与输入相同的尺寸。
- Raises:
- 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, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
YCbCr 格式的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 rgb 的维度至少不是 2 维且形状不是 (…, C=3, …)。
注释
Y 在 16 到 235 之间。这是视频编解码器常用的色彩空间;它有时被错误地称为“YUV”。
参考文献
- skimage.color.rgb2ydbdr(rgb, *, channel_axis=-1)[源代码][源代码]#
RGB 到 YDbDr 色彩空间转换。
- 参数:
- rgb(…, C=3, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
YDbDr 格式的图像。与输入相同的尺寸。
- Raises:
- ValueError
如果 rgb 的维度至少不是 2 维且形状不是 (…, C=3, …)。
注释
这是视频编解码器常用的色彩空间。它也是JPEG2000中的可逆色彩变换。
参考文献
- skimage.color.rgb2yiq(rgb, *, channel_axis=-1)[源代码][源代码]#
RGB 到 YIQ 色彩空间转换。
- 参数:
- rgb(…, C=3, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
YIQ 格式的图像。与输入相同的尺寸。
- Raises:
- ValueError
如果 rgb 的维度至少不是 2 维且形状不是 (…, C=3, …)。
- skimage.color.rgb2ypbpr(rgb, *, channel_axis=-1)[源代码][源代码]#
RGB 到 YPbPr 色彩空间转换。
- 参数:
- rgb(…, C=3, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
YPbPr 格式的图像。与输入相同的尺寸。
- Raises:
- ValueError
如果 rgb 的维度至少不是 2 维且形状不是 (…, C=3, …)。
参考文献
- skimage.color.rgb2yuv(rgb, *, channel_axis=-1)[源代码][源代码]#
RGB 到 YUV 颜色空间转换。
- 参数:
- rgb(…, C=3, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
YUV 格式的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 rgb 的维度至少不是 2 维且形状不是 (…, C=3, …)。
注释
Y 在 0 和 1 之间。对于视频编解码器常用的颜色空间,使用 YCbCr 而不是 YUV,其中 Y 的范围是从 16 到 235。
参考文献
- skimage.color.rgba2rgb(rgba, background=(1, 1, 1), *, channel_axis=-1)[源代码][源代码]#
使用 alpha 混合进行 RGBA 到 RGB 的转换 [1]。
- 参数:
- rgba(…, C=4, …) array_like
RGBA 格式的图像。默认情况下,最后一个维度表示通道。
- 背景array_like
要与图像混合的背景颜色(3个介于0到1之间的浮点数 - 背景的RGB值)。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
RGB 格式的图像。与输入具有相同的尺寸。
- Raises:
- 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, …) 类数组
RGB CIE 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
RGB 格式的图像。与输入具有相同的尺寸。
- Raises:
- 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, …) 类数组
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- conv_matrix: ndarray
如G. Landini所述的污渍分离矩阵 [1]。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
在染色颜色空间中的图像。与输入图像具有相同的尺寸。
- Raises:
- ValueError
如果 rgb 的维度至少不是 2 维且形状不是 (…, C=3, …)。
注释
color
模块中可用的污渍分离矩阵及其相应的颜色空间:hed_from_rgb
: 苏木精 + 伊红 + DABhdx_from_rgb
: 苏木精 + DABfgx_from_rgb
: Feulgen + 亮绿bex_from_rgb
: Giemsa 染色 : 甲基蓝 + 伊红rbd_from_rgb
: 快速红 + 快速蓝 + DABgdx_from_rgb
: 甲基绿 + DABhax_from_rgb
: 苏木精 + AECbro_from_rgb
: 蓝色矩阵苯胺蓝 + 红色矩阵偶氮胭脂红 + 橙色矩阵橙黄Gbpx_from_rgb
: 甲基蓝 + 品红ahx_from_rgb
: 阿利新蓝 + 苏木精hpx_from_rgb
: 苏木精 + PAS
这个实现从DIPlib [2] 借用了一些想法,例如在计算Beer-Lambert定律时使用一个小值来避免对数伪影的补偿。
参考文献
[1][3]A. C. Ruifrok and D. A. Johnston, “Quantification of histochemical staining by color deconvolution,” Anal. Quant. Cytol. Histol., vol. 23, no. 4, pp. 291–299, Aug. 2001.
示例
>>> 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, …) 类数组
XYZ 格式的图像。默认情况下,最后一个维度表示通道。
- 光源{“A”, “B”, “C”, “D50”, “D55”, “D65”, “D75”, “E”},可选
光源的名称(该函数不区分大小写)。
- 观察者{“2”, “10”, “R”},可选
其中之一:2度观察者、10度观察者,或如R函数grDevices::convertColor中的’R’观察者。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
CIE-LAB 格式的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 xyz 至少不是 2 维且形状为 (…, C=3, …)。
- ValueError
如果光源或观察角度不受支持或未知。
注释
默认情况下,观察者=”2”,光源=”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, …) 类数组
XYZ 格式的图像。默认情况下,最后一个维度表示通道。
- 光源{“A”, “B”, “C”, “D50”, “D55”, “D65”, “D75”, “E”},可选
光源的名称(该函数不区分大小写)。
- 观察者{“2”, “10”, “R”},可选
观察者的孔径角。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
CIE-Luv 格式中的图像。与输入具有相同的尺寸。
- Raises:
- 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, …) 类数组
XYZ 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
RGB 格式的图像。与输入具有相同的尺寸。
- Raises:
- 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 三刺激值。
给定一个光源和观察者,此函数返回按比例缩放的 CIE XYZ 三刺激值 [2],使得 \(Y = 1\)。
- 参数:
- 光源{“A”, “B”, “C”, “D50”, “D55”, “D65”, “D75”, “E”}
光源的名称(该函数不区分大小写)。
- 观察者{“2”, “10”, “R”}
其中之一:2度观察者、10度观察者,或如 R 函数
grDevices::convertColor
[3] 中的 ‘R’ 观察者。- dtype: dtype, 可选
输出数据类型。
- 返回:
- 值数组
包含给定光源的 CIE XYZ 三刺激值的 3 个元素数组 \(X, Y, Z\)。
- Raises:
- ValueError
如果光源或观察角度不受支持或未知。
注释
CIE XYZ 三刺激值是通过 \(x, y\) [1] 计算得出的,使用以下公式
\[X = x / y\]\[Y = 1\]\[Z = (1 - x - y) / y\]唯一的例外是光源“D65”,其孔径角为2°,这是出于向后兼容的原因。
参考文献
[2]https://en.wikipedia.org/wiki/CIE_1931_颜色空间#X,_Y_和_Z的含义
示例
获取视场为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, …) 类数组
YCbCr 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
RGB 格式的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 ycbcr 不是至少2维且形状为 (…, C=3, …)。
注释
Y 在 16 到 235 之间。这是视频编解码器常用的色彩空间;它有时被错误地称为“YUV”。
参考文献
- skimage.color.ydbdr2rgb(ydbdr, *, channel_axis=-1)[源代码][源代码]#
YDbDr 到 RGB 色彩空间的转换。
- 参数:
- ydbdr(…, C=3, …) 类数组
YDbDr 格式中的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
RGB 格式的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 ydbdr 的维度至少为 2 维且形状为 (…, C=3, …)。
注释
这是视频编解码器常用的色彩空间,在JPEG2000中也称为可逆色彩变换。
参考文献
- skimage.color.yiq2rgb(yiq, *, channel_axis=-1)[源代码][源代码]#
YIQ 到 RGB 色彩空间转换。
- 参数:
- yiq(…, C=3, …) 类数组
YIQ 格式的图像。默认情况下,最终维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
RGB 格式的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 yiq 的维度至少不是 2 维且形状为 (…, C=3, …)。
- skimage.color.ypbpr2rgb(ypbpr, *, channel_axis=-1)[源代码][源代码]#
YPbPr 到 RGB 色彩空间转换。
- 参数:
- ypbpr(…, C=3, …) 类数组
YPbPr 格式的图像。默认情况下,最终维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
Added in version 0.19:
channel_axis
在 0.19 版本中被添加。
- 返回:
- 出(…, C=3, …) ndarray
RGB 格式的图像。与输入具有相同的尺寸。
- Raises:
- ValueError
如果 ypbpr 的维度至少不是 2-D 且形状为 (…, C=3, …)。
参考文献