Finding average diameter of bacteria using FFT .
古いコメントを表示
I have an electronic microscopic image

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.
回答 (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

6 件のコメント
learningDSP
2017 年 10 月 11 日
Image Analyst
2017 年 10 月 11 日
Why?
learningDSP
2017 年 10 月 13 日
John D'Errico
2017 年 10 月 13 日
So this is homework then?
learningDSP
2017 年 10 月 13 日
Akira Agata
2017 年 10 月 22 日
Maybe the following page will be helpful.
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
カテゴリ
ヘルプ センター および File Exchange で Image Transforms についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!