首先强调:在matlab中用[row,col]=size(x)获取的行和列是与图片编辑器显示的行列相反。

首先RGB图转为灰度图,通过rgb2gray()函数;灰度图中每个像素点的灰度值根据三个分段线性函数分别映射到R,G,B三个维度,再通过叠加生成伪彩色图。

三个分段线性函数图如下:

matlab程序如下:

​
%%
%题目:基于灰度变换的伪彩色方法
%意义:将亮度低的映射为蓝色(冷色),亮度高的映射为红色(暖色)。
%方法:分别用三个矩阵保存,三个通道的灰度值。每个通道的灰度值,有不同的映射函数。
% 输入灰度级        输出彩色
% 0~63  1/4         蓝色
% 64~127 2/4        紫色
% 128~191 3/4       黄色
% 192~255  4/4      红色
%%
clc;
clear;
grayImage=rgb2gray(imread('C:\Users\ch\Desktop\1_0°.bmp'));
figure,imshow(grayImage);
[row,col]=size(grayImage);
range=255;%每个通道的最大灰度值R = zeros(row,col);
G = zeros(row,col);
B = zeros(row,col);
%%
for i=1:rowfor j=1:colif grayImage(i,j)<=range/4 % [0,64]偏蓝R(i,j)=0;G(i,j)=4*grayImage(i,j);B(i,j)=range;elseif grayImage(i,j)<=range/2 % (64,128] 偏紫R(i,j)=0;G(i,j)=range;B(i,j)=-4*grayImage(i,j)+2*range;elseif grayImage(i,j)<=3*range/4% (128, 192]R(i,j)=4*grayImage(i,j)-2*range;G(i,j)=range;B(i,j)=0;elseR(i,j)=range;G(i,j)=4*(range-grayImage(i,j));B(i,j)=0;endend
end
%%
out = zeros(row,col);
for i=1:rowfor j=1:colout(i,j,1)=R(i,j);out(i,j,2)=G(i,j);out(i,j,3)=B(i,j);end
endout=out/256;
figure,imshow(out);​

原图:

伪彩色图:

在此感谢:https://blog.csdn.net/jizhidexiaoming/article/details/80255383

图像处理之灰度图转伪彩色图原理与代码分析相关推荐

  1. opencv遍历实现灰度图转伪彩色图[C/C++][附applyColorMap方法]

    灰度图转伪彩色图 数字图像处理的作业,利用opencv实现通过灰度隐射将灰度图转化为伪彩色图. 效果大概如下,在最后附带opencv自带函数处理的方法 原图 遍历图 opencv的 applyColo ...

  2. 数字图像处理--灰度图转伪彩色图

    开篇废话 观察了一下冈萨雷斯的书,发现彩色图像处理仅仅用了一章进行介绍,原因分析了一下,后来发现,好像别的介绍的也不多,得出一个结论.冈萨雷斯这本书仅仅能作为一部纲领性的介绍.它基本涵盖了图像处理的基 ...

  3. python彩虹图_灰度图转伪彩色图和彩虹图,基于OpenCV 2.4.3

    做东西需要用到灰度转伪彩显示,毕竟嘛,人眼对彩色的分辨远远高于对灰度的分辨. 本来想这么成熟的东西网上肯定有代码,我勒个擦,找了一圈都是不知所云的东西,还是自己写一个吧!!!! 废话不说了,代码是码农 ...

  4. matlab灰度图转伪彩色,[转载]灰度图转伪彩色图和彩虹图,基于OpenCV 2.4.3

    做东西需要用到灰度转伪彩显示,毕竟嘛,人眼对彩色的分辨远远高于对灰度的分辨. 本来想这么成熟的东西网上肯定有代码,我勒个擦,找了一圈都是不知所云的东西,还是自己写一个吧!!!! 废话不说了,代码是码农 ...

  5. C#灰度图转伪彩色图

    /// <summary>/// 伪彩色图像构造器/// </summary>public class PseudoColorImageBuilder{/// <summ ...

  6. Labview实现图片24bit转变为8bit及灰度图的伪彩显示

    原图: 伪彩显示效果: 24bit转换为8bit程序框图: 伪彩显示程序框图: VI链接:Labview实现图片24bit转变为8bit及伪彩显示的源码-C文档类资源-CSDN下载 参考了这两位博主的 ...

  7. opencv将灰度图转为彩色图

    使用opencv将一幅灰度图转为彩色图. 使用函数:cvtColor(); Mat imgGray= imread("gray.jpg",0);     Mat imgRGB;   ...

  8. c++ opencv 灰度图转彩色图

    灰度图转彩色图______主要作用:在图上画彩色线条等等 //灰度图转彩色图 cv::Mat grayToRGB(const cv::Mat input_img) {//创建一个和灰度图一样大小的0值 ...

  9. 免费的Lucene 原理与代码分析完整版下载

    Lucene是一个基于Java的高效的全文检索库. 那么什么是全文检索,为什么需要全文检索? 目前人们生活中出现的数据总的来说分为两类:结构化数据和非结构化数据.很容易理解,结构化数据是有固定格式和结 ...

最新文章

  1. linux shell脚本中调用另一个shell脚本
  2. 08.suggester02term_suggester
  3. 【NOI2016】循环之美【莫比乌斯反演】【整除分块】【杜教筛】【类杜教筛】
  4. 儿童学文字编程python_手把手教你python数字知识
  5. Jeecg-P3 1.0.1版本发布,轻量级微服务框架
  6. Matlab定义符号函数(ZZ)
  7. 参考文献的序号怎么对齐_学术论文发表写作格式、具体要求和参考文献的要求模板...
  8. mysql sql长度限制_SQL限制– MySQL限制
  9. ANT HelloWorld
  10. JQValidate使用说明
  11. Java springcloud B2B2C o2o多用户商城 springcloud架构- ribbon
  12. 【威联通Nas】安装docker版本的wiznote/wizserver
  13. 【高德地图】------- JavaScript实现高德地图经纬度获取地址位置
  14. npp++常用的匹配正则表达式
  15. 叉积求点到平面距离_平面方程怎么求
  16. eighth day for learning
  17. STM32F407ZGT6|实现中断操作
  18. 平移、旋转和缩放矩阵推导
  19. 着力抓好服务中心建设,实现网格综治一体化管理
  20. Metal 框架之使用 Metal Debugger 查看 GPU 工作负载

热门文章

  1. U大师一键备份还原系统操作步骤,教你电脑一键备份还原怎么用
  2. 视频mkv格式怎么转换成mp4,简单实用的步骤
  3. 鱼c工作室python-鱼C工作室Python作业
  4. Android弹力球小游戏案例
  5. 对世界保持一份好奇心,或将改变你平淡的一生
  6. NGB——下一代广播电视网 和统一通信
  7. 耐驰测试仪上的软件,其他仪器的数据如何导入到耐驰分析软件?_热分析仪仪器社区_仪器信息网论坛...
  8. 陶泓达:3.30晚间美盘最新走势分析及操作思路!
  9. multipartfile获取数据_multipartfile测试接口
  10. commons-lang 简介、中文文档、中英对照文档 下载