椭圆拟合的改进 [英] Ellipse Fitting Improvement
问题描述
Hi,
Recently, I have post a post here about implementing ellipse fitting algorithm. I have implemented Least Squares fit algorithm. It works great with points which are almost laid on an estimated ellipse.
However, in order to improve this, I need to find such a way to remove points which are clearly not laid on an estimated ellipse intuitively.
In my case, I always have 16 points. Among these 16 points, there will be about 2 to 6 points that are laid out a boundary of an estimated ellipse.
For example, please look at this image: http://img6.imageshack.us/img6/3148/ellipse.jpg
The points that I indicated with red arrows are needed to remove in order to have a good estimated ellipse (the green boundary).
I have spent time to think an idea to remove these points. But I could not think of an idea to solve this problem.
I hope you could help me somehow to provide some ideas to solve this.
Thanks in advance.
Your help is much appreciated.
推荐答案
您可以生成两个mbrs-max(min)bounding直肠.一个是椭圆适合的最小矩形,另一个是适合椭圆的最大矩形.然后丢弃大矩形外部或小矩形内部的所有点.
生成这些矩形并测试矩形中的点包含非常简单,只需进行几次比较即可;无需使用(慢速)高阶函数.
You could generate two mbrs -- max(min) bounding rects. One being the smallest rectangle that the ellipse fits within, the other being the largest rectangle that fits within the ellipse. Then discard all points outside the larger rectangle or inside the smaller one.
Generating these rects and testing for point inclusion in a rectangle is very simple -- just a couple comparisons; no need to use (slow) higher-order functions.
这篇关于椭圆拟合的改进的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!