二者保存后的都是numpy格式;但cv2的读取格式是BGR,而skimage的格式是RGB。
1、skimage.io.imread(img_dir)用于读取图片文件。读取的图片为RGB格式,通道值默认范围0-255。
img_dir:图片的位置。
io.imread读出图片格式是uint8(unsigned int);value是numpy array。
import skimage.io as io import matplotlib.pyplot as plt img_dir = 'C:\Users\Administrator\1.jpg' '''以io.imread方式读取图片''' # 读图并显示。 image = io.imread(img_dir) plt.imshow(image)2、cv2.imread(img_dir)
使用opencv读取图像,cv2.imread读出的图片格式是uint8;value是numpy array;图像数据是以BGR的格式进行存储的,注意是BGR,通道值默认范围0-255,需要将存储类型改成RGB的形式才能正常显示原图的颜色。具体代码如下:
import cv2 import matplotlib.pyplot as plt img_dir = 'C:\Users\Administrator\1.jpg' '''以cv2方式读取图片''' image = cv2.imread(img_dir) # 将图像通道分离开。 b,g,r = cv2.split(image) # 以RGB的形式重新组合。 rgb_image = cv2.merge([r,g,b]) # 也可以使用这个函数直接转换成RGB形式。 # image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) plt.imshow(rgb_image)
参考链接:
https://blog.csdn.net/TeFuirnever/article/details/89553708



