使用scikit在python上将图像转换为灰度

时间:2019-11-30 15:10:34

标签: python numpy grayscale

我需要编写一个函数,将表示为numpy数组的图像转换为灰度。以下是我收到的一些提示。我只允许使用skimage.color

一些相关提示:

请查看skimage.color子软件包,以获取一些有用的转换功能。 默认情况下,scikit-image转换函数将返回浮点数从0-1开始的图像。我们不想要那个。我们想要0-255之间的整数表示。 NumPy具有以下数据类型:np.uint8(用于8位无符号整数)。回顾上面的观点,np.array函数使用一个可选参数dtype来指定基础数组的类型。

这是我尝试的:

from skimage.color import rgb2gray

def to_grayscale_uint(img_array):
    original = data.img_array()
    grayscale = rgb2gray(original)
    return grayscale 

1 个答案:

答案 0 :(得分:0)

您可以只使用skimage函数,然后乘以255。然后,将数组转换为整数:

array *= 255
array.astype(np.uint8)