18
votes

I use opencv3 of python installed it by anaconda using:
conda install -c menpo opencv3=3.2.0

But when i use it to convert a picture to grayscale, like:

import cv2
import matplotlib.pyplot as plt

%matplotlib inline

image = cv2.imread('opencv_logo.png')

image1 = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)

print (image.shape)
print (image1.shape)

plt.imshow(image1)

enter image description here I donnot know why:

I use windows + miniconda. Can anyone know why and help me ? Thanks.

1
Actually, I don't know what you mean, I just use. image1 = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY) - Kerwin Xiao
what does cv2.imshow() instead of plt.imshow() give you ? - Soltius

1 Answers

29
votes

You are supposed to add another parameter in plt.imshow() so as to mention that you want a gray scale image.

Modify the last line like this: plt.imshow(img, cmap='gray')

Upon doing so I got the following:

enter image description here