Python如何使用matplotlib 库正确的显示灰度图像
Posted Xavier Jiezou
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python如何使用matplotlib 库正确的显示灰度图像相关的知识,希望对你有一定的参考价值。
项目场景
我这里有一张名为 camera.jpg
的灰度图像:
使用 matplotlib 库读取并显示:
import matplotlib.pyplot as plt
plt.imshow(plt.imread('camera.jpg'))
plt.show()
显示结果如下:
问题描述
如上图,显示的是绿色的图片,而我这里想让它显示原图的那种黑白色调,怎么实现呢?
原因分析
根据官方文档可知:
matplotlib.pyplot.imshow
有一个 cmap
参数,用该参数来控制图像显示色彩。对于 RGB 或 RGBA 图像忽略该参数,即直接显示原图。而对于单通道的灰度图像,默认色彩是 viridis
(绿色)。因此,设置 cmap
参数的值即可正确显示灰度图像,可接受的输入类型为字符串或者 Corlormap 对象。
解决方案
import matplotlib.pyplot as plt
plt.imshow(plt.imread('camera.jpg'), cmap='gray')
plt.show()
或者
import matplotlib.pyplot as plt
plt.imshow(plt.imread('camera.jpg'), plt.cm.gray)
plt.show()
以上是关于Python如何使用matplotlib 库正确的显示灰度图像的主要内容,如果未能解决你的问题,请参考以下文章