aki*_*t90 2 opencv image matplotlib ipython ipython-notebook
我有以下RGB图像 imRGB
import cv2
import matplotlib.pyplot as plt
#Loading the RGB image
imRGB = cv2.imread('*path*')
imRGB.shape
>>(128L, 128L, 3L)
#plotting
plt.imshow(imRGB)
Run Code Online (Sandbox Code Playgroud)
我将其转换为灰度图像 imGray
imGray = cv2.cvtColor(imRGB, cv2.COLOR_BGR2GRAY)
imGray.shape
>>(128L, 128L)
#plotting
plt.imshow(imGray)
Run Code Online (Sandbox Code Playgroud)
问题:为什么灰度图像imGray以彩色显示?
mar*_*esk 10
imRGB是一个3D矩阵(高x宽x 3).
现在imGray是一个2D矩阵,其中没有颜色,只有"光度"值.所以matplotlib默认应用了一个colormap.
阅读此页面并尝试应用灰度色彩图或不同的色彩图,检查结果.
plt.imshow(imGray, cmap="gray")
Run Code Online (Sandbox Code Playgroud)
使用此页面作为色彩映射的参考.某些色彩图无法使用,如果发生,请尝试使用其他色彩映射.