赛斯拜克中国核心技术品牌 博士专业研发团队   18年专注高光谱

咨询热线:400-888-5135

数据处理:高光谱相机的得力助手

来源:赛斯拜克 发表时间:2023-07-07 浏览量:370 作者:awei

数据处理是高光谱相机应用过程中至关重要的环节。本文将介绍数据处理的概念、方法以及在高光谱相机中的应用。

数据处理:高光谱相机的得力助手

一、数据处理的概念

数据处理是指对原始数据进行加工、处理和分析,从而提取有用信息和知识的过程。在高光谱相机应用中,数据处理主要包括以下几个方面:

预处理:对原始数据进行去噪、平滑、滤波等处理,以消除噪声、提高信噪比和光谱分辨率。

特征提取:对处理后的数据进行特征提取,以便实现对不同类别数据的区分和分类。特征提取方法包括主成分分析、偏最小二乘法、支持向量机等。

分类和识别:利用特征提取的结果,对数据进行分类和识别。常见的分类和识别方法包括最小距离分类、最大似然分类、支持向量机分类等。


二、数据处理的方法

在高光谱相机数据处理中,常用的方法包括:

基于像素的分析方法:对每个像素的数据进行处理和分析,以获取像素的光谱特征。这种方法适用于对单个像素的数据进行处理和分析。

基于区域的分析方法:对图像中的某个区域进行处理和分析,以获取该区域的光谱特征。这种方法适用于对图像中的某个特定区域进行处理和分析。

基于整个图像的分析方法:对整个图像进行处理和分析,以获取整个图像的光谱特征。这种方法适用于对整个图像进行处理和分析。


三、数据处理在高光谱相机中的应用

数据处理在高光谱相机中有着广泛的应用,主要包括以下几个方面:

遥感图像分析:利用数据处理技术对遥感图像进行预处理、特征提取和分类,可以实现对地物的准确识别和分类。

生物医学成像:利用数据处理技术对生物医学图像进行处理和分析,可以帮助医生更准确地诊断疾病。

环境监测:利用数据处理技术对环境监测数据进行处理和分析,可以更准确地监测和评估环境状况。


四、高光谱图像数据处理(格式转换,数据增强,通道剪切,大小裁剪,光谱显示,折线图表示)

(一)高光谱谱格式转换之rar转mat格式

  网上的很多公开高光谱数据集(如cave,icvl等)下载下来是raw格式,而一般用神经网络等方法对高光谱数据进行分类、训练、超分辨的时候,大多使用.mat格式的高光谱数据,碍于网上一直没有一个系统全面的方法,于是我总结了以下方法,分为两步:

   1689041378350


1. 使用ENVI软件读取原格式的高光谱数据,选取需要的光谱通道,裁剪需要的像素区域,转化为.tiff格式保存

2. 使用MATLAB软件编写代码批量将.tiff格式数据转化为mat格式光谱数据

①RAW转tiff步骤:

导入高光谱图像

image.png


选择感兴趣的波段和裁剪区域

1689041441726

保存为tiff格式

image.png


②tiff转mat步骤:

image.png

image.png

%% 读取文件夹里的所有tif文件转化成mat格式(452,25-643.27) 28个通道规格化到0-1之间的测试集

% path='C:HIS-pre-deal430-740粉末New Folder'     %保存放tiff的文件路径

% A = dir(fullfile(path,'*.tif'));

% A = struct2cell(A);

% num = size(A)

% for i=1:num(2)

%         a=A((i-1)*6+1);

%         a=a{1};

%     deal = importdata(a);

%     for j=1:28

%       img(:,:,j)=deal(:,:,20+2*j);

%     end

%     img=single(img)/double(65536);

%     k='C:HIS-pre-deal430-740粉末New Folder';   %保存结果的文件路径

%     kk=num2str(i);

%     kkk='.mat';

%     kkkk=[k,kk,kkk];

% %     save(kkkk,'img')

%  end



(二)两种方法把高光谱图像缩放到0-1的数据集

image.png

%% 把高光谱图像转变成0-1的数据集

% % %% 方法一:

%  img_expand = importdata('15.mat');

% % % img=im2double(img_expand);

% % % save('C:UsersDesktoptest1.mat','img')



% % %% 方法二:

%  c=0;

%  for i=1:31   //通道数为31

%      b=max(max(squeeze(img_expand(:,:,i))));

%      c=max(b,c);

%  end

 %img_h = importdata('test6.mat');

% img=double(img)/double(65536);

% save('C:UsersDesktoptest1.mat','img')


(三)高光谱数据预处理成规定大小和规格的数据集

image.png

%%  高光谱数据预处理成规定大小和规格的数据(660*660*12)   %%%%%%%%

% img_expand = importdata('scene148.mat');

% for i=1:12   //通道数

%     img(:,:,i)=img_expand(1:660,1:660,i);  //长宽

%     %imshow(img(:,:,i))

% end

% save('C:UsersDesktoptest1.mat','img')

(四)高光谱数据增强

由于拍摄的高光谱数据总是有限的,而神经网络需要大量的数据样本来训练拟合,一种行而有效的方式就是数据增强。


①旋转

image.png

%% 读取路径下的所有mat文件,并左旋转90(角度自行修改,右旋类似)

% path='C:HIS-pre-deal'

% A = dir(fullfile(path,'*.mat'));

% A = struct2cell(A);

% num = size(A)

% for i=1:num(2)

%    a=A((i-1)*6+1);

%    a=a{1};

%    deal = importdata(a);

%    for j=1:28

%       dea=imrotate(squeeze(deal(:,:,j)),90);

%       img_hs(:,:,j)=reshape(dea,1,512,512);

%    end

%    kk=num2str(i);

%    k='C:HIS-pre-deal左旋转90';

%    kkk='_左旋.mat';

%    kkkk=[k,kk,kkk];

%    save(kkkk,'img_hs')

% end

②缩放

image.png

%% 第一种缩放形式:对高光谱图像进行大小缩放,并保存到相应文件夹

% size=0.5; //缩放尺度

% for i=1:28

%     deal=img(:,:,i);

%     img_deal(:,:,i)=imresize(deal,size);

% %     subplot(4,7,i)

% %     imshow(deal)

% end

% img=0;

% img=img_deal;

% save('C:HIS-pre-dealDeal-imgscene010.mat','img')

%% 第二种缩放形式:剪切。

% img_hs = importdata('scene200.mat');

% for i=1:24

%     deal=img_hs(100:429,100:429,i);

%     deal=im2double(deal);

%       img(:,:,i)=deal;

% %      subplot(4,7,i)

% %      imshow(deal)

% end

% save('C:HIS-pre-dealDeal-img660-1.mat','img')

(五)论文可用的光谱反射率等曲线对比图画法

%% 人物

% x=[455.65  462.49 469.33 476.17 483.02 489.9 496.78 503.65 510.55 517.45 524.36...

%      531.29 538.21 545.15 552.11 559.06 566.02 573.01 579.99 586.99 594.0 601.0 608.03 615.06 622.1 629.16 636.23 643.27];%x轴上的光谱波段值

%  a=[0.046328  %a数据y值

% 0.042890

% 0.049437

% 0.052339

% 0.055272

% 0.057959

% 0.061730

% 0.064379

% 0.069850

% 0.076214

% 0.089666

% 0.109428

% 0.134469

% 0.151328

% 0.155143

% 0.163445

% 0.160454

% 0.145173

% 0.134909

% 0.119050

% 0.107735

% 0.092402

% 0.078581

% 0.073911

% 0.068458

% 0.066618

% 0.064307

% 0.061029]; %b数据y值

%  b=[0.050210

% 0.048562

% 0.047848

% 0.048780

% 0.053608

% 0.054584

% 0.062421

% 0.066507

% 0.070665

% 0.082705

% 0.092355

% 0.112599

% 0.148814

% 0.160001

% 0.164293

% 0.159431

% 0.150049

% 0.139673

% 0.123176

% 0.113360

% 0.104669

% 0.093209

% 0.083308

% 0.078677

% 0.072299

% 0.070175

% 0.066874

% 0.067031];

%  c=[0.032769 %c数据y值

% 0.033612

% 0.033636

% 0.035964

% 0.039693

% 0.044313

% 0.052775

% 0.061756

% 0.073795

% 0.086206

% 0.102327

% 0.120271

% 0.134366

% 0.143251

% 0.146189

% 0.148024

% 0.140879

% 0.133600

% 0.123866

% 0.112065

% 0.106048

% 0.100711

% 0.092865

% 0.086199

% 0.081167

% 0.077816

% 0.073928

% 0.071923

% ];

%  d=[ 0.039684 %d数据y值

% 0.035936

% 0.039848

% 0.037460

% 0.037582

% 0.042013

% 0.048105

% 0.052788

% 0.059851

% 0.075452

% 0.085753

% 0.104524

% 0.117041

% 0.120392

% 0.119326

% 0.113422

% 0.105514

% 0.094912

% 0.085812

% 0.074321

% 0.067386

% 0.057413

% 0.050733

% 0.040744

% 0.041173

% 0.038101

% 0.035418

% 0.032557];

%  e=[ 0.063452  %e数据y值

%  0.065448 

%  0.066141 

%  0.065247 

%  0.067798 

%  0.072938 

%  0.078020 

%  0.080517 

%  0.084534 

%  0.091731 

%  0.101428 

%  0.109275 

%  0.117019 

%  0.120379 

%  0.117849 

%  0.111377 

%  0.099289 

%  0.085903 

%  0.078416 

%  0.073114 

%  0.068887 

%  0.063553 

%  0.059130 

%  0.057317 

%  0.059024 

%  0.055005 

%  0.057847 

%  0.058094 

% ];

%  f=[0.051219 %f数据y值

% 0.065892

% 0.055956

% 0.049184

% 0.063560

% 0.074998

% 0.060415

% 0.067667

% 0.058828

% 0.079587

% 0.068357

% 0.099085

% 0.098976

% 0.094208

% 0.092482

% 0.093320

% 0.103216

% 0.086699

% 0.078904

% 0.062498

% 0.070742

% 0.068190

% 0.080951

% 0.067120

% 0.067791

% 0.062038

% 0.071721

% 0.071092

% ];

%  g=[0.046503%g数据y值

% 0.054286

% 0.039724

% 0.045279

% 0.055584

% 0.064824

% 0.052188

% 0.051663

% 0.045794

% 0.076992

% 0.065128

% 0.090259

% 0.093017

% 0.084527

% 0.091849

% 0.093118

% 0.110003

% 0.101593

% 0.099130

% 0.087800

% 0.094021

% 0.102329

% 0.105936

% 0.092304

% 0.094816

% 0.089412

% 0.099360

% 0.091986];

%  %  plot(x,a,'-*b',x,b,'-or'); %线性,颜色,标记

% plot(x,a,'-or','LineWidth',1.5,'MarkerSize',3,'MarkerEdgeColor','red','MarkerFaceColor','red');

% hold on;

% plot(x,b,'-ob','LineWidth',1.5,'MarkerSize',3,'MarkerEdgeColor',[0 0.6 1],'MarkerFaceColor',[0 0.6 1]);

% hold on;

% plot(x,c,'--og','LineWidth',1.5,'MarkerSize',3,'MarkerEdgeColor','green','MarkerFaceColor','green');

% hold on;

% plot(x,d,'--o','Color',[1 .5 0],'LineWidth',1.5,'MarkerSize',3,'MarkerEdgeColor',[1 .5 0],'MarkerFaceColor',[1 .5 0]);

% hold on;

% plot(x,e,'--oc','LineWidth',1.5,'MarkerSize',3,'MarkerEdgeColor','cyan','MarkerFaceColor','cyan');

% hold on;

% plot(x,f,'--om','LineWidth',1.5,'MarkerSize',3,'MarkerEdgeColor','magenta','MarkerFaceColor','magenta');

% hold on;

% plot(x,g,'--oy','LineWidth',1.5,'MarkerSize',3,'MarkerEdgeColor','yellow','MarkerFaceColor','yellow');

% hold off;

% axis([450,650,0,0.18])  %确定x轴与y轴框图大小

% set(gca,'XTick',[450:50:650]) %x轴范围1-6,间隔1

% set(gca,'YTick',[0:0.04:0.18]) %y轴范围0-700,间隔100

% legend('Truth','Ours','TSA','λ-net','HSSP','DCSI','TwIST');   %右上角标注

% xlabel('Wavelength(nm)')  %x轴坐标描述

% ylabel('Intensity') %y轴坐标描述

1689041667986


(六)高光谱图像拼接组合

(七)高光谱图像快照式模拟编码

(八)高光谱图像分波段显示

(九)mat转tiff格式

image.png

数据处理是高光谱相机应用过程中至关重要的环节。通过数据处理,可以提取有用信息和知识,为高光谱相机在遥感、生物医学成像、环境监测等领域的应用提供有力支持。随着科技的不断进步,数据处理技术将在高光谱相机应用中发挥越来越重要的作用。


相关产品

高光谱相机知识排行榜top10

高光谱相机知识相关推荐