Volume Changes with Convhull/Triangulation vs. alpha shape...why?
15 views (last 30 days)
Show older comments
I have a set of 3d data point (x,y,z). I am trying to get the volume of space that the points encompass. 1. I used shp = alphashape(x,y,z) to plot the coordinates and then used Volume(shp) to get a volume. 2. I used [tritdx,V]=convhull(x,y,z) to get the volume of the space. 3. I used delaunay Triangulation (x,y,z) and then [K,V]=convexHull(DT) to get a volume.
2 and 3 both report the same value for the volume (5.0779e+5) 1 reports the volume as 5.4956e+4
Which option is the correct one for calcuating the volume of 3d space using (x,y,z) coordinate points?
Thanks
0 Comments
Accepted Answer
Steven Lord
on 26 Oct 2015
The convex hull of a set of points is, well, convex. The alphaShape of a set of points may or may not be convex.
What your results tell me is that you have a hollow space in your object/point set that is being measured by the convex hull but not by the alpha shape. Should you measure that hollow space? It depends. If you're measuring how much clay it takes to make a coffee mug you want the alpha shape volume (you don't care about the inner volume of the mug that will hold the coffee when it is used.) If you're looking how much space a shrink-wrapped coffee mug takes up on the store shelf (assuming you can't nest one mug inside another) you want the convex hull volume.
1 Comment
John D'Errico
on 26 Oct 2015
Edited: John D'Errico
on 26 Oct 2015
What Steve says is COMPLETELY true of course. I'll add one comment, that the convex hull and delaunay triangulation should indeed report the same volume. So that did work as expected. An alpha shape volume will always be no larger then the convex hull volume, and it will usually be smaller. Again, completely expected, since the classic algorithm STARTS out with a delaunay tessellation, and then deletes some parts of that triangulation. So unless nothing was deleted, then you will expect a smaller volume.
More Answers (0)
See Also
Categories
Find more on Delaunay Triangulation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!