colormap是MATLAB里面用来设定和获取当前色图的函数。
下面将举例、描述MATLAB内建的色图。用户除了可以编程指定MATLAB内建的色图,还可以使用Plot Tools图形用具界面的Figure Properties面板中的Colormap菜单来选择一种色图。
autumn 从红色平滑变化到橙色,然后到黄色。
bone 具有较高的蓝色成分的灰度色图。该色图用于对灰度图添加电子的视图。
colorcube 尽可能多地包含在RGB颜色空间中的正常空间的颜色,试图提供更多级别的灰色、纯红色、纯绿色和纯蓝色。
cool 包含青绿色和品红色的阴影色。从青绿色平滑变化到品红色。
copper 从黑色平滑过渡到亮铜色。
flag 包含红、白、绿和黑色。
gray 返回线性灰度色图。
hot 从黑平滑过度到红、橙色和黄色的背景色,然后到白色。
hsv 从红,变化到黄、绿、青绿、品红,返回到红。
jet 从蓝到红,中间经过青绿、黄和橙色。它是hsv色图的一个变异。
line 产生由坐标轴的ColorOrder属性产生的颜色以及灰的背景色的色图。
pink 柔和的桃红色,它提供了灰度图的深褐色调着色。
prism 重复这六种颜色:红、橙、黄、绿、蓝和紫色。
spring 包含品红和黄的阴影颜色。
summer 包含绿和黄的阴影颜色。
white 全白的单色色图。
winter 包含蓝和绿的阴影色。
Matlab使用colormap实现普通图像转成热图 Heatmap
一,该热图特点:原图像中像素值越大,在热图上就越红,反之就越蓝。
二,效果图
三,Matlab代码:
clc;
clear;
smap = imread('P1.jpg'); // 一定要是单通道图
% 缩放图片大小,使得图像大小和Figure窗口大小一样
smap = imresize(smap, [320, 640]);
set (gcf,'Position',[0,0,640,320]); % 前两个定义窗口在屏幕的位置,后两个窗口大小
% 使图像自适应填满窗口
imshow(smap,'border','tight','initialmagnification','fit');
colormap(jet); % jet是matlab自带彩色方法,也其他方法,或自定义
% 保存生成的热图
F=getframe(gcf);
imwrite(F.cdata, 'P1_color.jpg');
% 关闭生成的窗口
% close;
注意:原图需要时单通道图像,生成的图像是三通道图像