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?

 채택된 답변

Image Analyst
Image Analyst 2014년 10월 30일

0 개 추천

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

John
John 2014년 10월 30일
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 2014년 10월 31일
편집: Image Analyst 2014년 10월 31일
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 2014년 10월 31일
Awesome, thanks.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

질문:

2014년 10월 30일

댓글:

2014년 10월 31일

Community Treasure Hunt

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

Start Hunting!

Translated by