我的另一个代码保存了一张图片。该图像是普通的JPG文件。我用imsave保存了它。
现在,当我在另一个代码中阅读它时,它似乎是3d:S
图片为here。
和一个简单的代码来读取它:
import mahotas
img = mahotas.imread('d:/normal.jpg')
print img.shape, img.dtype
答案 0 :(得分:2)
尝试将jpg视为灰度,如下所示:
mahotas.imread('d:/normal.jpg', as_grey = True)
答案 1 :(得分:2)
(mahotas的作者)。
Junuxx的建议是正确的:
mahotas.imread('file.jpg', as_grey=True)
这会读取RGB文件并通过组件的加权平均值将其转换为灰度(它们的加权平均值不同,但使用的是尝试在感知上更准确的典型系数)。
替代方案(我更喜欢)是:
im = mahotas.imread('file.jpg')
im = im[:,:,0]
我假设所有通道都具有相同的值,只使用第一个通道。