精华内容
下载资源
问答
  • Matlab实现灰度图像转换成RGB图像
  • Matlab图像处理rgb2ind函数

    千次阅读 2020-06-12 16:56:31
    该函数将真彩色图像转换为索引图像, 由于RGB图像一个像素占用三个字节, 分别存储R、G、B分量的值,而索引图像一个像素占用一个字节。在将灰度图像转换为索引图像时, 是从3个字节映射到一个字节的关系。 通常有...

    该函数将真彩色图像转换为索引图像, 由于RGB图像一个像素占用三个字节, 分别存储R、G、B分量的值,而索引图像一个像素占用一个字节。在将灰度图像转换为索引图像时, 是从3个字节映射到一个字节的关系。 通常有以下两种算法:

     

    • Gray = (R + G + B) / 3,即求得R、G、B三个分量平均值作为索引图像中对应像素点的像素值。
    • Gray = min(R, G, B),即以R、G、B三个中最小分量作为索引图像对应像素点的像素值。

     

    但是,这个方法对于Gamma校正的图片(平常所见到的24位真彩色图片均为Gamma校正的图片)并不适用,因为Gamma校正后的分量值不是物理上的功率,不能直接相加,因此,提出一种改进的算法来纠正这一问题。

    注意这里的2.2次方和2.2次方根,RGB颜色值不能简单直接相加,而是必须用2.2次方换算成物理光功率。因为RGB值与功率并非简单的线性关系,而是幂函数关系,这个函数的指数称为Gamma值,一般为2.2,而这个换算过程,称为Gamma校正。


    真彩色

    16位一般叫高彩色,一般称之64K色, 一共有baidu2^16 = 64*1024 = 65536种色彩

    24位真彩色:一共有2^24= 16 777 216,种色彩,也就是1600万色.

    32位真彩色,并不是2^32种颜色,而是24位真彩色(1600万色)加上8位的透明度,让显示更好,更接近自然的色彩.


    调用格式:

    • [X,map] = rgb2ind(RGB, n)

    使用第二种算法把真彩色图像转换为索引图像,其中n指定map中颜色项数(表示有几种颜色,比如n=2,那就只有两种颜色构成了一张图片,但并非二值图像), n最大不能超过65536。返回值中map即索引图像的调色板,map里储存的是颜色索引,是一张各个数字对应颜色的表格。如果bmp文件是真彩色或灰度的,就不需要色表,得到的X是二维或三维的矩阵,数值介于0到255之间。如果是索引格式的(如256色、16色等等)就有这样一张表格,X是一个二维矩阵,数值介于0-255或0-15之间,显示图像时需要色表才能正确对应颜色。

    • X = rgb2ind(RGB, map)

    使用调色板map将真彩色图像转换为索引图像,即在调色板中找到与真彩色图像颜色值最接近的颜色作为转换后的索引图像的像素值。map中颜色项数(即size(map, 1))不能超过65536。

    • [X,map] = rgb2ind(RGB, tol)

    利用第一种算法把真彩色图像转换为索引图像, map中最多包含(floor(1/tol)+1)^3种颜色, tol必须是介于0.0和1.0之间的数。

    • [...] = rgb2ind(..., dither_option)

    其中dither_option用于开启/关闭dither, dither_option可以是'dither'(默认值)或'nodither'。

    相关函数: ind2gray, mat2gray, ntsc2rgb, rgb2ind, rgb2ntsc

    程序示例

    % 1. 显示RGB真彩色

    imgrgb = imread('flower.jpg');

    figure('Name', '显示真彩色图像')

    imshow(imgrgb)

    % 2. 显示灰度图像

    imggray = rgb2gray(imgrgb);

    figure('Name', '显示灰度图像')

    imshow(imggray)

    % 3. 显示索引图像

    [imgind, map] = rgb2ind(imgrgb, 10);

    figure('Name', '显示索引图像')

    imshow(imgind, map)

     

    RGB=imread('football.jpg');
    [X1,map1]=rgb2ind(RGB,64);   
    [X2,map2]=rgb2ind(RGB,0.2);
    map3=colorcube(256);
    X3=rgb2ind(RGB,map3);
    figure;
    subplot(131);imshow(X1,map1);
    subplot(132);imshow(X2,map2);
    subplot(133);imshow(X3,map3);

     

     

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

    热门讨论 2009-05-16 10:29:57
    Matlab实现的灰度图像转换成RGB图像,效果不错
  • 求分享Matlab实现灰度图像转换成RGB图像的代码</p>
  • MATLAB图像二值化,工具:Image Processing Toolbox

    RGB图像转二值图像

    imageRGB = imread('lenna.jpg');
    binary = im2bw(imageRGB,0.4);
    imwrite(binary,'test.jpg');
    

    灰度图像转二值图像

    image = imread('lenna.jpg');
    binary = im2bw(image,0.4);
    imwrite(binary,'test.jpg');
    

    0.4是阈值,你可以换成不同的值,有不同的效果。
    RGB图像:
    在这里插入图片描述
    转换后二值图像:
    在这里插入图片描述

    函数

    im2bw()函数是把RGB图像或者二值图像转换成二值图像的函数

    注意

    使用im2bw可能需要安装MATLAB附加资源。如果你之前没有安装的话,执行时,MATLAB会提醒你安装工具集Image Processing Toolbox

    展开全文
  • Matlab程序,自己手动实现rgb图像转灰度图像。
  • Matlab图像颜色空间转换 实验内容 用matlab软件编程实现下述任务 读入彩色图像提取其中的RGB颜色分量并展示出来 我们学习了多种表示图像的颜色空间请编写程序将图像转换到YUVYIQYCrCbHISCMY等颜色空间并展示出来 ...
  • matlab 图像翻转

    2009-06-23 11:12:45
    将彩色图像进行翻转的源代码,生成rgb图像的翻转图像
  • 此函数根据源图像的颜色将灰度图像转换为 RGB。 此代码最初的灵感来自 Jeny Rajan 和 Chandrashekar PS 的代码 gray2rgb。该代码经过优化和重写,以更接近地实现 Welsh、Ashikhmin 和 Mueller 的论文“将颜色转换为...
  • matlab图像处理之RGB转Ycbcr or gray

    千次阅读 2017-11-25 21:48:52
    Y'和Y是不同的,而Y就是所谓的流明(luminance),表示光的浓度且为非线性,使用伽马修正(gamma correction)编码处理 rgb原图 matlab 源码: clear all; close all; clc; img = imread('lena1.jpg');%图像读入 figure,...

    YCbCr或Y'CbCr有的时候会被写作:YCBCR或是Y'CBCR,是色彩空间的一种,通常会用于影片中的影像连续处理,或是数字摄影系统中。Y'为颜色的亮度(luma)成分、而CB和CR则为蓝色和红色的浓度偏移量成份。Y'和Y是不同的,而Y就是所谓的流明(luminance),表示光的浓度且为非线性,使用伽马修正(gamma correction)编码处理

                                                       rgb原图

    matlab 源码:

    clear all;

    close all;

    clc;

    img = imread('lena1.jpg');%图像读入

    figure,imshow(img);      %显示原图像

    ycbcr = rgb2ycbcr(img);  %rgb to ycbcr 函数

    figure,imshow(ycbcr);

    gray = rgb2gray(img);    %rgb to gray 函数

    figure,imshow(gray);

                                                       Ycbcr图

     

                                                           gray图

            欢迎关注微信公众号

     
    展开全文
  • 自己手动实现的MATLAB程序,能够将rgb图像转化成二值图像,模拟rgb2bw函数。
  • MATLABRGB图像转HSI图像的源代码 并分别对HSI中3个分量(H/S/I)进行图像分割 给我,能运行的M文件 在线等,急急急急急!!!!!!!!!!!
  • matlab开发-RGB转换为循环。将彩色图像转换为其他形式
  • matlab读取图像RGB

    万次阅读 2017-01-20 11:33:16
    matlab图像处理方面,具有很强大的应用。下面将分享如何使用matlab对图片的RGB三色进行提取并显示。 工具/原料 电脑 已注册的MATLAB 方法/步骤 首先通过函数对图片进行读取并显示。 image =...

    (转)http://www.wuji8.com/meta/15818851.html

    matlab在图像处理方面,具有很强大的应用。下面将分享如何使用matlab对图片的RGB三色进行提取并显示。

    工具/原料

    电脑

    已注册的MATLAB

    方法/步骤

    首先通过函数对图片进行读取并显示。

    image = imread('杯子.jpg');

    imshow(image)

    运行后图片如图。

    如何使用MATLAB对图片的RGB三种颜色进行提取

    接下来对红色分量进行提取并显示。

    image = imread('杯子.jpg');

    imager = image(:,:,1);

    imshow(imager)

    如何使用MATLAB对图片的RGB三种颜色进行提取

    接下来对绿色分量进行提取并显示。

    image = imread('杯子.jpg');

    imageg = image(:,:,2);

    imshow(imageg)

    如何使用MATLAB对图片的RGB三种颜色进行提取

    接下来对蓝色分量进行提取并显示。

    image = imread('杯子.jpg');

    imageb = image(:,:,3);

    imshow(imageb)

    如何使用MATLAB对图片的RGB三种颜色进行提取

    为了方便比较,采用sublpot函数将处理过的图片通过一个界面进行显示。

    image = imread('杯子.jpg');

    imager = image(:,:,1);

    imageg = image(:,:,2);

    imageb = image(:,:,3);

    subplot(221);

    imshow(imager);

    title('r')

    subplot(222);

    imshow(imageg);

    title('g')

    subplot(223);

    imshow(imageb);

    title('b')

    subplot(224);

    imshow(image);

    如何使用MATLAB对图片的RGB三种颜色进行提取

    同时,在图像处理后还可以将图像不同分量进行想加,代码如下:

    image = imread('杯子.jpg');

    imager = image(:,:,1);

    imageg = image(:,:,2);

    imageb = image(:,:,3);

    subplot(221);

    imshow(imager);

    title('r')

    subplot(222);

    imshow(imageg);

    title('g')

    subplot(223);

    imshow(imageb);

    title('b')

    subplot(224);

    imshow(imageg+imageb+imager);

    如何使用MATLAB对图片的RGB三种颜色进行提取

    注意事项

    开发环境为MATLAB2012A。

    展开全文
  • 这两个函数用于将RGB彩色图像转换为YUV格式或将YUV格式转换为RGB彩色图像……这两个函数广泛用于图像处理和图像压缩技术
  • YUV转RGBmatlab程序-图像格式转换

    热门讨论 2010-10-12 21:52:43
    YUV转RGBmatlab程序,可以运行
  • MATLAB图像类型转换

    2020-12-06 20:01:20
    MATLAB图像类型转换 图像类型转换函数 函数名 函数功能 dither 图像抖动,将灰度图变成二值图,或将真彩色图像抖动成索引色图像 gray2ind 将灰度图像转换成索引图像 grayslice 通过设定阈值将灰度图像转换成索引色...
  • 利用MatlabRGB图像转换到HSI空间

    千次阅读 2017-03-24 10:40:40
    在最近的一个课题中,导师要求提取图像RGB或者HSI信息,建立判别模型。今天开始第一步,由RGB提取HSI。function hsi = rgb2hsi(rgb) rgb = im2double(rgb); r = rgb(:,:,1); g = rgb(:,:,2); b = rgb(:,:,3); num ...
  • MATLAB 图像RGB转Lab并进行Min-Max归一化存成图片,原始的Lab数据存入Excel 把数据保存到Excel文件中,更方便对比查看。 clc; clear; close all; PATH = 'C:\Users\UserName\Desktop\Img_20200509\'; fileFolder...
  • Matlab实现RGB图像批量转换热图

    千次阅读 2019-04-24 16:15:50
    RGB图像如下: 效果图如下: 转换方法要求原图为单通道图像,所以首先使用了rgb2gray的方法。 转换原理为原图像像素值越大,在热图中就越红,反之在热图中就越蓝。 colormap(jet);使用的jet色图如下: 整个代码...
  • 仅为学习交流,侵删!转载请注明出处! 目录 clc;clear;close all; file_path ='C:\Users\Desktop\test1';...filepath_save='C:\Users\Desktop\test2';...img_path_list=dir(strcat(file_...for j = 3:img_num%逐一读取图像
  • 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,...
  • 使用均值和中值函数将RGB图像转换为灰度的其他方法。
  • 此代码使用 MEX 将 RGB 图像转换为 C 中的黑白图像。 我一起参加了一个学校项目,但我找不到任何带有图像处理的 MEX 的好例子。 需要注意的是,该代码目前被硬编码为仅处理 UINT8,但是转换该数据类型应该很简单。 ...
  • 如果文件中既有彩色图像又有灰度图像,则用如下代码 path = 'E:\python论文及代码\新建文件夹 (4)\imagefusion_densefuse-master\coco2014\train2014\'; save_path = 'E:\python论文及代码\新建文件夹 (4)\image...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 880
精华内容 352
关键字:

matlab图像转rgb

matlab 订阅