![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/178603/image.png)
Finding average diameter of bacteria using FFT .
4 次查看(过去 30 天)
显示 更早的评论
I have an electronic microscopic image
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/168005/image.jpeg)
that contains thousands of bacteria. I need to estimate the average diameter of the bacterium in the photo using FFT. Value can be in pixels.
0 个评论
回答(2 个)
Akira Agata
2017-10-11
Need to use FFT?
I think you can find average diameter by using imfindcircles function, like:
% Read the image and binarize
I = imread('bacteria.jpg');
% Find circles using Hough transform
[centers, radii] = imfindcircles(I,[20 50]);
% Show the result
imshow(I);
viscircles(centers, radii,'EdgeColor','b');
By this script, 426 bacterias were detected, as shown in the following image. And here is an average radius in pixel.
>> mean(radii)
ans =
32.3151
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/178603/image.png)
Image Analyst
2017-10-13
OK, let's start with
fftImage = fft2(grayImage);
and see where that gets us. Also write down the formula for fourier transform of a circle with randomly placed delta functions.
Then post your code after you read this: http://www.mathworks.com/matlabcentral/answers/8626-how-do-i-get-help-on-homework-questions-on-matlab-answers
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!