How to circumscribe an elliptical shape to a set of points in 3D?

8 次查看(过去 30 天)
I have the cartesian coordinates (x,y,z) of set of points that are distributed in a region of space that could be circumscribed by an ellipse if your camera is angled from origin towards the centre of this region. I plot these points with scatter3.
I want to find the ellipse (in any form that defines its location and shape in space) that encompass these points so that it passes through the ones at the edge and has the minimum area. Thanks in advance for your help.
  5 个评论
Walter Roberson
Walter Roberson 2013-2-4
Minimum surface area is, at least in theory, perimeter of a 2D case, extended by revolution.
One of the presentations I found about the 2D case (that was explicitly talking about circumscribing) indicated that minimizing area for the 2D case is easier than minimizing perimeter for the 2D case, because perimeter is an integral that does not have a closed-form solution. I would imagine the same difficulty would apply for ellipsoids.
When you say the points could be circumscribed by an ellipse, do you mean that the points lie in a titled plane, or do you mean that there is a perspective in which the projection onto a titled plane could be circumscribed by an ellipse? The "lie in a titled plane" option would imply that "surface area" would not be the real concern, and that instead perimeter in the titled plane would be, but "projection into a titled plane" does offer meaning to "surface area" but requires specification of the method of completing the containing volume once one has a trial ellipse (which is 2D). Are you definitely talking about ellipses and not ellipsoids ??
Doctor61
Doctor61 2013-2-4
编辑:Doctor61 2013-2-4
RE your question, yes I mean "there is a perspective in which the projection onto a tilted (you mean tilted not titled, right?) plane could be circumscribed by an ellipse". So maybe I have expressed my question unclearly again, this could be even considered as a 2D case where you have several points in a plane and want to circumscribe a shape (here an ellipse) to them. The only thing will be that in my case these points would be the projection of my points into that 2D plane, which I also don't know how to do. It is true that I am not talking about ellipsoids here, only ellipse. So probably surface area is misleading here, I should have used only area.

请先登录,再进行评论。

回答(2 个)

Walter Roberson
Walter Roberson 2013-2-4
编辑:Walter Roberson 2013-2-4
The two-dimensional case is talked about in this technical solution and perhaps it could be extended.
And there is a FEX contribution to fit ellipsoids
An algorithm paper is here
  2 个评论
Image Analyst
Image Analyst 2013-2-4
Matt J's post here: http://www.mathworks.com/matlabcentral/newsreader/view_thread/320964#879842 but it's also on fitting, not doing a minimum enclosing ellipsoid shell like John's. And here's is torstens solution - again, fitting, not min enclosing.
Walter Roberson
Walter Roberson 2013-2-4
You can fit the plane through the points using techniques such as http://www.mathworks.com/support/solutions/en/data/1-1AVW5/index.html?solution=1-1AVW5
You could then rotate and use ellipse fitting. There is a discussion of circumscribing an ellipse here

请先登录,再进行评论。


Image Analyst
Image Analyst 2013-2-4

类别

Help CenterFile Exchange 中查找有关 Elementary Polygons 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by