Reconstruct Gaussian fitted Beads

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?

 Risposta accettata

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 Commenti

John
John il 30 Ott 2014
I think i'm getting closer to what I'm looking for. Just curious, where do you use the amplitude = 255; ?
Image Analyst
Image Analyst il 31 Ott 2014
Modificato: Image Analyst il 31 Ott 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 il 31 Ott 2014
Awesome, thanks.

Accedi per commentare.

Più risposte (0)

Richiesto:

il 30 Ott 2014

Commentato:

il 31 Ott 2014

Community Treasure Hunt

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

Start Hunting!

Translated by