⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dataread.m

📁 该matlab程序包实现从Ocean Optics s2000型号的光谱仪采集数据文件中读取数据
💻 M
字号:
% Read raw data,splined 532nm,select data spectrum range from 369-691nm
% 读取一种光谱
function d=DataRead(file_path,dstart,spectrum_length,noise_length)    % file_path:文件夹路径;dstart:文件开始序号

% spectrum data
datastart=dstart;
dataend=dstart+spectrum_length-1;

% dark noise
nstart=dstart+spectrum_length+1;
nend=dstart+spectrum_length+noise_length-1;
% 
% % 读取噪声文件,并求平均计算背景噪声
noise_sum=zeros(2048,1);
for i=nstart:nend
    numstr=int2str(i);
    if i<10
        file_name=strcat(file_path,'.','000000',numstr,'.','Master','.','Scope');
    elseif i<100
        file_name=strcat(file_path,'.','00000',numstr,'.','Master','.','Scope');
    elseif i<1000
        file_name=strcat(file_path,'.','0000',numstr,'.','Master','.','Scope');
    else
        file_name=strcat(file_path,'.','000',numstr,'.','Master','.','Scope');
    end
    noise_data=new_load(file_name);
    noise_sum=noise_sum+noise_data(:,2);
end
noise_sum=noise_sum./(nend-nstart+1);

% 读取信号文件,利用三次样条插值去除532nm处的波长影响
a=zeros(2048,1);
for i=datastart:dataend
    numstr=int2str(i);
    if i<10
        file_name=strcat(file_path,'.','000000',numstr,'.','Master','.','Scope');
    elseif i<100
        file_name=strcat(file_path,'.','00000',numstr,'.','Master','.','Scope');
    elseif i<1000
        file_name=strcat(file_path,'.','0000',numstr,'.','Master','.','Scope');
    else
        file_name=strcat(file_path,'.','000',numstr,'.','Master','.','Scope');
    end
    temp_data=new_load(file_name);
    a=a+temp_data(:,2);  
end

a=a./(dataend-datastart+1);
a=a-noise_sum;
%interporate
num=1;
    for n=96:1004                              % 波长范围 369.8-691.6nm
        x(n-95)=temp_data(n,1);
        if(n<510||n>560)
            xx(num)=temp_data(n,1);
            yy(num)=a(n,1);   
            num=num+1;
        end
    end

% wavelength=temp_data(:,1);
% index=find((wavelength>369.8) & (wavelength<691.6));
% xx=wavelength(index);
% yy=a(index);
% x=wavelength();
d=spline(xx,yy,x)';  



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -