📄 rxalgorithm.m
字号:
function RxValue=RXAlgorithm(HyperCube)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%RX algorithm
%parameter:
% HyperCube 输入cube
% RxValue rx算法得出的值,类型为double
%reference:
% 使用的为全局均值与协方差
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% HyperCube = ImageInput(0);
gray=double(HyperCube);
[m,n,l]=size(gray);
grayVector=reshape(gray,m*n,l);%row:m*n,columm:l
xMat=grayVector';%row:l,columm:m*n
Mean=mean(grayVector);
M=repmat(Mean',1,m*n);%l X mn
u=(xMat-M)*(xMat-M)'/(m*n-1);%样本协方差阵
uInverse=inv(u);%!!
for i=1:m*n
x=xMat(:,i);
rxVector(i)=(x-Mean')'*uInverse*(x-Mean');
end
rx=reshape(rxVector,m,n);
RxValue=double(rx);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -