求大神MATLAB计算五角星质心坐标,图像有个原点 然后求每个质心 对于这个原点的坐标万分感激

如题所述

提示:求五角星的质心就是求五角星外接圆形的圆心,这样就好解决了!

1、找到五角星任意三点(x1,y1)、(x2,y2)、(x3,y3)
2、求出对应质心
<code>
x1=2;y1=4;x2=8;y2=12;x3=14;y3=19;%三点坐标
if((y1==y2)&(y2==y3))
disp('三点不构成圆!');
elseif((y1~=y2)&(y2~=y3))
k1=(x2-x1)/(y2-y1);
k2=(x3-x2)/(y3-y2);
end
if(k1==k2)
disp('三点不构成圆!');
end
a=2*(x2-x1);
b=2*(y2-y1);
c=x2*x2+y2*y2-x1*x1-y1*y1;
d=2*(x3-x2);
e=2*(y3-y2);
f=x3*x3+y3*y3-x2*x2-y2*y2;
disp('圆心为::');
x=(b*f-e*c)/(b*d-e*a)
y=(d*c-a*f)/(b*d-e*a)
disp('半径为::');
r=sqrt((x-x1)*(x-x1)+(y-y1)*(y-y1))
</code>
温馨提示:答案为网友推荐,仅供参考