Calculate the volume of shape descibed by 3d points.

73 visualizzazioni (ultimi 30 giorni)
Given a set of 3d data points, without using the Image Processing Toolbox, what is the best method for working put the volume of the object described by the points?

Risposte (1)

Yu Jiang
Yu Jiang il 11 Ago 2014
Modificato: Yu Jiang il 11 Ago 2014
Hi Lucy
The volume of that object can be approximated by the volume of its convex hull. In mathematics, the convex hull or convex envelope of a set X of points in the Euclidean plane or Euclidean space is the smallest convex set that contains X. See the following link for more details
The Matlab function convhull can be used to find the convex hull of a given dataset and can return respectively the area or the volume of a 2D-Polygon or of a 3D-Polyaedrons. You can find more information on this function at the following address:
Here is one example illustrating how you can use this command to compute a volume:
clear all
N = 100;
x = linspace(0,1,N);
y = linspace(0,1,N);
Z = peaks(N)
[X,Y] = meshgrid(x,y);
[TriIdx, V] = convhull(X,Y,Z)
trisurf(TriIdx, X, Y, Z)
The variable V is the volume of the convex hull. Also, the function trisurf is used here to plot the convex hull. See the following link for more details on trisurf.
-Yu
  5 Commenti
jixiong fei
jixiong fei il 31 Mar 2024
Spostato: Matt J il 31 Mar 2024
can this function compute the intersection part volume between two objects?
Lateef Adewale Kareem
Lateef Adewale Kareem il 2 Giu 2024
if you can provide separate surface for each objects, and a single surface for the two combined, then, you can compute the volume of the intersection using V1 + V2 - V12
V1 is the volume of the surface1, V2 is the volume of surface2 and V12 is the volume of the combined surface12

Accedi per commentare.

Categorie

Scopri di più su Bounding Regions in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by