之前使用MATLAB显示多光谱或高光谱的单波段影像,但在数据处理时,实时可视化高光谱或多光谱的RGB图像更省时。
先看看效果图吧:
一、安装Image Processing Toolbox Hyperspectral Imaging Library扩展包
1. 进入下载地址 https://ww2.mathworks.cn/matlabcentral/fileexchange/
2. 在搜索框输入Image Processing Toolbox Hyperspectral Imaging Library,

3. 点击“下载",在这一步可能会要求我们注册,按照页面提示注册完成就可以下载了。

4. 下载完成之后,用MATLAB打开下载的hyperspectral.mlpkginstall文件,并按照教程安装。

5. 安装完成后就可以看到对应的工具了

二、关键代码和效果展示
% 首先读取文件
data = load([path 'NAME.mat']);
Img = data.file;
% 设置波段和波长范围。下面是128个波段,362nm-1018nm
wavelength = linspace(362,1018,128);
hcube = hypercube(Img,wavelength);
% 使用Toolbox工具中的函数加载图像
rgbImg = colorize(hcube,'Method','RGB','ContrastStretching',true);
% 显示RGB图像
subplot(1,2,1);
imshow(rgbImg);
title('RGB IMG');
% 显示单波段图像
subplot(1,2,2);
imshow(mat2gray(Img(:, :, 27)));
title('SINGLE BAND IMG');


本文介绍了如何在MATLAB中利用ImageProcessingToolbox的HyperspectralImagingLibrary扩展包,实现实时高光谱或多光谱数据的RGB图像处理,包括文件读取、波段选择、色彩转换和单波段图像显示。

1万+

被折叠的 条评论
为什么被折叠?



