【发布时间】:2015-04-26 10:26:21
【问题描述】:
我从事图像分割工作,测试了许多不同的分割算法,以便进行比较研究。目前我正在使用霍夫变换来查找图像中的圆圈。我使用的图像有很多对象,所以当Í 计算对象时,结果是巨大的。我认为问题在于重叠的圆圈。你知道我怎样才能删除重叠的圆圈以使结果更接近现实吗?
我使用的代码是:
clear all, clc;
% Image Reading
I=imread('0001_c3.png');
figure(1), imshow(I);set(1,'Name','Original')
% Gaussian Filter
W = fspecial('gaussian',[10,10]);
J = imfilter(I,W);
figure(2);imshow(J);set(2,'Name','Filtrada média');
X = rgb2gray(J);
figure(3);imshow(X);set(3,'Name','Grey');
% Finding Circular objects -- Houng Transform
[centers, radii, metric] = imfindcircles(X,[10 20], 'Sensitivity',0.92,'Edge',0.03); % [parasites][5 30]
centersStrong = centers(1:60,:); % number of objects
radiiStrong = radii(1:60);
metricStrong = metric(1:60);
viscircles(centersStrong, radiiStrong,'EdgeColor','r');
length(centers)% result=404!
【问题讨论】:
-
你能添加(或链接到)图片
cell.png吗? -
@MartinJ.H.我已经添加了 entier 代码和使用的图像。非常感谢您的帮助:D
-
非常感谢,效果很好:D
标签: matlab image-segmentation hough-transform