フィルターのクリア

Calculate the volume of shape descibed by 3d points.

81 ビュー (過去 30 日間)
Lucy
Lucy 2014 年 8 月 4 日
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?

回答 (1 件)

Yu Jiang
Yu Jiang 2014 年 8 月 11 日
編集済み: Yu Jiang 2014 年 8 月 11 日
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 件のコメント
jixiong fei
jixiong fei 2024 年 3 月 31 日
移動済み: Matt J 2024 年 3 月 31 日
can this function compute the intersection part volume between two objects?
Lateef Adewale Kareem
Lateef Adewale Kareem 2024 年 6 月 2 日
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

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeBounding Regions についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by