MATLAB RGB三波段图 自用

在Matlab中,可以使用以下步骤将三个波段生成RGB图像:

读取三个波段的图像数据。假设三个波段的图像文件分别为band1.tif、band2.tif和band3.tif,可以使用imread函数读取这些图像数据:
Matlab
band1 = imread(‘band1.tif’);
band2 = imread(‘band2.tif’);
band3 = imread(‘band3.tif’);
将每个波段的图像数据进行归一化处理,使其数值范围在0到1之间。可以使用mat2gray函数实现:
Matlab
band1_norm = mat2gray(band1);
band2_norm = mat2gray(band2);
band3_norm = mat2gray(band3);
创建一个空的RGB图像矩阵,大小与原始波段图像相同。可以使用zeros函数创建一个全零矩阵,并指定大小和数据类型:
Matlab
rgb_image = zeros(size(band1), ‘uint8’);
将归一化后的波段图像数据分别赋值给RGB图像的相应通道。假设将第一个波段赋值给红色通道,第二个波段赋值给绿色通道,第三个波段赋值给蓝色通道:
Matlab
rgb_image(:,:,1) = band1_norm;
rgb_image(:,:,2) = band2_norm;
rgb_image(:,:,3) = band3_norm;
可选:如果需要显示生成的RGB图像,可以使用imshow函数进行显示:
Matlab
imshow(rgb_image);
以上是将三个波段生成RGB图像的基本步骤。请注意,生成的RGB图像可能需要进行进一步的调整和处理,以获得更好的视觉效果。

伪色彩图

https://blog.csdn.net/qq_34872636/article/details/110941447

(1)
clear all; clc;
% 读取影像
filename1 = 'a.tif';
filename2 = 'b.tif';
img1      = geotiffread(filename1);
%geotiffread是MATLAB中的一个函数,用于读取GeoTIFF格式的地理空间图像数据。
img2      = geotiffread(filename2);

(2)
%% 编辑colormap
figure(1)
colormap jet
colormapeditor
imagesc(img)

(3)
%% 保存colormap,并在第二张图像上使用

% gca表示当前的图,因为现在matlab中的colormap不再与figure关联,而是和axes关联,因此要使用mycmap =
% colormap(gca),而不是 mycmap = get(figure(1),'Colormap'); 
mycmap = colormap(gca);  
save('MyColormaps','mycmap');
load('MyColormaps','mycmap');
figure(2)
set(figure(2),'Colormap',mycmap);
imagesc(img_R);
%imagesc(img_R)是MATLAB中的一个函数,用于绘制矩阵或图像的伪彩色图。它将矩阵中的每个元素的值映射到不同的颜色,并将其显示在一个坐标轴上。

(4)
%%
load('MyColormaps','mycmap');
figure(1)
set(figure(1),'Colormap',mycmap);
imagesc(img1)

figure(2)
set(figure(2),'Colormap',mycmap);
imagesc(img2)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值