为了账号安全,请及时绑定邮箱和手机立即绑定

Python在二维数组中保存和读取灰度图像?

Python在二维数组中保存和读取灰度图像?

慕桂英546537 2023-07-18 16:49:20
我想保存没有任何通道的图像,因此尺寸仅为 2。那么,有没有办法在 matplotlib 中做到这一点?我已经尝试过使用matplotlib.pyplot.imsave('img.png', image, cmap='gray')但是当我使用它来阅读它时matplotlib.pyplot.imread('img.png')维度是 3。所以我很困惑如何。我知道也许我不能使用 imread 但我能做什么呢?
查看完整描述

1 回答

?
呼唤远方

TA贡献1856条经验 获得超11个赞

如果你安装了opencv,你可以尝试:

cv2.imread('1.png', cv2.IMREAD_GRAYSCALE)

另外,你也可以尝试PIL。

from PIL import Image
Image.fromarray(array)
skimage.io.imsave('1.png', np.around(image*255).astype(np.uint8))

要使用它,您必须预先安装 skimage。

pip3 install scikit-image

“从文档来看,matplotlib 似乎只保存 RGB 或 RGBA 格式的图像文件。您必须使用不同的包来保存灰度图像。下面建议的 OpenCV 只是一种选择。还有很多选择。尝试 PIL ”。


查看完整回答
反对 回复 2023-07-18
  • 1 回答
  • 0 关注
  • 150 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信