高光谱图像的可视化


红光波段:640-670nm 绿光波段:530-590nm 蓝光波段:450-510nm


一、自定义HSI转RGB函数

输入dataset是一个H ∗ * W ∗ * C的三维numpy数据,返回是H ∗ * W ∗ * 3的三通道RGB的numpy数据

def hsi2rgb(dataset):

    dataset_blu = dataset[:, :, 9]
    dataset_gre = dataset[:, :, 34]
    dataset_red = dataset[:, :, 60]

    nomlize_blu = (dataset_blu - dataset_blu.min()) / (dataset_blu.max()</
### MATLAB 实现高光谱图像可视化 为了实现高光谱图像(HIS)的可视化,可以利用MATLAB内置工具箱以及特定函数来处理和显示这类数据。下面提供一段用于加载、预览及展示高光谱立方体不同波段组合的代码示例。 ```matlab % 加载样本高光谱数据集 datacube = hypercubeload('filename'); % 用户需替换为实际文件路径[^1] % 显示单个波段灰度图 bandIndex = 50; % 可调整此索引查看其他波段 figure; imshow(datacube(:,:,bandIndex), []); title(['Band ', num2str(bandIndex)]); % RGB合成彩色图像 rgbImage = colorizeHSI(datacube); % 假设colorizeHSI是一个自定义函数用来转换成RGB颜色空间 figure; imshow(rgbImage); title('RGB Composite'); % PCA变换降维后的前三个主成分作为RGB通道 pcaComponents = pca(double(reshape(datacube,[],size(datacube,3)))'); reducedData = reshape(pcaComponents(:,1:3)', ... [size(datacube,1), size(datacube,2), 3]); figure; imshow(rescale(reducedData)); title('PCA Reduced Data Visualization'); ``` 上述脚本展示了三种常见的高光谱图像可视化方式:单一波段灰度级表示法、多波段合成为真彩或伪彩图片的方法,还有通过主成分分析(Principal Component Analysis, PCA)降低维度后再映射到红绿蓝三原色的方式。 值得注意的是,在真实应用场景中,`hypercubeload()` 和 `colorizeHSI()` 函数需要依据具体的数据格式自行编写或者调用第三方库提供的相应接口完成读取操作与色彩映射逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值