To find rotational axis of an incomplete point cloud

6 次查看(过去 30 天)
Hello All,
I am new to matlab and I am trying to find solution to a very specific problem. I have a point cloud with approx. 10000 points which has a rotational axis, but is incomplete (this means that the centroid does not lie on the rotation axis, because of incomplete nature of data).
My problem is to find the rotational axis of this point cloud. I have attached images below any kind of help would be really appreciated.
These images show different views of same point cloud and also incomplete nature of point cloud can be seen in here.
problem_statement_pc_2.jpg
problem_statement_pc.jpg
  3 个评论
New user
New user 2020-1-20
编辑:New user 2020-1-20
Yes, I mean that the points are circularly symmetric around an axis.
About the shape, the point cloud is somewhat torriodal in shape
I could have easily calculated the mean and then divided it with all points like in SVD to get the rotational axis, if the point cloud were complete. But here the centroid does not lie on the rotational axis so that method wont work. I am looking for an alternate method to find the rotational axis
darova
darova 2020-1-20
I think such algorithm will be too complicated (if it exists)
Can't you just manually replace your object to origin and rotate it?

请先登录,再进行评论。

采纳的回答

Image Analyst
Image Analyst 2020-1-20
I'd use pca() to find the 3 principal axes. You can then rotate the cloud so that the 3rd principal axis lines up with the z direction if you want.
  7 个评论
Matt J
Matt J 2020-1-20
编辑:Matt J 2020-1-20
Instead of fitting a circle, you could try minboundcircle from this file exchange submission,
to find the tightest circular envelope around your 2D projected points.. Since your points fill up most of a circle nicely, I'd bet this gives you a much more accurate estimate of the center.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Point Cloud Processing 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by