How to do mesh segmentation in Matlab
3 次查看(过去 30 天)
显示 更早的评论
Hello,
my goal is to approximate/represent CAD-Meshes with primitive bodies, eg. cuboids, spheres, cylinders etc. in Matlab. I consider the segmentation of the models into coherent regions an important step towards that goal.
The following figures show a trisurf'd example model, out of which I would like to extract several cylinders and probably some cuboids.
![tailstork1.png](https://www.mathworks.com/matlabcentral/answers/uploaded_files/227531/tailstork1.png)
![tailstork2.png](https://www.mathworks.com/matlabcentral/answers/uploaded_files/227532/tailstork2.png)
I am aware that there are several scientific papers on mesh segmentation and also some on primitive extraction. However, I have never before programmed an entire algorithm from a scientific paper.
What I am asking is: Does someone know a practical way of doing this in Matlab, especially some source code samples / Toolboxes for mesh segmentation and/or 3d primitive approximation?
Until know, I have found an tried:
- Learning-Mesh-Segmentation, (I dont have the computing ressources to train the model), from here
- ddcrpMeshSegmentation, requires multiple moved versions of the same model, from here
- K-means, modified from this blog
- some graph partitioning functions, many available, eg. here
Out of those, K-means looks somewhat promising and maybe some graph partitioning might also help. For the following primitive approximation, minBoundEllipsoids seems like a good way to extract orientations from the segments to me. I appreciate comments on that too.
Thank you very much
0 个评论
回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!