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 混合 [1] 进行 RGBA 到 RGB 转换。 |
|
将 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)[source]#
将染色剂转换为 RGB 颜色空间。
- 参数:
- stains(…, C=3, …) array_like
染色剂颜色空间中的图像。默认情况下,最后一位表示通道。
- conv_matrix: ndarray
由 G. Landini [1] 描述的染色剂分离矩阵。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
RGB 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 stains 不至少是 2-D 并且形状为 (…, C=3, …)。
注释
在
color
模块中可用的染色剂组合矩阵及其各自的颜色空间。rgb_from_hed
:苏木精 + 伊红 + DABrgb_from_hdx
:苏木精 + DABrgb_from_fgx
:Feulgen + 淡绿色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. Ruifrok 和 D. A. Johnston,“通过颜色反卷积对组织化学染色进行量化”,Anal. Quant. Cytol. Histol.,第 23 卷,第 4 期,第 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)[source]#
将图像数组转换为新的颜色空间。
- 有效的颜色空间为
‘RGB’, ‘HSV’, ‘RGB CIE’, ‘XYZ’, ‘YUV’, ‘YIQ’, ‘YPbPr’, ‘YCbCr’, ‘YDbDr’
- 参数:
- arr(…, C=3, …) array_like
要转换的图像。默认情况下,最后一位表示通道。
- fromspacestr
要从其转换的颜色空间。可以以小写形式指定。
- tospacestr
要转换到的颜色空间。可以以小写形式指定。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
Lab 颜色空间中两点之间的欧氏距离。
- 参数:
- lab1array_like
参考颜色 (Lab 颜色空间)
- lab2array_like
比较颜色 (Lab 颜色空间)
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- dEarray_like
颜色 lab1 和 lab2 之间的距离
参考
[2]A. R. Robertson,“CIE 1976 色差公式”,Color Res. Appl. 2, 7-11 (1977)。
- skimage.color.deltaE_ciede2000(lab1, lab2, kL=1, kC=1, kH=1, *, channel_axis=-1)[source]#
根据 CIEDE 2000 标准的色差。
CIEDE 2000 是 CIDE94 的重大修订版。感知校准主要基于对光滑表面汽车涂料的经验。
- 参数:
- lab1array_like
参考颜色 (Lab 颜色空间)
- lab2array_like
比较颜色 (Lab 颜色空间)
- kLfloat (范围), 可选
亮度比例因子,对于“可接受的接近”为 1;对于“无法察觉”为 2,请参阅 deltaE_cmc
- kCfloat (范围), 可选
色度比例因子,通常为 1
- kHfloat (范围), 可选
色调比例因子,通常为 1
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- deltaEarray_like
lab1 和 lab2 之间的距离
注释
CIEDE 2000 假设明度、色度和色调的参数加权因子(分别为 kL、kC、kH)。这些默认为 1。
参考
[3]M. Melgosa、J. Quesada 和 E. Hita,“使用精确的颜色差异容差数据集测试一些近期颜色指标的均匀性”,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
第二个比例参数
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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 和 B. Rigg,“对 JPC79 颜色差异公式的修改”,J. Soc. Dyers Colour. 100, 128-132 (1984)。
- skimage.color.gray2rgb(image, *, channel_axis=-1)[source]#
创建灰度图像的 RGB 表示。
- 参数:
- imagearray_like
输入图像。
- channel_axisint, 可选
此参数指示输出数组的哪个轴将对应于通道。
- 返回值:
- rgb(…, C=3, …) ndarray
RGB 图像。向输入图像添加一个长度为 3 的新维度。
注释
如果输入是形状为
(M,)
的一维图像,则输出将为形状(M, C=3)
。
- skimage.color.gray2rgba(image, alpha=None, *, channel_axis=-1)[source]#
创建灰度图像的 RGBA 表示。
- 参数:
- imagearray_like
输入图像。
- alphaarray_like, optional
输出图像的 alpha 通道。它可以是标量或可以广播到
image
的数组。如果未指定,则将其设置为与image
dtype 相对应的最大限制。- channel_axisint, 可选
此参数指示输出数组的哪个轴将对应于通道。
在版本 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, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
RGB 中的图像。与输入具有相同的维度。
- 引发:
- ValueError
如果 hed 的维度至少不是 2 维,形状为 (…, C=3, …)。
参考
[1]A. C. Ruifrok 和 D. A. Johnston,“通过颜色反卷积量化组织化学染色。”,分析和定量细胞学和组织学 / 国际细胞学学会 [和] 美国细胞学学会,第 23 卷,第 4 期,第 291-9 页,2001 年 8 月。
示例
>>> 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, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
RGB 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 hsv 的维度至少不是 2 维,形状为 (…, C=3, …)。
注释
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, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
将 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, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
将 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, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
返回一个 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 或 array, 可选
背景颜色。必须是
skimage.color.color_dict
中的名称或 [0, 1] 之间的 RGB 浮点数。- image_alphafloat [0, 1], 可选
图像的不透明度。
- kindstring, 其中一个 {‘overlay’, ‘avg’}
所需的彩色图像类型。‘overlay’ 在定义的颜色上循环,并将彩色标签叠加在原始图像上。‘avg’ 用每个标记段的平均颜色替换每个标记段,以实现染色类或柔和绘画外观。
- saturationfloat [0, 1], 可选
控制应用于原始图像的饱和度的参数,介于完全饱和(原始 RGB,saturation=1)和完全不饱和(灰度,saturation=0)之间。仅在 kind=’overlay’ 时适用。
- channel_axisint, 可选
此参数指示输出数组的哪个轴对应于通道。如果提供了 image,则它也必须与 image 对应于通道的轴匹配。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- resultndarray of float, 与 image 形状相同
将循环颜色映射 (colors) 与图像混合的结果,每个 label 中的独特值都有一个相应的颜色,并使用特定 alpha 值。
移除对象用于纹理分类的局部二值模式区域邻接图 (RAG) 阈值化归一化切割使用紧凑型分水岭查找规则段扩展分段标签,但不重叠标记图像区域查找两个分段的交集区域邻接图 (RAG) 合并区域边界 RAG 的层次合并极值使用像素图查找对象的测地线中心比较基于边缘和基于区域的分段分割人细胞(处于有丝分裂状态)使用修复恢复斑点角膜图像
- skimage.color.lch2lab(lch, *, channel_axis=-1)[source]#
将 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, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
将 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)[source]#
将 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, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
计算 RGB 图像的亮度。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- 返回值:
- outndarray
亮度图像 - 一个与输入数组大小相同的数组,但去掉了通道维度。
- 引发:
- 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)
图像/数组上的块视图RGB 到灰度将灰度滤波器应用于 RGB 图像主动轮廓模型脊线算子圆形和椭圆形霍夫变换重新缩放、调整大小和缩小尺寸基本矩阵估计使用 RANSAC 进行鲁棒匹配使用光流进行配准使用极坐标和对数极坐标变换进行配准使用顶帽滤波器去除灰度图像中的小物体图像反卷积在图像中使用窗口函数图像反卷积估计模糊强度相位解缠使用 J-不变性校准降噪器CENSURE 特征检测器移除对象斑点检测ORB 特征检测器和二进制描述符从图像中提取 Gabor 滤波器 / 初级视觉皮层“简单细胞”
从图像中提取 Gabor 滤波器 / 初级视觉皮层“简单细胞”BRIEF 二进制描述符SIFT 特征检测器和描述符提取器基于区域边界区域邻接图 (RAG)应用 maskSLIC 与 SLIC分割和超像素算法的比较区域边界 RAG 的层次合并极值使用像素图查找对象的测地线中心
- skimage.color.rgb2hed(rgb, *, channel_axis=-1)[source]#
将 RGB 转换为苏木精-伊红-DAB (HED) 颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
HED 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 rgb 的维度小于 2 或形状不是 (…, C=3, …) 。
参考
[1]A. C. Ruifrok 和 D. A. Johnston,“通过颜色反卷积量化组织化学染色。”,分析和定量细胞学和组织学 / 国际细胞学学会 [和] 美国细胞学学会,第 23 卷,第 4 期,第 291-9 页,2001 年 8 月。
示例
>>> from skimage import data >>> from skimage.color import rgb2hed >>> ihc = data.immunohistochemistry() >>> ihc_hed = rgb2hed(ihc)
分离免疫组织化学染色中的颜色
- skimage.color.rgb2hsv(rgb, *, channel_axis=-1)[source]#
将 RGB 转换为 HSV 颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
在给定的光源和观察者下,从 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, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
将 RGB 转换为 CIE-Luv 颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
将 RGB 转换为 RGB CIE 颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
将 RGB 转换为 XYZ 颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
将 RGB 转换为 YCbCr 颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
将 RGB 转换为 YDbDr 颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
YDbDr 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 rgb 的维度小于 2 或形状不是 (…, C=3, …) 。
注释
这是视频编解码器通常使用的颜色空间。它也是 JPEG2000 中的可逆颜色变换。
参考
- skimage.color.rgb2yiq(rgb, *, channel_axis=-1)[source]#
将 RGB 转换为 YIQ 颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
YIQ 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 rgb 的维度小于 2 或形状不是 (…, C=3, …) 。
- skimage.color.rgb2ypbpr(rgb, *, channel_axis=-1)[source]#
将 RGB 转换为 YPbPr 颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
YPbPr 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 rgb 的维度小于 2 或形状不是 (…, C=3, …) 。
参考
- skimage.color.rgb2yuv(rgb, *, channel_axis=-1)[source]#
将 RGB 转换为 YUV 颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
YUV 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 rgb 的维度小于 2 或形状不是 (…, C=3, …) 。
注释
Y 在 0 到 1 之间。对于视频编解码器通常使用的颜色空间,请使用 YCbCr 而不是 YUV,其中 Y 的范围从 16 到 235。
参考
- skimage.color.rgba2rgb(rgba, background=(1, 1, 1), *, channel_axis=-1)[source]#
使用 alpha 混合进行 RGBA 到 RGB 转换 [1].
- 参数:
- rgba(…, C=4, …) array_like
RGBA 格式的图像。默认情况下,最后一维表示通道。
- backgroundarray_like
要与图像混合的背景颜色(3 个浮点数介于 0 到 1 之间 - 背景的 RGB 值)。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
RGB 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 rgba 的维度至少不是 2D,形状为 (…, 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)[source]#
将 RGB CIE 转换为 RGB 颜色空间。
- 参数:
- rgbcie(…, C=3, …) array_like
RGB CIE 格式的图像。默认情况下,最后一维表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
RGB 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 rgbcie 的维度至少不是 2D,形状为 (…, 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)[source]#
将 RGB 转换为染色剂颜色空间。
- 参数:
- rgb(…, C=3, …) array_like
RGB 格式的图像。默认情况下,最后一个维度表示通道。
- conv_matrix: ndarray
由 G. Landini 描述的染色分离矩阵 [1]。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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. Ruifrok 和 D. A. Johnston,“通过颜色反卷积对组织化学染色进行量化”,Anal. Quant. Cytol. Histol.,第 23 卷,第 4 期,第 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)[source]#
将 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 观察者,如 R 函数 grDevices::convertColor 中所示。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
以 CIE-LAB 格式表示的图像。与输入维度相同。
- 引发:
- 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)[source]#
将 XYZ 转换为 CIE-Luv 颜色空间。
- 参数:
- xyz(…, C=3, …) array_like
以 XYZ 格式表示的图像。默认情况下,最后一个维度表示通道。
- illuminant{“A”, “B”, “C”, “D50”, “D55”, “D65”, “D75”, “E”}, 可选
光源名称(函数不区分大小写)。
- observer{“2”, “10”, “R”}, 可选
观察者的孔径角。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
以 CIE-Luv 格式表示的图像。与输入维度相同。
- 引发:
- ValueError
如果 xyz 的维度至少不是 2 维,形状为 (…, C=3, …) 。
- ValueError
如果光源或观察者角度不支持或未知。
注释
默认情况下,XYZ 转换权重使用观察者=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)[source]#
将 XYZ 转换为 RGB 颜色空间。
- 参数:
- xyz(…, C=3, …) array_like
以 XYZ 格式表示的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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'>)[source]#
获取 CIE XYZ 三刺激值。
给定光源和观察者,此函数返回 CIE XYZ 三刺激值 [2],其比例因子使得 \(Y = 1\)。
- 参数:
- illuminant{“A”, “B”, “C”, “D50”, “D55”, “D65”, “D75”, “E”}
光源名称(函数不区分大小写)。
- observer{“2”, “10”, “R”}
以下之一:2 度观察者、10 度观察者或 R 观察者,如 R 函数
grDevices::convertColor
[3] 中所示。- dtype: dtype, 可选
输出数据类型。
- 返回值:
- 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)[source]#
将 YCbCr 转换为 RGB 颜色空间。
- 参数:
- ycbcr(…, C=3, …) array_like
以 YCbCr 格式表示的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 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)[source]#
将 YDbDr 转换为 RGB 颜色空间。
- 参数:
- ydbdr(…, C=3, …) array_like
以 YDbDr 格式表示的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
RGB 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 ydbdr 的维度至少不是 2 维,形状为 (…, C=3, …) 。
注释
这是视频编解码器通常使用的颜色空间,也称为 JPEG2000 中的可逆颜色变换。
参考
- skimage.color.yiq2rgb(yiq, *, channel_axis=-1)[source]#
将 YIQ 转换为 RGB 颜色空间。
- 参数:
- yiq(…, C=3, …) array_like
以 YIQ 格式表示的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
RGB 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 yiq 的维度至少不是 2 维,形状为 (…, C=3, …) 。
- skimage.color.ypbpr2rgb(ypbpr, *, channel_axis=-1)[source]#
将 YPbPr 转换为 RGB 颜色空间。
- 参数:
- ypbpr(…, C=3, …) array_like
以 YPbPr 格式表示的图像。默认情况下,最后一个维度表示通道。
- channel_axisint, 可选
此参数指示数组的哪个轴对应于通道。
在版本 0.19 中添加:
channel_axis
在 0.19 中添加。
- 返回值:
- out(…, C=3, …) ndarray
RGB 格式的图像。与输入相同维度。
- 引发:
- ValueError
如果 ypbpr 的维度至少不是 2 维,形状为 (…, C=3, …) 。
参考