首页 > 解决方案 > RBG 三元组值如何转换为单值?单个值介于 0 到 255 之间。如何将单个值映射到彩色图像?

问题描述

使用 OpenCV,读取输入图像(里面的蓝色背景图像圣诞树)。

下图是输入图像。

在此处输入图像描述

读取图像的输出从蓝色背景变为红色。

在此处输入图像描述

当我在 spyder 中查看“图像”变量的值时。这里3是RGB通道

在此处输入图像描述 双击显示的值时,Axis = 0。我理解的是BGR值

在此处输入图像描述

Axis = 1 here to 0 BGR

在此处输入图像描述

轴=2。我被困在这里。我不明白(像素)RBG 值的三元组值如何转换为每个像素的单个值,以及这个像素(0,0)=254 在这里如何表示红色。

在此处输入图像描述

我理解黑白值从 0 到 255 不等。但是这里的轴 = 2(像素(0,0)=254)如何表示红色(从读取图像的输出猜测)。

标签: pythonopencvimage-processingcomputer-visioncolor-theory

解决方案


您正在使用OpenCV读取图像,它采用 BGR 颜色通道矩阵。但是,您使用其他一些将颜色通道矩阵作为 RGB 的库来显示它。使用将您的图像转换为 RGB cv2.cvtColor(image, cv2.BGR2RGB),然后它将显示它。


推荐阅读