Image Series Analysis: Curve fitting the pixels
Show older comments
Hi,
I have a series of k images of dimension m by n. The intensity of the each pixels in the image changes as a function of image number. I would like to fit each pixel in the series of k images to a simple function, but I do not know how to set up the loop.
How can I generate a pixel by pixel curve fit for the image series, and then display the results of the fit as a "map" of the fit values?
Thanks
5 Comments
Image Analyst
on 14 Oct 2012
Does each pixel in each subsequent image change by the same factor or is every pixel doing their own thing? In other words, will you have one fitted curve for the whole image sequence, or will you have m*n curves - one fitted curve for each of the m*n pixels in the image?
Avigdor
on 14 Oct 2012
Image Analyst
on 14 Oct 2012
So let's say you were fitting a quadratic and you'd have a million quadratics. So you'd then get the average quadratic. I think that this might be the same as, or darn close to, just fitting a quadratic to a 1D series which is just the mean of the whole image. In any event, it might be good enough for what you want to do. What do you really want to do? Compensate for lighting variation, like a spotlight roaming around your image, or more global lighting variations?
Avigdor
on 15 Oct 2012
Answers (1)
If you have the image series as an m x n x k array A, then you can extract the data for each m,n by
for m=1:M
for n=1:N
data=reshape( A(m,n,:) , 1,[]);
end
end
I'm not saying that's the optimal thing to do, but if you must use a loop, that's how you could do it. The optimal approach would depend on the form of the curve your fitting with.
2 Comments
Avigdor
on 14 Oct 2012
You would/could use the same loop you use to extract the data, but store the fitted curve to another matrix B
for m=1:M
for n=1:N
data=reshape( A(m,n,:) , 1,[]);
B(m,n,:)=reshape( mycurvefitFunction(data) ,1,1,[]);
end
end
Categories
Find more on Get Started with Curve Fitting Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!