这个问题有两个部分,在我在标题中提到的部分之前,首先我需要遍历图像中的每个像素(图像有610x340x103),基本上每个i,j坐标给我103个值(深度)。我想知道我写的代码有没有用。如果是这样,它将我带到**第二部分:**我有一个函数,它给我输出“a”,比方说。我把它放在for循环中,所以在每次迭代中,我都会为变量“a”获得一个新值。现在我要做的是从这个“a”变量创建一个610x340维的2D矩阵。这就像我只从这个变量创建我自己的图像。
for i=1:1:610
for j=1:1:340
allbands=paviaU(i,j,:);
writematrix(allbands,'allbands.txt','WriteMode','append');
fftmy=abs(fft(allbands));
fftmynew=fftmy(1:52);
[xData, yData] = prepareCurveData( xaxis2, fftmynew );
% Set up fittype and options.
ft = fittype( 'exp1' );
opts = fitoptions( 'Method', 'NonlinearLeastSquares' );
opts.Display = 'Off';
[fitresult, gof] = fit( xData, yData, ft, opts );
values=coeffvalues(fitresult);
a=values(1);
end
end
那么,对于一个新的2D矩阵,我如何修改这段代码,使其值在每次迭代中都与i和j位于完全相同的位置?
1条答案
按热度按时间4jb9z9bj1#
您只需在循环前初始化
a
并分配给相同的索引