How can I modify code to Fit tif image series of beads (PSF) with Gaussian; Handling empty or non-fittable problematic tif frames inbetween series?

1 次查看(过去 30 天)
Hello, I am new to Matlab coding and have a small problem with some code I am using and would be great if someone could help me out!
I use the (attached on this thread) fitpeak.m to fit a series of moving fluorescent beads on microscope saved as a tif series. It fits the bead psf with a gausian and gives me the fitted values as output.
This fitpeak.m is called by the script as follow;
%Fit the data
for k=1:size(selected_frames,3)
cur_frame = selected_frames(:,:,k);
x_lineprof=cur_frame(maxx(k),:);
y_lineprof=cur_frame(:,maxy(k));
[temp_peakpos_x, temp_peakwidth_x, temp_rmse_x]= fitpeak(double(x_lineprof),1,1,maxy(k),10,1);
[temp_peakpos_y, temp_peakwidth_y, temp_rmse_y]= fitpeak(double(y_lineprof'),1,1,maxx(k),10,1);
peakpos_x(k) = temp_peakpos_x;
peakpos_y(k) = temp_peakpos_y;
peakwidth_x(k) = temp_peakwidth_x;
peakwidth_y(k) = temp_peakwidth_y;
rmse_x(k) = temp_rmse_x;
rmse_y(k) = temp_rmse_y;
But currently if there is a blank tif image between the series (example, if the bead moves out of focus and disappears just for one frame and comes back in the next) or a frame which cannot be fitted appears, the script does not complete the run, giving following error;
Subscript indices must either be real positive integers or logicals.
Error in fitpeak (line 19)
win(i,:) = xcoord(ppos(i)-35:ppos(i)+35);
Error in TifSPT (line 136)
[temp_peakpos_x, temp_peakwidth_x, temp_rmse_x]= fitpeak(double(x_lineprof),1,1,maxy(k),10,1);
Could someone help me on how I can modify the script so as to accommodate such blank tifs by skipping to the next tif, (after filling the array with a zero value for that particular frame which was not fitted) and carrying on the analysis (and keep filling the array with fitted values till end of tif frame series)?
Thanks a lot in advance!
Sarala

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Interpolation 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by