find spots in image
显示 更早的评论
and I use the code, then I can find the spots.
----------
clear all;
Cimg=imread('CropTest1.jpg','jpg');
Gimg=rgb2gray(Cimg);
BW=Gimg>150;
rp=regionprops(BW,Gimg,'WeightedCentroid');
disp('Centroiding is done.');
figure(1); image(Cimg); axis image; hold on;
n=numel(rp);
for i=1:n
plot(rp(i).WeightedCentroid(1), rp(i).WeightedCentroid(2), 'r*')
end
----------
and I have coordinates of all spots.
then I want to do these
- express Center spot -> (0,0)
- find missing spots (-1,3),(5,1),(1,-5) and output the message: '(-1,3),(5,1),(1,-5) are missing!'
- delete one spot in double spots that use this idea: distance of two spots(well, I seem to be able to do this.)
thank you for your advice and help.
采纳的回答
更多回答(1 个)
Elad
2013-7-27
0 个投票
I would try imfindcircles(), (or hough transform to find circles if you don't have the toolbox). You can adjust the sensitivity and edge until you find all the spots. Than you can calculate the average intesity in each circle and have full control on your results.
Here is an example in the image processing blog, using imfindcircles: http://imageprocessingblog.com/detecting-and-counting-objects-with-circular-features/
or at steve on image processing blog: http://blogs.mathworks.com/steve/2012/09/04/detecting-circular-objects-in-images/
类别
在 帮助中心 和 File Exchange 中查找有关 Matched Filter and Ambiguity Function 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!