You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用cv2.imread读取图像后plt展示出现颜色偏移异常问题

问题根因

cv2.imread读取彩色图像时默认返回BGR通道顺序的数组,而plt.imshow渲染图像时默认采用RGB通道顺序,二者通道顺序不匹配是颜色异常的核心原因,和是否做/255归一化操作无关。

修复方案

任选以下任意一种方式调整通道顺序即可:

  • 调用OpenCV自带的颜色空间转换接口
import cv2
import matplotlib.pyplot as plt

auxImg = cv2.imread("train/img_0001.jpg", cv2.IMREAD_COLOR)
# BGR转RGB
auxImg_rgb = cv2.cvtColor(auxImg, cv2.COLOR_BGR2RGB)
# 归一化后展示也不会有问题
plt.imshow(auxImg_rgb / 255)
plt.show()
  • 直接通过数组切片翻转最后一个通道,实现同样效果
auxImg = cv2.imread("train/img_0001.jpg", cv2.IMREAD_COLOR)
plt.imshow(auxImg[..., ::-1] / 255)
plt.show()

内容的提问来源于stack exchange,提问作者Bia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.17 13:45:03