在Python中将RGB图像转换为灰度

Ran*_*eer 3 python image image-processing scikit-image

我正在尝试使用Python中的skimage将RGB图像转换为灰度.这是我做的:

for im_path in glob.glob(os.path.join(pos_raw, "*")):
    im = imread(im_path)
    im = color.rgb2gray(im)
    image_name = os.path.split(im_path)[1].split(".")[0] + ".pgm"
    image_path = os.path.join(pos_img_path, image_name)
    imwrite(image_path, im)
Run Code Online (Sandbox Code Playgroud)

对于一堆图像文件.我的输入图像如下所示:

彩色图像

输出图像如下所示:

黑色图像

预期的输出是这样的:

灰色图像

这可能是什么问题?

Ran*_*eer 6

弄清楚了.问题是对比的.

我打印出图像,发现这些值都接近于0.我引入了一条小线,在循环中拉伸0到255之间的对比度,使其工作.

im = rescale_intensity(im, out_range=(0, 255))
Run Code Online (Sandbox Code Playgroud)

从哪里rescale_intensity进口skimage.exposure.