rgb图像化为灰度图是很容易的,matlab具有自带函数。
灰度图化为rgb图像:Google所得到的参考答案:
https://www.mathworks.com/matlabcentral/answers/377407-how-to-convert-grayscale-to-rgb
https://www.mathworks.com/matlabcentral/answers/69368-how-to-convert-gray-scale-image-into-rgb-image
https://www.cnblogs.com/minisculestep/p/4878894.html
翻译如下:
问题:如何转变灰度图为rgb图像?

我使用下面脚本转换灰度图至rgb图像:

[im, map] = imread('frame1.jpg');
if(isempty(map))                        % image is RGB or grayscaleif(size(im, 3) == 1)                  % image is grayscaleim = cat(3, im, im, im);end
else                                    % image is indexedim = ind2rgb(im, map);
end

其中 frame1是灰度图。问题是:当我执行imshow(im)时,它仍然没有颜色,但是size(im)是144 176 3,我很困惑,我怎么才能得到有颜色的图像呢?

答:

所有的代码都在执行:

im=cat(3,im,im,im)

创建了144x176x3矩阵,其中im(:,:,1)与im(:,:,2)相同,im(:,:,3)相同。因此,红色、绿色和蓝色的分量是相同的,因此图像仍然是“灰度图”

您可以使用ind2rgb()应用各种颜色映射

map = hsv(256);                          % Or whatever colormap you want.
rgbImage = ind2rgb(im, map);             % im is a grayscale or indexed image.

使用颜色映射类型,因为您对感兴趣的颜色区域感兴趣,我认为任何颜色映射格式都足够了。例子:

   close allclear clc % just to clear things upI=imread('333.jpg');R=rgb2gray(I);                        % It is gray nowy=colormap(hot(110));imwrite(R,y,'rgb.jpg','jpg');         % Re-change it to colored one imshow('rgb.jpg');

如果您的初始图像是单色的,则无法确定原始颜色。你不能。如果你只有灰度图像就不是这样了。
可以使用cat()将灰度图像转换为RGB图像:

rgbImage = cat(3, grayImage, grayImage, grayImage);

当然,它会看起来所有的灰度,即使它是一个“真正的颜色”RGB图像-只是所有的“颜色”都是灰色的。您可以对灰度值应用伪颜色查找表,将每个灰度值映射到某个颜色,以得到一个多色图像,如下所示:

rgbImage = ind2rgb(grayImage, jet(256));

然而,这些颜色并不是虹膜的原始颜色,就像你用彩色相机拍下的那样。

如何把灰度图变为rgb图像相关推荐

  1. 灰度图、RGB图的区别

    一.灰度图 灰度图就是单通道图像,而单通道图是指维度数为2的图像. 而灰度就是没有色彩,RGB色彩分量全部相等(可将这点与下文的RGB图进行对比).那么灰度图的每个像素点就只有一个值表示颜色,像素值的 ...

  2. 灰度图转RGB(伪彩色图)

    灰度图转RGB(伪彩色图) 前言 代码 参考 前言 灰度图可以转化成伪彩色图以显示出更多的细节,简单整理了三种转化的方法,结合openCV通过C++进行了实现. 代码 该函数将二维数组转化为伪彩色图并 ...

  3. matlab灰度图转rgb原理,RGB图像转化为灰度图原理以及MATLAB实现

    RGB图像转化为灰度图原理以及MATLAB实现 1 原理 在RGB彩色模型中表示的图像由三个分量图像组成,每种原色一幅分量图像.利用MATLAB对图像进行读取,可以知道存储RGB图像数据为256*25 ...

  4. 【图像增强】灰度图与RGB图Clahe的python实现

    Clahe:Contrast Limited Adaptive Histogram Equalization 对比度受限的自适应直方图均衡化 Clahe的理论解释:   Clahe理论详解1   Cl ...

  5. PIL保存二维numpy数组(2,2)为灰度图和RGB图

    如果使用cv2,直接保存二维数组就可以了,只是只能保存为灰度图(8bit):如果偏要保存为RGB图,则需要使用np.stack进行深度的堆叠(每个深度R/G/B的值是相同的),然后再保存就是RGB图了 ...

  6. python将灰度图转换为RGB彩色图

    代码如下: from PIL import Image import ospath = r'图片存储的路径' newpath = r'转换后存储图片的路径'def RGBtoGray(path):fi ...

  7. 将三张灰度图转换为RGB三通道图片python

    import cv2 import numpy as np from PIL import Image import matplotlib.pyplot as plt #使用cv2读取图片 img = ...

  8. 根据RGB图像中颜色值生成标签灰度图,

    1.前言: 代码目的:将RGB图像中不同的颜色生成标签灰度图,cyan[青蓝色]映射为0,red[红色]映射为1,yellow[黄色]映射为2 2.代码 # -*- coding: utf-8 -*- ...

  9. RGB图转为灰度图的方法

    我们日常的环境通常获得的是彩色图像,很多时候我们常常需要将彩色图像转换成灰度图像.也就是3个通道(RGB)转换成1个通道. (1)平均法 最简单的方法当然就是平均法,将同一个像素位置3个通道RGB的值 ...

最新文章

  1. IndentationError: unexpected indent
  2. Django+Bootstrap+Mysql 搭建个人博客(五)
  3. 每日一皮:你偷偷藏私房钱时被老婆发现的样子...
  4. ETHREAD 结构体属性介绍
  5. 大omega记号_什么是大欧米茄符号?
  6. Java匹马行天下之学编程的起点——高级语言大锅烩
  7. 用python模拟微信支付_微信app支付python代码实现
  8. 最速下降法 理论证明
  9. python在d盘创建txt文件_python中如何创建一个txt文件
  10. 【Excel】两组行数不同数据做二维柱状图
  11. 一、Maven-单一架构案例(创建工程,引入依赖,搭建环境:持久化层,)
  12. c语言json使用,cJSON使用(二)
  13. 使用Zxing在Java中生成QR码
  14. 【msvcr120.dll下载】msvcr120.dll丢失怎么修复
  15. Oracle语句详解
  16. 一个完整简单而又强力的计算器程序--用python实现(Python3.7)
  17. Centos7登陆颜色修改#PS1
  18. IMS QTI 实践指南 | 01 简单题型 Simple Items
  19. java免费批注组件_Java给Word某个字串加批注
  20. 怎么理解幂等性[或者http幂等性]

热门文章

  1. 写的另一款安全期避孕计算软件 (ISEX安全期计算) 强力推荐!
  2. JAVA 生成文件目录树-json串
  3. 推荐几个好用的文字生成创意绘画软件,帮你轻松拓展创意
  4. SIL,PL等基础概念简介
  5. 开源免费,自己用Java撸一个在线云盘
  6. 详述Servlet获取form表单数据
  7. 常见数据库时间戳格式化函数及用法(按时区格式化时间戳),java计算时区值
  8. C6: 基金的净值, 拆分折算, 估值和累计净值
  9. 【199天】黑马程序员27天视频学习笔记【Day15-16复习脑图】
  10. 领域驱动的一些核心概念