I’m currently in Ubuntu 14.04, using python 2.7 and cv2.
When I run this code:
import numpy as np import cv2 img = cv2.imread('2015-05-27-191152.jpg',0) gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
File "face_detection.py", line 11, in <module> gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cv2.error: /home/arthurckl/Desktop/opencv-3.0.0-rc1/modules/imgproc/src/color.cpp:7564: error: (-215) scn == 3 || scn == 4 in function cvtColor
I already searched here and one answer said that I could be loading my photo the wrong way, because it should have 3 dimensions: rows, columns and depth.
When I print the img.shape it returns only two numbers, so I must be doing it wrong. But I don’t know the right way to load my photo.
Give the full path of image with forward slash. It solved the error for me.
import numpy as np import cv2 img = cv2.imread('C:/Python34/images/2015-05-27-191152.jpg') gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
Also, if you give
0 in second parameter while loading image using
cv2.imread than no need to convert image using
cvtColor, it is already loaded as grayscale image eg.
import numpy as np import cv2 gray = cv2.imread('C:/Python34/images/2015-05-27-191152.jpg',0)