我正在尝试对一系列照片进行数据分析,当所有照片都从RGB“更改”为灰度时,它们就会出现,看起来很好:
这是我正在使用的代码:
import matplotlib.pyplot as plt
from skimage.color import rgb2gray
from skimage import data
img = data.astronaut()
img_gray = rgb2gray(img)
plt.imshow(img_gray)
plt.show()
我还尝试过将hsv转换为rgb,然后转换为灰度,但仍会生成类似的非灰度图像.
解决方法:
问题在于,matplotlib使用默认色图显示图像2D.将您的代码更改为
import matplotlib.pyplot as plt
from skimage.color import rgb2gray
from skimage import data
img = data.astronaut()
img_gray = rgb2gray(img)
plt.imshow(img_gray, cmap='gray')
plt.show()
您也可以使用
from skimage import io
io.imshow(img_gray)
它将自动处理灰度图像
标签:scikit-image,matplotlib,python