QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 692|回复: 0
打印 上一主题 下一主题

MATLAB中将彩色的图像转化为灰度图像

[复制链接]
字体大小: 正常 放大

413

主题

36

听众

1854

积分

升级  85.4%

  • TA的每日心情
    开心
    2019-9-18 21:55
  • 签到天数: 258 天

    [LV.8]以坛为家I

    社区QQ达人

    群组2015国赛冲刺

    群组2016美赛公益课程

    群组国赛讨论

    群组第三届数模基础实训

    群组Matlab讨论组

    跳转到指定楼层
    1#
    发表于 2015-8-4 18:39 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta

    MyYuanLaiPic = imread('e:/image/matlab/darkMouse.jpg');%读取RGB格式的图像  
    MyFirstGrayPic = rgb2gray(MyYuanLaiPic);%用已有的函数进行RGB到灰度图像的转换  
      
    [rows , cols , colors] = size(MyYuanLaiPic);%得到原来图像的矩阵的参数  
    MidGrayPic = zeros(rows , cols);%用得到的参数创建一个全零的矩阵,这个矩阵用来存储用下面的方法产生的灰度图像  
    MidGrayPic = uint8(MidGrayPic);%将创建的全零矩阵转化为uint8格式,因为用上面的语句创建之后图像是double型的  
      
    for i = 1:rows  
        for j = 1:cols  
            sum = 0;  
            for k = 1:colors  
                sum = sum + MyYuanLaiPic(i , j , k) / 3;%进行转化的关键公式,sum每次都因为后面的数字而不能超过255  
            end  
            MidGrayPic(i , j) = sum;  
        end  
    end  
    imwrite(MidGrayPic , 'E:/image/matlab/DarkMouseGray.png' , 'png');  
      
    %显示原来的RGB图像  
    figure(1);  
    imshow(MyYuanLaiPic);  
      
    %显示经过系统函数运算过的灰度图像  
    figure(2);  
    imshow(MyFirstGrayPic);  
      
    %显示转化之后的灰度图像  
    figure(3);  
    imshow(MidGrayPic);  

    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    数学中国版主团队!
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-7-21 08:25 , Processed in 0.397538 second(s), 54 queries .

    回顶部