Error de aserción: size.width> 0 && size.height> 0 en función imshow

Estoy usando opencv2 y python en la raspberry pi. y soy nuevo con python y opencv. Intenté leer una imagen jpeg y mostrar la imagen que muestra el siguiente error:

/home/pi/opencv-2.4.9/modules/highgui/src/window.cpp:269: \ error: (-215) size.width>0 && size.height>0 in function imshow. 

y el código es:

 import cv2 # windows to display image cv2.namedWindow("Image") # read image image = cv2.imread('home/pi/bibek/book/test_set/bbb.jpeg') # show image cv2.imshow("Image", image) # exit at closing of window cv2.waitKey(0) cv2.destroyAllWindows() 

La imagen no se carga (probablemente porque olvidó el inicio / en la ruta). imread luego devuelve None. Pasar None a imshow hace que intente crear una ventana de tamaño 0x0, que falla.

El mal manejo de errores en cv probablemente se deba a su capa de envoltura bastante delgada en la implementación de C ++ (donde devolver NULL en caso de error es una práctica común).

Mientras utilizaba Raspbian en Rpi 3 tuve el mismo problema al intentar leer qrcodes. El error es porque cv2 no pudo leer la imagen. Si está utilizando el módulo pypng de la imagen png.

 sudo pip install pypng