echorae 发表于 2008-1-3 09:57

请教关于个数统计画图

在做hough变换检测圆的程序
想在检测出圆心和半径之后,做个数统计,横坐标是半径,纵坐标是这个半径的个数
不知道这段程序要怎么编,附上hough变换的一段程序,请高手指点,谢谢谢谢

% 搜索超过阈值的聚集点
max_para = max(max(max(hough_space)));
index = find(hough_space>=max_para*p);
length = size(index);
hough_circle=zeros(m,n);
for i=1:ecount

for k=1:length

par3 = floor(index(k)/(m*n))+1;

par2 = floor((index(k)-(par3-1)*(m*n))/m)+1;

par1 = index(k)-(par3-1)*(m*n)-(par2-1)*m;

if((rows(i)-par1)^2+(cols(i)-par2)^2<(r_min+(par3-1)*step_r)^2+5&...

(rows(i)-par1)^2+(cols(i)-par2)^2>(r_min+(par3-1)*step_r)^2-5)

hough_circle(rows(i),cols(i)) = 1;

end

end
end

% 打印结果
for k=1:length

par3 = floor(index(k)/(m*n))+1;

par2 = floor((index(k)-(par3-1)*(m*n))/m)+1;

par1 = index(k)-(par3-1)*(m*n)-(par2-1)*m;

par3 = r_min+(par3-1)*step_r;

fprintf(1,'Center %d %d radius %d\n',par1,par2,par3);

para(:,k) = ;
end

sigma665 发表于 2008-1-3 10:40

回复 #1 echorae 的帖子

把半径放入矩阵里
从第一个元素开始,分别与后面的元素比较
相等,则加1
最后plot

echorae 发表于 2008-1-3 11:02

那个,我很菜
半径par3怎么放进矩阵里?……

sigma665 发表于 2008-1-3 12:31

回复 #3 echorae 的帖子

你的hough,我没做过

不过,光要"画横坐标是半径,纵坐标是这个半径的个数"的图的话,
这个同一个一个矩阵里,找出相同的元素的个数是一样的.

hough程序,是不是已经产生了圆心坐标和半径?
页: [1]
查看完整版本: 请教关于个数统计画图