Matlab 如何在for循环中保存而不覆盖

Matlab 如何在for循环中保存而不覆盖,matlab,Matlab,我使用的tiff图像有1000帧。为了追踪物体从一帧到另一帧的位置,我已经确定了物体的中心和半径。现在,我需要指定帧的编号,在for循环中,它的重复等于长度,显然等于特定帧的中心点集的长度。但在repmat之后,最后一次迭代值仅被保存,即1000 clear % number of images in one TIFF file numimgs=size(imfinfo('C:\Users\user\Desktop\Photometrics_2x bin_video2.tif'),1); cen

我使用的tiff图像有1000帧。为了追踪物体从一帧到另一帧的位置,我已经确定了物体的中心和半径。现在,我需要指定帧的编号,在for循环中,它的重复等于长度,显然等于特定帧的中心点集的长度。但在repmat之后,最后一次迭代值仅被保存,即1000

clear
% number of images in one TIFF file
numimgs=size(imfinfo('C:\Users\user\Desktop\Photometrics_2x bin_video2.tif'),1);
centreDark = [];
radiiDark = [];
frame=[];
for FR=1:numimgs

    %To read in all images in TIFF-file
    output_image2=imread('C:\Users\user\Desktop\Photometrics_2x bin_video2.tif',FR);
    output_image3=double(output_image2);
    disp(num2str(FR))


    ii=output_image3 - meanImage;
    %ii=im2double(meanImage-filename)

    I2 = mat2gray(ii);

    qq=fibermetric(I2, 38,'ObjectPolarity','Bright');

    %Apply Hough circular transform

    [centreDark1, radiiDark1]=imfindcircles(qq, [Rmin Rmax],'Sensitivity',0.87,'ObjectPolarity','bright');


    centreDark = [centreDark;centreDark1];
    size(centreDark)
    radiiDark = [ radiiDark;radiiDark1];
    size(radiiDark)


    frame=repmat(FR,1,size(centreDark(:,1)))
    fr=frame(:)
    %%%%fr{:,FR}=frame(:) 

end
%Table
T1= array2table(centreDark,'VariableNames',{'centreX','centreY'});
T2=array2table(radiiDark, 'VariableNames',{'Radius'});
T3=array2table(frame, 'VariableNames',{'Frame'});
% FR=fillmissing(T3,'previous');
T=[T1,T2,T3]*

*

请解释您到底想做什么,您想从每次迭代中存储什么,以及存储在哪里(在哪个变量中)。为什么这
fr{:,fr}=frame(:)
被注释掉了?它不起作用吗?如果是这样,它也可能在循环之前初始化。类似于
fr=cell(numgs,1)
FR
是单个数字(循环计数器)。在上一次迭代中,它等于
numgs
centreDark
的大小类似于
1000,1
(取决于检测到的对象数量)。因此,您的
repmat
调用是
repmat(numgs,11000,1)
。您要求Matlab重复
numgs
,无论
centreDark
的大小如何。请解释您到底想做什么,希望从每次迭代中存储什么以及在哪里(在哪个变量中)。为什么这
fr{:,fr}=frame(:)
被注释掉了?它不起作用吗?如果是这样,它也可能在循环之前初始化。类似于
fr=cell(numgs,1)
FR
是单个数字(循环计数器)。在上一次迭代中,它等于
numgs
centreDark
的大小类似于
1000,1
(取决于检测到的对象数量)。因此,您的
repmat
调用是
repmat(numgs,11000,1)
。您要求Matlab重复
numgs
,无论
centreDark
的大小如何。