我想保存没有任何通道的图像,因此尺寸仅为 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 ”。
添加回答
举报
0/150
提交
取消