多元散射校正MSC - 免费下载
技术资料资源
文件大小:15 K
💡 温馨提示:本资源由用户 15275387185 上传分享,仅供学习交流使用。如有侵权,请联系我们删除。
function [R,k,b] = msc(A)
% 多元散射校正
% 输入待处理矩阵,通过多元散射校正,求得校正后的矩阵
%% 获得矩阵行列数
[m,n] = size(A);
%% 求平均光谱
M = mean(A,2);
%% 利用最小二乘法求每一列的斜率k和截距b
for i = 1:n
a = polyfit(M,A(:,i),1);
if i == 1
k = a(1);
b = a(2);
else
k = [k,a(1)];
b = [b,a(2)];
end
end
%% 求得结果
for i = 1:n
Ai = (A(:,i)-b(i))/k(i);
if i == 1
R = Ai;
else
R = [R,Ai];
end
end