我需要编写一个函数,在其中将表示为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
您可以只使用skimage
函数,然后乘以255。然后,将数组转换为整数:
array *= 255
array.astype(np.uint8)