PIL:
PIL.Image.open 不直接返回numpy对象,可以用numpy提供的函数进行转换,可以用load访问rgb
matplotlib:
matplot.image.imread
从名字中可以看出这个模块是具有matlab风格的,直接返回numpy.ndarray格式通道顺序是RGB,通道值默认范围0-255。
opencv:
cv2.imread
使用opencv读取图像,直接返回numpy.ndarray 对象,通道顺序为BGR ,注意是BGR,通道值默认范围0-255。
skimage:
skimage.io.imread: 直接返回numpy.ndarray 对象,通道顺序为RGB,通道值默认范围0-255。
注意:
可以使用matplotlib的pyplot模块的show也可以使用cv2的imshow方法,对于这些方法只要你传入的参数是numpy.ndarray(通道值范围0-255) 就可以正常显示,不存在区别,这也可以看出numpy在python中的重要地位;但是cv2.imshow方法由于它针对的是cv2的imread 所以它内部会做通道顺序的变化,传入为BGR转换为RGB,所以你如果传入RGB显示的就是BGR了。
转载:https://blog.youkuaiyun.com/renelian1572/article/details/78761278