2

我有一张由我的另一个代码保存的图像。图像是一个普通的 JPG 文件。我用imsave保存了它。

现在当我在另一个代码中阅读它时,它似乎是 3d :S

图片在这里

和一个简单的代码来阅读它是这样的:

import mahotas

img = mahotas.imread('d:/normal.jpg')
print img.shape, img.dtype
4

2 回答 2

2

尝试像这样将 jpg 读取为灰度:

mahotas.imread('d:/normal.jpg', as_grey = True)
于 2012-07-01T00:25:29.843 回答
2

(这里是 mahotas 的作者)。

Junuxx 的建议是正确的:

mahotas.imread('file.jpg', as_grey=True)

这会读取 RGB 文件并通过分量的加权平均值将其转换为灰度(它们的权重不同,但使用试图在感知上更准确的典型系数)。

另一种选择(我更喜欢)是:

im = mahotas.imread('file.jpg')
im = im[:,:,0]

我假设所有通道都具有相同的值,并且只使用第一个。

于 2012-07-02T10:42:26.340 回答