Matplotlib 为 OpenCV 图像绘制不正确的颜色
在 Python 的 OpenCV 中,图像加载在 BGR(蓝-绿-红)颜色空间中,而 Matplotlib 遵循 RGB(红-绿-蓝)格式。在 Matplotlib 中显示使用 OpenCV 加载的图像时,这种差异可能会导致颜色失真。
问题源于图像中颜色通道的顺序。 OpenCV 图像以 BGR 格式存储,而 Matplotlib 需要 RGB。结果,颜色通道被交换,导致显示不正确的颜色。
解决方案:
最简单的解决方案是转换 OpenCV 加载的 BGR 图像在将其传递给 Matplotlib 之前显式转换为 RGB。这可以使用以下代码来实现:
<code class="python">RGB_img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)</code>
通过执行此转换,颜色通道得到纠正,确保图像在 Matplotlib 中准确显示。生成的图像现在将与原始源图像的颜色相匹配。
以上是以下是一些标题选项,请记住您要求的问题格式: **选项 1(直接和技术):** * **为什么 Matplotlib 显示 OpenCV 图像的颜色不正确?** **选项的详细内容。更多信息请关注PHP中文网其他相关文章!