skimage rescale_intensity函数

函数名:

 rescale_intensity

语法:

 rescale_intensity(image, in_range=’image’, out_range=’dtype’)

类型:

 skimage.exposure.exposure 模块中的函数,在对图像进行拉伸或者伸缩强度水平后返回修改后的图像,

输入图像和输出图像的强度范围分别由in_range 和out_range指定,用来拉伸或缩小输入图像的强度范围。

输入参数:
  • 参数名:image
  • 类型:array
  • 说明:输入图像

  • 参数名:in_range, out_range
  • 类型:str or 2-tuple
  • 说明:输入图像和输出图像的最小和最大强度值。下面列举了这个参数的可能值。
参数值名说明
image使用图像的最小值/最大值作为强度范围
dtype使用图像数据类型的最小值/最大值作为强度范围
dtype-name使用基于所需的数据类型范围作为强度范围,必须是DTYPE_RANGE中可用的关键词
2-tuple使用range_values作为显式的最小/最大强度
输出参数:
  • 参数名:out
  • 类型:array
  • 说明: 图像阵列调整后的强度。该图像与输入图像是相同的数据类型。
例子:

 默认情况下,输入图像的最小/最大强度被拉伸到图像数据类型允许的范围内。此外,in_range默认为‘image’,out_range默认为’dtype’

>>> image = np.array([51, 102, 153], dtype=np.uint8)
>>> rescale_intensity(image)
array([  0, 127, 255], dtype=uint8)

 很容易意外地将图像类型从uint8转换为float:

>>> 1.0 * image
array([  51.,  102.,  153.])

 使用rescale_intensity重新调节到浮点类型数据的适当范围

>>> image_float = 1.0 * image
>>> rescale_intensity(image_float)
array([ 0. ,  0.5,  1. ])

 使用in_range来保持原图像比较低的对比度

>>> rescale_intensity(image_float, in_range=(0, 255))
array([ 0.2,  0.4,  0.6])

 如果in_range的最小/最大值大于/小于图像强度的最大值/最小值,则强度水平将被剪辑,即,只保留im_range范围内的强度水平。

>>> image = np.array([-10, 0, 10], dtype=np.int8)
>>> rescale_intensity(image, out_range=(0, 127))
array([  0,  63, 127], dtype=int8)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值