How to fit multiple 2D surfaces to the same equation?
Show older comments
I have a few 2D maps (attached .mat files from MRI data) obtained at different energies (B1 in uT: 0.5, 1.0, 1.5 and 2.0). The higher B1, the higher signal (min possible value of 0 and max possible value of 100).
I am interested in signal intensity at an intermediate energy level that is why I acquired a few maps for calibration .
I know that Signal=A*(ENERGY^2)+B*(ENERGY)+C; I need to find out the matrices of A, B and C.
This cartoon is just to give an idea of what I have.


I can fit pixel by pixel to the quadratic equation to obtain the calibration curve for this particular pixel (fig.2) and then calculate signal at this pixel at any B1 but it is way too slow. Could you suggest how to fit the all 4 maps simultaneously to the equation? I have an access to server and so memory is not an issue.
The attached 2D maps are set1 (energy 0.5uT), set2 (energy 1.0 uT), set3 (energy 1.5 uT) and set4 (energy 2.0 uT). Signal is in the range 0-100. Higher energy, higher signal. Let's assume that I want to calculate the map at an energy of 1.2 uT. Many thanks in advance.
5 Comments
per isakson
on 31 Mar 2014
Edited: per isakson
on 31 Mar 2014
What about Parallel toolbox?
Star Strider
on 31 Mar 2014
You have data for Signal, X, Y, and Energy and you want to find A, B, and C? You can probably do that regression with lsqcurvefit. I’ve done surface fits to models with it, and I assume it is possible to model 4-dimensional data as well.
Alex
on 31 Mar 2014
Accepted Answer
More Answers (0)
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!