在图像处理中, 经常会用到cv2这个库, 其中cv2.imread()可以用来读取图像。 有一个容易忽略的细节是, cv2.imread()默认的通道排布是BGR, 而我们通常的图像是RGB排布的。 需要注意转换一下, 不然读出来的图像跟我们需要的不一致。
import matplotlib.pyplot as plt import cv2 img = cv2.imread(img_path) plt.imshow(img) plt.show()
显示如下:
可以看出, 因为通道排列不对, 显示的图像不正常。
改变通道排列之后, 显示正常。
import matplotlib.pyplot as plt import cv2 img = cv2.imread(img_path) img = img[:,:,::-1] # convert BGR to RGB plt.imshow(img) plt.show()



