2014-10-06 169 views
-1

我有一个图像(RGB图像),并希望将其转换为其等效的RGB矩阵,以便我可以将它们转换为它们的二进制等效。matlab:如何将rgb图像转换为矩阵

总的来说,我想获得我的形象的像素值。
我该如何在matlab中执行它?

回答

0

为什么你需要这样做,我没有线索,默认情况下图像是矩阵,但记住,因为存储在MATLAB中的RGB图像实际上是3层矩阵,如果你想访问图像的元素只是使用图像(y,x,n)或x,y,n我忘记了lol,其中x,y是矩阵上的点,n是要访问的图层,而且矩阵图像中的起点实际上是1, 1不是0,0,因此在调用元素或修改矩阵的元素时要小心。

参见:How to access image's matrix in matlab and scan it to find the specific pixel values?

2
I = imread('filename.xxx'); 
size(I) 
% This should print height width and channels 

访问所述单个信道(假定图像是RGB):

r = I(:,:,1); 
g = I(:,:,2); 
b = I(:,:,3); 

,或者改变红色通道的像素在1,1位置:

I(1,1,1) = 255;