Reconstruct Gaussian fitted Beads

5 views (last 30 days)
John
John on 30 Oct 2014
Commented: John on 31 Oct 2014
I have gaussian fitted a bead in an image and I have its x & y coordinate, standard deviation (std) of the gauss fit as well as amplitude (amp). Is there a way to reconstruct the bead from the x,y,std & amp values?

Accepted Answer

Image Analyst
Image Analyst on 30 Oct 2014
Try this:
grayImage = zeros(480, 640, 'uint8');
[rows, columns] = size(grayImage);
xCenter = 200;
yCenter = 300;
sigma = 50;
sigmaSquared = sigma^2;
amplitude = 255;
[X, Y] = meshgrid(1:columns, 1:rows);
grayImage = exp(-((X-xCenter).^2 + (Y-yCenter).^2) ./ sigmaSquared);
imshow(grayImage, []);
axis on
  3 Comments
Image Analyst
Image Analyst on 31 Oct 2014
Edited: Image Analyst on 31 Oct 2014
You could use it like this:
grayImage = amplitude * exp(-((X-xCenter).^2 + (Y-yCenter).^2) ./ sigmaSquared);
I chose that so that the numbers would go from 0 - 255, and if they did, I could cast to uint8 and display it with imshow() without the []. But I must have forgotten to put it in when I remembered imshow() can display floating point images scaled to 0-255 for display if you use the [] as the second input argument.
If it's "closer" but not enough to officially "Accept" the answer, then let me know exactly what you are looking for. For example, attach a screenshot or image or something to fill in the details missing from your original question.
John
John on 31 Oct 2014
Awesome, thanks.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!