请问各位,有没有拟合圆的较好的方法和代码,先谢了

.Net技术 码拜 9年前 (2015-05-10) 696次浏览 0个评论
 

RT

10分
不会 帮顶
5分
不知道的知识
5分
up~
5分
网上找找吧
我找了,可是没有好的方法和代码啊??????????????
10分
我不会。是来帮顶的.希望你可以找到好的解决办法
谢谢,非常的感谢
请问 谁会啊?
10分
??为啥要拟合圆,gdi+本身就可以画圆,难道你准备算π值

如果非要拟合,也没啥问题,给个参数方程(圆的参数方程,不用我多说了把高中内容)
然后改变角度值,得到一系列的点,把填到这些点gdi+的path路径里就成

引用 9 楼 wanghui0380 的回复:

??为啥要拟合圆,gdi+本身就可以画圆,难道你准备算π值

如果非要拟合,也没啥问题,给个参数方程(圆的参数方程,不用我多说了把高中内容)
然后改变角度值,得到一系列的点,把填到这些点gdi+的path路径里就成

楼上误解了,我的意思是一系列点,求近似圆,不过感谢回复

10分
引用 10 楼 corn8888 的回复:

楼上误解了,我的意思是一系列点,求近似圆,不过感谢回复

如果是这样,直接使用最小二乘法拟合就可以了

10分
最小二乘法拟合曲线例子
http://www.codeproject.com/KB/recipes/QuadraticRegression.aspx
感谢回复,用用最小二乘法导出的公式,好像没法求解,不知对错?楼上能不能讲解一下?
10分
霍夫变换(Hough)。其实思想很简单:在一定范围内遍历圆的参数(如果是圆心、半径参数的话,就是三个参数),计算在哪个参数下经过的点最多。优点:抗噪,同样的思想可以检测多个圆。缺点:计算复杂度较高,不过可以优化,如用查找表等思想。该算法在图像处理中用于检测可以有参数方程描述的图形,如直线,园,椭圆等。
10分
霍夫变换程序的优化思想主要有:查找表(如一些需要重复计算的值,可以一次性先计算完存储到数组中,待使用时从数组中访问),浮点运算通过一些技巧转换为整数运算,循环次数层数的优化等。
霍夫变换 计算量有点大………….
10分
拟合的方法计算量小,但是很容易受到噪声的影响。用拟合迭代(每次拟合时选择与上一次迭代较近的点再次拟合)是否可以?计算量高了,结果准确了。楼主可以试试看呀,在准确性和计算量之间可能要有所取舍了。另外拟合方法只能得到一个圆。霍夫变换倒是可以得到多个圆。
引用 17 楼 swimmingfish2004 的回复:

拟合的方法计算量小,但是很容易受到噪声的影响。用拟合迭代(每次拟合时选择与上一次迭代较近的点再次拟合)是否可以?计算量高了,结果准确了。楼主可以试试看呀,在准确性和计算量之间可能要有所取舍了。另外拟合方法只能得到一个圆。霍夫变换倒是可以得到多个圆。

非常非常感谢楼上的回复

有噪声没关系,拟合出的圆可以包括噪声

我只需拟合出一个圆就可以

顶   学习中
引用 12 楼 wanghui0380 的回复:

最小二乘法拟合曲线例子
http://www.codeproject.com/KB/recipes/QuadraticRegression.aspx

好像不能拟合圆

5分
试看看这个图形引擎吧:
AGE, Another Graphic Engine in .NET

请问各位,有没有拟合圆的较好的方法和代码,先谢了

源代码下载,需要先注册用户

其实你最好解释下什么叫“拟合圆”
大家都不怎么知道 也不好解答了
日经贴

Another Graphic Engine

好像是一个绘图引擎吧

up up up
???????????????
这个关键在点 
看你怎么采样的 算出采样点的位置
然后将相邻点 画很短的线段 拼起来
up up up
建议楼主用matlab试试
只求分数  接接接~~
不懂,帮顶!
用RANSAC (Random Sample Consensus)和LMedS (Least Median of Squares),鲁棒性都比较好
最小二乘法或者hough变换都可以拟合圆的

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明请问各位,有没有拟合圆的较好的方法和代码,先谢了
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!