确定彩色图像的rgb平面

时间:2014-06-05 17:23:47

标签: image matlab image-processing

彩色图像的红色,绿色或蓝色平面是什么意思?我们如何生成红色平面?它与其他平面有什么不同?请解释生成这些平面背后的逻辑?

3 个答案:

答案 0 :(得分:5)

普通彩色图像中的每个像素都由红色部分,绿色部分和蓝色部分组成 - 因此RGB image。通常,图像中每个位置的红色部分有一个字节,一个用于绿色,一个用于蓝色。由于每个像素位置都有一个字节,红色可以在0(零)之间变化,这意味着“没有红色”,255表示“全红色”。同样是绿色和蓝色。所以所有像素都是

的图像
Red=255, Green=0, Blue=0 will look very bright red
Red=0, Green=255, Blue=0 will look very green

并且R = G = B的像素将看起来是灰色的,并且如果R = G = B = 16,则它将是非常深灰色,并且如果R = G = B = 240,则它将是非常浅/亮灰色。

因此,“红色平面”仅仅是一个图像,仅显示每个像素的红色部分,或每个像素中有多少红色。

这是一朵玫瑰:

enter image description here

这是红色的飞机,你可以看到玫瑰红色的地方,红色的飞机非常明亮,意味着有很多红色。:

enter image description here

这是绿色平面(你可以看到右边的绿叶很亮):

enter image description here

和蓝色平面(你可以看到左边的蓝色花瓣很亮):

enter image description here

如果要分离颜色通道(平面),ImageMagick中很容易获得红色平面,例如:

convert rose: -channel red -separate red.jpg

ImageMagick免费且令人惊叹 - 可用here

答案 1 :(得分:2)

简单回答:

假设你读过480x640的彩色图像,如下所示:

A = imread('image.jpg');

矩阵A的尺寸为480 x 640 x 3。第三个维度是三个480 x 640平面或颜色通道:

red = A(:,:,1)
green = A(:,:,2)
blue = A(:,:,3)

现在您可以转到@Trilarion在评论中给出的链接,并查看有关Truecolor Images的部分。

答案 2 :(得分:0)

如果我理解你的评论,你想知道相机的CCD如何捕捉每种颜色的色度。

查看color space

也许关于wavelength of colors(查看色彩频率/波长表以获取更多信息)

camera CDD了解相机如何捕捉这些波形并创建图像的色彩通道。