精华内容
下载资源
问答
  • matlab RGB转灰度

    千次阅读 2014-07-05 14:19:20
    imgrgb = imread('flower.jpg'); imwrite(imgrgb, 'flower.bmp', 'bmp'); % jpg格式转换为bmp格式 imggray = rgb2gray(imgrgb);...imwrite(imggray, 'flower_grayscale.bmp', 'bmp'); % 存储为灰度图像
    imgrgb = imread('flower.jpg');
    imwrite(imgrgb, 'flower.bmp', 'bmp'); % jpg格式转换为bmp格式
    imggray = rgb2gray(imgrgb);
    imwrite(imggray, 'flower_grayscale.bmp', 'bmp'); % 存储为灰度图像
    展开全文
  • 之前学FPGA 先要要应用在图像方面,在网上也找了很多资料,matlab算是资源最多了的,博主本着学习的目的,将每天所学的写成笔记,方便以后的复习,同时也可以让...rgb转灰度 Gray = R0.299 + G0.587 + B*0.114 ...

    MATLAB/FPGA图像学习-rgb转灰度

    之前学FPGA 先要要应用在图像方面,在网上也找了很多资料,matlab算是资源最多了的,博主本着学习的目的,将每天所学的写成笔记,方便以后的复习,同时也可以让刚学习的小伙伴参考一下。如果大神们能看到,也希望能够指导下。博主对自己的方向还很迷茫。十分乐意能与大家相互交流学习。
    rgb转灰度
    Gray = R0.299 + G0.587 + B*0.114

    clc;
    clear all;
    close all;
    rgb_data=imread('juncao.jpg');
    imshow(rgb_data);
    r_data=rgb_data(:,:,1);
    g_data=rgb_data(:,:,2);
    b_data=rgb_data(:,:,3);
    [row,col,dim]=size(rgb_data);
    gray_data=zeros(row,col,dim);%gray_data=rgb_data;
    y_gray=zeros(row,col);
    cb_gray=zeros(row,col);
    cr_gray=zeros(row,col);
    for r=1:row
        for c=1:col
            y_gray(r,c)=r_data(r,c)*0.299+g_data(r,c)*0.587+b_data(r,c)*0.114;
        end
    end
    gray_data(:,:,1)=y_gray;
    gray_data(:,:,2)=y_gray;
    gray_data(:,:,3)=y_gray;%灰度值
    gr=uint8(gray_data);
    figure;
    imshow(gr);
    

    刚开始取灰度的时候 出了一个错误 ,matlab只显示了原图 ,灰度图只有有限个黑点的白色图片,后来问了大佬后 ,才发现在 %灰度值 这一步有问题。本来gray_data是unit型的数据,但在经过灰度值赋值后变成了double型。数据类型的变换导致了图片只有有限个黑点(具体可以查看相关资料),解决办法就是把double型数据变成uint8。
    zeros生成0矩阵;zeros(x,y)(与ones效果相同)
    figure保存前一张图片
    附上显示的原图与灰度图

    出错的:

    在这里插入图片描述改正后的:
    在这里插入图片描述

    展开全文
  • C++ RGB转灰度图像

    2020-02-05 17:29:19
    RGB转灰度,通常会使用下面的一个心理学公式:(Matlab和OpenCV中使用的也是该公式) Gray = 0.2989*R + 0.5870*G + 0.1140*B 抛却指令优化不谈,优化转化速度的最直接方法就是将浮点运算转化为整数运算: 比如我们...

    RGB转灰度,通常会使用下面的一个心理学公式:(Matlab和OpenCV中使用的也是该公式)

    Gray = 0.2989*R + 0.5870*G + 0.1140*B

    抛却指令优化不谈,优化转化速度的最直接方法就是将浮点运算转化为整数运算:

    比如我们可以将上式转化为:

    Gray = (2989*R + 5870*G + 1140*B)/ 10000,

    但是上面的除法还是不够快,我们完全可以使用移位操作来代替:

    Gray = (4898*R + 9618*G + 1868*B)>> 14

    此外,对大部分计算机视觉应用来说,图像的精度问题不是一个特别敏感的问题,因此我们可以通过降低精度来进一步减少计算量:(我通常使用8位精度)

    Gray = (76*R + 150*G + 30*B)>> 8

     

     

    C++实现如下:

    bool rgb2gray(unsigned char *src,unsigned char *dest,int width,int height)
    {
        int r, g, b;
        for (int i=0;i<width*height;++i)
        {
            r = *src++; // load red
            g = *src++; // load green
            b = *src++; // load blue
            // build weighted average:
            *dest++ = (r * 76 + g * 150 + b * 30) >>8;
        }
        return true;
    }

    其他的精度如下:

            Gray = (R*1 + G*2 + B*1) >> 2
            Gray = (R*2 + G*5 + B*1) >> 3
            Gray = (R*4 + G*10 + B*2) >> 4
            Gray = (R*9 + G*19 + B*4) >> 5
            Gray = (R*19 + G*37 + B*8) >> 6
            Gray = (R*38 + G*75 + B*15) >> 7
            Gray = (R*76 + G*150 + B*30) >> 8
            Gray = (R*153 + G*300 + B*59) >> 9
            Gray = (R*306 + G*601 + B*117) >> 10
            Gray = (R*612 + G*1202 + B*234) >> 11
            Gray = (R*1224 + G*2405 + B*467) >> 12
            Gray = (R*2449 + G*4809 + B*934) >> 13
            Gray = (R*4898 + G*9618 + B*1868) >> 14
            Gray = (R*9797 + G*19235 + B*3736) >> 15
            Gray = (R*19595 + G*38469 + B*7472) >> 16
            Gray = (R*39190 + G*76939 + B*14943) >> 17
            Gray = (R*78381 + G*153878 + B*29885) >> 18
            Gray = (R*156762 + G*307757 + B*59769) >> 19
            Gray = (R*313524 + G*615514 + B*119538) >> 20

     

    展开全文
  • matlab灰度转rgb图片

    2021-03-30 20:40:51
    matlab灰度转rgb图片
  • Matlab程序,自己手动实现rgb图像转灰度图像。
  • Matlab实现灰度图像转换成RGB图像
  • matlab开发-可扩展的rgb2灰度转换模型有效对比度保留脱色。有效保持对比度脱色的扩展rgb2灰度转换模型
  • %matlab基本图像处理 I = imread('yellowlily.jpg'); >> gI = rgb2gray(I); >> bwI = im2bw(gI); >> eI = edge(bwI,'canny'); >> subplot(2,2,1);imshow(I); >> subplot(2,2,2);...

    %matlab基本图像处理

    I = imread('yellowlily.jpg');
    >> gI = rgb2gray(I);
    >> bwI = im2bw(gI);
    >> eI = edge(bwI,'canny');
    >> subplot(2,2,1);imshow(I);
    >> subplot(2,2,2);imshow(gI);
    >> subplot(2,2,3);imshow(bwI);
    >> subplot(2,2,4);imshow(eI);

    %补充边缘算法

    eI = edge(bwI,'log');
    >> eI = edge(bwI,'sobel');
    >> eI = edge(bwI,'prewitt');
    >> eI = edge(bwI,'roberts');

     

    展开全文
  • Matlab实现的灰度图像转换成RGB图像,效果不错 用Matlab实现的灰度图像转换成RGB图像,效果不错
  • Matlab实现灰度图像转换成RGB图像

    热门讨论 2009-05-16 10:29:57
    Matlab实现的灰度图像转换成RGB图像,效果不错
  • 互相交流学习 %VideoReader访问视频并获取相关基本信息 trafficVid=VideoReader('traffic.... for i = 1:nFrames video(i).cdata = rgb2gray(readFrame(trafficVid)); end implay(video);%也可用movie()函数进行播放
  • 用C++和openCV实现的视频格式转换,RGB转灰度值。 附测试视频,VC 6.0编译通过
  • MATLAB图像二值化,工具:Image Processing Toolbox
  • 使用均值和中值函数将RGB图像转换为灰度的其他方法。
  • matlab实现灰度转rgb

    千次阅读 2020-04-27 10:21:06
    %%img为灰度图 function rgbimg = gray2rgb(img) [rows,cols]=size(img); r=zeros(rows,cols); g=zeros(rows,cols); b=zeros(rows,cols); r=double(img); g=double(img); b=double(img); rgbimg=cat(3,r,g,b)...
  • gray_level_conversion 使用Matlab进行RGB格式的图像灰度转换
  • MATLAB图像处理预处理的像素变幻RGB灰度直方图 你好!首先我们来进行matlab的学习进步,了解到matlab里面自带的图像数据处理库,功能很强大。 可以进行MATLAB图像处理预处理的像素变幻RGB灰度直方图的绘制 ...
  • 求分享Matlab实现灰度图像转换成RGB图像的代码</p>
  • RGB转灰度图的几种算法

    万次阅读 2011-08-01 00:57:37
    方法一:  对于彩色转灰度,有一个很著名的心理学公式:  Gray = R*0.299 + G*0.587 + B*0.114  方法二:  而实际应用时,希望避免低速的浮点运算,所以需要
  • 概述:数字图像的本质就是矩阵,利用灰度的加权平均计算公式(Gray=0.299R+0.587G+0.114*B),可以将RGB数字图像灰度化,变成我们常说的“黑白照”。 A=imread('E:\new\QJ123.jpg'); //读取RGB数字图像 [rows,cols,...
  • rgb 转换算法, 灰度图直方图互, rgb yuv 图。matlab的m文件。
  • matlabRGB图像的分量灰度图的应用实例matlabRGB图像的分量灰度图的应用实例matlabRGB图像的分量灰度图的应用实例
  • 此文件直接将 rgb 文件转换为二进制文件,而无需将 rgb 文件转换为灰度
  • matlab中将RGB图像转化为灰度图像

    万次阅读 2018-11-06 15:02:43
    MyYuanLaiPic = imread('e:/image/matlab/darkMouse.jpg');%读取RGB格式的图像 ...%用已有的函数进行RGB灰度图像的转换 [rows , cols , colors] = size(MyYuanLaiPic);%得到原来图像的矩阵的参数 MidGr...
  • RGB 图像转换为灰度图像的函数。 默认行为与 MATLAB 的(IP 工具箱)RGB2GRAY 相同,但 MRGB2GRAY 还具有其他几种转换方案。
  • matlab开发-灰度变换

    2019-08-23 15:38:12
    matlab开发-灰度变换。gray2rgb根据源图像的颜色将灰色图像转换为RGB
  • Matlab----RGB图像转换成灰度图像

    千次阅读 2020-01-27 23:22:24
    真彩图(RGB图像)转换为灰度RGB=imread("peppers.png"); Gray=rgb2gray(RGB); figure,imshow(RGB); figure,imshow(Gray); RGB颜色图转换为灰度图 读取RGB颜色图的索引图像,然后将颜色图转换为灰度 [X,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,094
精华内容 4,037
关键字:

matlabrgb转灰度

matlab 订阅