光谱测量数据处理(matlab)

  • 一、数据格式
  • 二、数据处理
    • 2.1 数据导出
    • 2.2 数据处理
    • 2.3 处理结果
  • 三、地物光谱特征分析
    • 3.1 光谱曲线平滑
    • 3.2 光谱曲线一阶导数

一、数据格式

导出文件:

文件内容:

内容说明:

Column name
1 Wavelengths (nanometers)
2 Reference Values (see below)
3 Target Values (see below)
4 Reflectance (percent)

二、数据处理

2.1 数据导出

将光谱仪测的不同地物的光谱数据以SVC软件中导出到计算机中,并按不同地物类型存储在不同Excel表格中。

2.2 数据处理

(一)原理公式


实验采用垂直测量方法,计算公式为


式中,L——测得地物反射辐射通量,Rr 为白板反射率(已知) ; Lr 为测得白板反射辐射能量;

(二)处理步骤

Step1:共100多组数据,观察每个数据的图片结合实地记录筛选可以利用的数据

Step2:由于仪器光谱突变,将筛选好的数据进行在SVC HR软件中的平滑操作(overlay)

Step3:将处理后的数据去除文件头,生成裸数据并保存到txt文本文件中

Step4:求每类地物的光谱数据平均值,生成每类地物的光谱数据

Step5:由于白板反射率波段和每类地物的光谱波段不匹配,对实测数据进行插值

Step6:根据反射率公式选取文件中第四列数据(百分比)与白板反射率的相乘操作

Step7:根据不同需要进行制图输出

(三)matlab处理代码

%----------------------------------------------------------------
%光谱处理代码
%
%时间:2019年6月19日
%----------------------------------------------------------------
%去除文件头代码
%输入.sig文件fileFolder=fullfile('E:\2019-06-11-下');%引号内是需要遍历的路径,填绝对路径,然后保存在fileFolderdirOutput = dir(fullfile(fileFolder,'*.sig'));%引号内是文件的后缀,写'.txt'则读取后缀为'.txt'的文件fileNames = {dirOutput.name};%将所有文件名,以矩阵形式按行排列,保存到fileNames中for i=fileNamesi_trace = strcat('E:\2019-06-11-下\',i)%将字符串组合起来i_trace=char(i_trace)i=char(i)ind=findstr(i-1,'.');i=i(1:ind)M = dlmread(i_trace,'',25,0)i_trace_txt=strcat('E:\2019-06-11-下\',i,'txt')%num1, num2, num3, num4]=textread(i_trace,'%f %f %f f','headerlines',29);% A={num1,num2,num3,num4};% eval(['T',num2str(n),'=','load(i_trace{1,1})',';']);dlmwrite(i_trace_txt, M, 'delimiter', '\t','precision', 6,'newline', 'pc')end%生成平均值代码clc;clear all;close all;fileFolder=fullfile('E:\txt\柏油路');%引号内是需要遍历的路径,填绝对路径,然后保存在fileFolderdirOutput=dir(fullfile(fileFolder,'*.txt'));%引号内是文件的后缀,写'.txt'则读取后缀为'.txt'的文件fileNames={dirOutput.name};%将所有文件名,以矩阵形式按行排列,保存到fileNames中sumM = zeros(741,2);for i=fileNamesii_trace = strcat('E:\txt\柏油路\',i); %将字符串组合起来i_trace=char(i_trace);i = char(i);ind=findstr(i,'.');i=i(1:ind-1);M = dlmread(i_trace,'',0,0);sumM(:,1) = M(:,1);sumM(:,2) = sumM(:,2) + M(:,4);%i_trace_txt=strcat('E:\2019-06-11-下\ave.txt''.txt');%dlmwrite(i_trace_txt, M, 'delimiter', '\t','precision', ,'newline', 'pc') endsumM;aveM(:,1)=sumM(:,1);aveM(:,2)=sumM(:,2)/11.0;aveMsave('E:\txt\柏油路\ave.txt','aveM','-ascii');%插值以及计算反射率代码
clc;
clear all;
close all;
fileName='E:\txt\110-116   118-121小路\ave.txt';
[Target_Lambda,Target_Percent]=textread('E:\txt\110-116   118-121小路\ave.txt','%f %f','headerlines',0);
% M = dlmread('E:\txt\柏油路\ave.txt','',0,0)
% title('柏油路光谱曲线',);
[Whiteboard_Lambda,Whiteboard_Reflectance]= textread('E:\白板定标文件.txt',' %f %f','headerlines',10);
Target_interp = interp1(Target_Lambda,Target_Percent,Whiteboard_Lambda);
Target_Reflectance=Target_interp.*Whiteboard_Reflectance;
A=zeros(957,2);
A(:,1)=Whiteboard_Lambda;
A(:,2)=Target_Reflectance;
save('E:\txt\110-116   118-121小路\光谱曲线.txt','A','-ascii');

处理后导出数据

%制图输出figure,plot(Whiteboard_Lambda,Target_Reflectance);hold on;plot(Whiteboard_Lambda,Target_interp);legend('柏油路反射率','柏油路百分比原图像', 'Location', 'SouthEast');xlabel('波段(nm)','fontsize',12,'fontweight','bold','color','b');ylabel('反射率/百分比(%)','fontsize',12,'fontweight','bold','color','b');title('柏油路反射率和百分比','fontsize',15,'fontweight','bold');grid on;figure,plot(Whiteboard_Lambda,Target_Reflectance);% legend('柏油路反射率', 'Location', 'SouthEast');xlabel('波段(nm)','fontsize',12,'fontweight','bold','color','b');ylabel('反射率(%)','fontsize',12,'fontweight','bold','color','b');title('柏油路反射率','fontsize',15,'fontweight','bold');grid on;

2.3 处理结果

三、地物光谱特征分析

3.1 光谱曲线平滑

(一)处理代码

% smooths平滑操作代码
Reflectance_Smooth = smooth(Target_Reflectance,30,'lowess');
figure,
plot(Whiteboard_Lambda,Reflectance_Smooth);

(二)处理结果

3.2 光谱曲线一阶导数

(一)处理代码

% 一阶导数代码
figure,
plot(Whiteboard_Lambda,Reflectance_Smooth);
h=get(gca,'children')
x = get(h,'XData');
y = get(h,'YData');
dy = diff(y) ./ diff(x);
axis tight;
plot(x(1:end-1),dy,'r')
xlabel('波段(nm)','fontsize',12,'fontweight','bold','color','b');
ylabel('导数','fontsize',12,'fontweight','bold','color','b');
title('柏油路反射率:一阶导数','fontsize',15,'fontweight','bold');
% legend('柏油路反射率:一阶导数');
grid on;

(二)处理结果

光谱测量数据处理(matlab)相关推荐

  1. 数据处理 | MATLAB实现KNN(K近邻)缺失数据填补

    数据处理 | MATLAB实现KNN(K近邻)缺失数据填补 目录 数据处理 | MATLAB实现KNN(K近邻)缺失数据填补 基本介绍 插补描述 程序设计 参考资料 基本介绍 用于缺失值插补的单变量方 ...

  2. gps数据处理matlab,基于Matlab的数据处理方法在GPS高程拟合中的应用

    基于Matlab的数据处理方法在GPS高程拟合中的应用 在分析GPS高程异常拟合模型实质的基础上,结合工程实例,顾及地球重力场的空间连续性特点,运用Matlab中的拟合插值函数Griddata等进行高 ...

  3. matlab风压风量,【原创】通风机空气动力性能测试数据处理Matlab代码

    %通风机空气动力性能测试数据处理 % by dynamic of Matlab技术论坛 % see also http://www.matlabsky.com % contact me matlabs ...

  4. 大学物理的密里根油滴实验的数据处理MATLAB程序!~一键直达结果,方便快捷(浙大)

    还在为密里根油滴实验的数据处理担心嘛? 没关系,只要宁有matlab我帮你处理. 代码: 把这里的数据样例删掉 把这里的UIT改为你的数据输入后运行就可以咯! 如果l 都一样,那就输入一次.注意按照次 ...

  5. 操纵稳定性数据处理matlab,基于Matlab汽车操纵稳定性仿真方法的研究

    基于Matlab汽车操纵稳定性仿真方法的研究 本文采用线性二自由度车辆模型做汽车操纵稳定性研究,基于Matlab/Simulink软件,分别运用子系统模型框图.状态空间模型框图与 (本文共5页) 阅读 ...

  6. nmea-0183数据处理matlab,Matlab分析NMEA0183报文源代码(含高斯6度带投影计算)

    clc clear all close all format long g FILE_NAME = 'D:/data6/RxCOM6_20190528gps.dat'; fid = fopen(FIL ...

  7. Stata和Matlab联合处理金融数据

    Stata是统计学专业软件,可以很方便的对数据处理,但几乎只能按照整行整列进行,而且每次只能加载一个矩阵(dta文件),如果要用到多个矩阵数据进行操作或进行复杂的循环控制,就力不从心了. 而Matla ...

  8. matlab输出lccde_Matlab与Visual C++混合编程处理全站仪数据的方法

    Matlab 与 Visual C++ 混合编程处理全站仪数据的方法 胡加星,刘立龙,刘靖晔 [摘 要] 内业数据检核中经常要对点的外业实测坐标与内业成图后的坐标进行 比较,以此来发现是否出现造点或是 ...

  9. matlab的workspace在哪,matlab中的workspace

    将 From Workspace 模块 加入积分模块 的 x0 端口.From Workspace 中设置你在 matlab 命令 窗口中输入的变量 名. ---simulink 如何调用 m 文件 ...

最新文章

  1. rabbitmq几种工作模式_RabbitMQ六种队列模式-简单队列模式
  2. vs2005新建类,自定义模板信息(转载)
  3. mysql中ibatis的limit动态传参
  4. WCF Service 配置文件注释(转)
  5. 探索MicroPython(二)--搭建开发环境
  6. 数据库每日一题 2020.05.09
  7. Ros学习笔记(一)创建工作空间
  8. 2019南昌网络赛H The Nth Item(二阶线性数列递推 + 广义斐波那契循环节 + 分段打表)题解...
  9. ISO/IEC17025与ISO9000族标准的区别和联系
  10. 机器人动力学与控制_机器人领域值得一看的好书推荐
  11. ios微信消息自动朗读_如何使您的iOS设备大声朗读文章,书籍和更多内容
  12. no output folder解决方案
  13. vim 修改注释颜色 tab键
  14. 【小程序精品源码系列】小说阅读器
  15. bootstrap按钮组btn-group
  16. 企业内部控制管理与全面风险管理体系建设知识问答
  17. 少儿编程有多火,家长就有多焦虑...
  18. Microsoft .NET PetShop 4.0 架构与技术分析(七)
  19. 《白日梦想家》The Secret Life of Walter Mitty :感谢一场白日梦
  20. 查看kafka的topic清单以及topic的内容

热门文章

  1. DLT645-2007电能表通讯协议+DDSY5188电能表之间通讯简介
  2. IOS 苹果手机fiddler抓包时出现了tunnel to 443 解决方案,亲测有效
  3. 我被“裸聊APP”诈骗了[病毒分析]
  4. 944页40万字智能矿山项目建设整体解决方案(煤矿)2021
  5. 【笔记】个人网站建站不要用前后端分离!!!!!- 对前后端分离的个人看法
  6. 计算机技术五行属什么,计算机属于哪个五行属性 五行属火
  7. sqlserver列转行,纵向数据转横向
  8. 网易(杭州研究所)初面
  9. 英语词根基础知识-辅音音变1
  10. 量变与质变(生活中,技术上)