我已经开始学习图像处理,我被困在这里,请帮助我。
灰度图像用N矩阵表示,其中矩阵的每个元素的值为0,255,表示灰度值。
示例:
row 1 : 2,120
row 2 : 190, 40这是2乘2矩阵,这是一幅灰色图像。
现在,我感到困惑,无法得到如何表示RGB图像,其中每个像素值或强度是三个值的混合。
定义上说,
RGB图像由My-N-by3阵列表示,其中每个3矢量对应于每个像素的红色、绿色和蓝色强度。
但我听不懂上面这句话。请帮我弄明白意思。
提前谢谢你。
发布于 2020-07-15 11:22:58
在灰度图像中,每个像素可以用一个数字表示,该数字通常在0到255之间。此值决定像素显示的黑暗程度(例如,0为黑色,255为亮白色)。
在彩色图像中,每个像素可以表示为三个主要颜色通道:红色、绿色和蓝色的三个数字向量(每个数字从0到255)。这三个红色、绿色和蓝色(RGB)值一起用于决定该像素的颜色。例如,紫色可以表示为128,0,128 (中等强度的红色和蓝色的混合,没有绿色)。
现在,我将以你们为例,给你们一个关于这个定义的理解。
假设是2乘2矩阵的彩色图像:
row1:绿色,蓝色
row2:红色,黑色
如果我用RGB值表示上述颜色:
row1: 0,255,0,0,0,255
row2: 255,0,0,0,0,0,0
因此,M N 3描述了M是矩阵的行数,N是矩阵的列数,3是表示RGB值的向量的大小。这里是像素网格中的RGB表示。
发布于 2018-08-23 15:48:50
从概念上讲,M-by-N RGB图像是一个二维矩阵,其中每个矩阵元素是一个具有3个值的向量。
在物理内存中有许多不同的表示方法。例如:
red<<16 | green<<8 | blue (或等效的red*256*256 + green*256 + blue)。img[i,j,k],k为0、1或2。因此,一个像素由3个数组元素组成。最后一种格式是问题中描述的格式。这样的3D数组通常被实现为一维数组,索引转换如下:
index = i + j * M + k * N*M;或者这样说:
index = i * N*3 + j * 3 + k;或者以另一种不同的顺序,这并不重要(这里我们假设基于0的索引)。因此,数组有M*N*3元素,其中三个元素共同表示一个像素。
发布于 2018-08-23 14:38:41
(A)RGB像素通常保存为中间格(32位)。因此,每个通道用8位表示(给出介于0到255之间的范围)。数字的前8位(32-24)代表alpha通道,接下来的8位代表红色通道(24-16),接下来的8位代表绿色通道(16-8),最后8位代表蓝色通道。因此,数组中的每个数字实际上代表了各自颜色通道的透明度(alpha)和3个强度值,因此也可以看作是一个向量。M-by-N-by3描述一个包含每个像素的向量(整数)的MxN矩阵来描述其颜色。
定义进一步使您了解如何在三维空间中绘制/查看像素值。想象一个三维图,其中每个轴代表一个颜色通道。当您在图表中添加特定颜色时,您会得到什么?一个向量,它描述颜色在来自原点的三维空间中的位置!
https://stackoverflow.com/questions/51987844
复制相似问题