python mahotas.imread将二维图像读取为三维图像
我的另一个代码保存了一个图像。图像是一个普通的JPG文件。我用imsave保存了它 现在,当我在另一个代码中阅读它时,它似乎是3d:S 这张照片很有趣 一个简单的代码是:python mahotas.imread将二维图像读取为三维图像,python,image-processing,mahotas,Python,Image Processing,Mahotas,我的另一个代码保存了一个图像。图像是一个普通的JPG文件。我用imsave保存了它 现在,当我在另一个代码中阅读它时,它似乎是3d:S 这张照片很有趣 一个简单的代码是: import mahotas img = mahotas.imread('d:/normal.jpg') print img.shape, img.dtype 尝试将jpg读成灰度,如下所示: mahotas.imread('d:/normal.jpg', as_grey = True) 尝试将jpg读成灰度,如下所示:
import mahotas
img = mahotas.imread('d:/normal.jpg')
print img.shape, img.dtype
尝试将jpg读成灰度,如下所示:
mahotas.imread('d:/normal.jpg', as_grey = True)
尝试将jpg读成灰度,如下所示:
mahotas.imread('d:/normal.jpg', as_grey = True)
(这里是《mahotas》的作者)
Junuxx的建议是正确的:
mahotas.imread('file.jpg', as_grey=True)
这将读取RGB文件,并通过分量的加权平均值将其转换为灰度(它们的权重不相等,但使用的是试图在感知上更准确的典型系数)
另一种选择(我更喜欢)是:
我假设所有的频道都有相同的值,只使用第一个频道。(这里是mahotas的作者)
Junuxx的建议是正确的:
mahotas.imread('file.jpg', as_grey=True)
这将读取RGB文件,并通过分量的加权平均值将其转换为灰度(它们的权重不相等,但使用的是试图在感知上更准确的典型系数)
另一种选择(我更喜欢)是:
我假设所有通道都有相同的值,只使用第一个值。3d是指x*y*3吗?在这种情况下,它被读取为彩色图像,您只需要将其转换为灰度。3d是指x*y*3吗?在这种情况下,它被读取为彩色图像,您只需要将其转换为灰度。谢谢。这很有效。但我能把它保存为灰度吗?@Kiarash:我认为没有灰度JPG这样的东西。如果要将图像编码为灰度,请选择其他图像格式,如GIF、PNG、TIF。谢谢。这很有效。但我能把它保存为灰度吗?@Kiarash:我认为没有灰度JPG这样的东西。如果要将图像编码为灰度,请选择其他图像格式,如GIF、PNG、TIF。