matlab 如何将彩图转成灰度图

matlab 如何将彩图转成灰度图

1、打开图片:在主界面上输入命令将图像转换为数据;Data = imread('folder icon.bmp')。

2、查看数据:双击工作区中的数据,我们可以看到图像数据的具体信息。

3、验证图像结果:输入命令,我们可以看到数据数据是图片所代表的;Imshow(数据)。

4、灰度说明:我们可以通过输入指令获得灰度后的矩阵;GDATA = rgb2gray(数据)。

5、查看灰色矩阵:双击,右边的工作区,gdata,可以看到数据的具体信息。

6、显示灰度图像:如下图所示,可以看到图片后的灰度。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-24

需要准备的工具:电脑,MATLAB软件。

1、首先在matlab祝主界面输入一下指令清屏; clear;clc;。

2、  将自己准备的图片放在matlab的工作目录中,直接将图片复制到工作目录中。

3、接着在主界面输入一下指令,将图片转换成数据;data=imread('文件夹图标.bmp');

4、 双击工作空间中的,data我们可以看到图片数据的具体信息。

5、输入一下指令,我们可以看到,data数据就是表示的图片 imshow(data);

6、最后输入一下指令,就可以获得一个灰度后的矩阵; gdata=rgb2gray(data)。

本回答被网友采纳
第2个回答  推荐于2017-09-05

>> I=imread('D:\Lena.jpg');

>> x=rgb2gray(I);

>> figure(1);

>> subplot(121);

>> imshow(I);

>> title('原始图像');

>> subplot(122);

>> imshow(x);

>> title('灰度图像'); 

彩色图像是RGB,直接用rgb2gray

MATLAB 并没有自带gray2rgb
灰度图像 是个 N x M 矩阵。 N 和 M 为坐标,存储的数值是灰度深浅强度。RGB 为 N x M x 3 的矩阵。N 和 M 为坐标,附带的 3 是 [红,绿,蓝] 三色,数值各取 0-1.0 之间。转换上,如果灰度图像为 1024 x 768 大小,则要建立一个 1024 x 768 x 3 的矩阵。再在每一像素上添上颜色。例如,rgb_image(2, 4, :)= [0 1 1] %(坐标(2,4)=浅蓝色)

为了进行并行处理。我将512*512 的矩阵分成了64*64 的独立小块,并存至对应的文件中。

for i=1:64:449

     for j=1:64:449

        y=x(i:i+63,j:j+63);

        h=y';

        a=(i-1)/64+1;

        b=(j-1)/64+1;

    

        sload=['fid=fopen(''x' num2str(a) num2str(b) '.txt'',''wt+'')'];

        eval_r(sload);       

     

                fprintf(fid, 'M\t', h);

         

      fclose(fid);

        

    end

end

第3个回答  2010-11-13
H=imread('XXX.jpg')
I=rgb2gray(H)本回答被提问者采纳