Is there a better alternative to the convexhull function to produce 3D triangulation?

I have scanned a cube of known dimensions using Microsoft Kinect. I need to calculate the volume of the cube and compare it against the theoretical volume to determine accuracy. I have used convexhull to calculate the triangles and a function called faceNormal by David Legland to calculate normals. However, I notice that the mesh generated does not reflect the real shape because some faces of the cube are really not flat. If I use other software such as Geomagic the same point cloud looks much better after mesh generation. I have calculated the volume of the cube: 1. Reconstructed with Matlab = 0.936 litres 2. Reconstructed with Geomagic = 0.783 litres 3. Theoretical volume = 0.696 litres
In average the volume reconstructed with Matlab is 34% higher that the theoretical volume which is not great. I would like to know other alternatives to the convexhull function to calculate 3D triangulation.

Respuestas (2)

Matt J
Matt J el 22 de Mzo. de 2013
Editada: Matt J el 22 de Mzo. de 2013
CONVHULL or CONVHULLN will calculate the volume directly from the input vertices, and return it as the 2nd output argument.

3 comentarios

Many thanksd for your answer. Based on your suggestion, I used CONVHULLN but the volume I get is still a 37% higher than the theoretical volume. As the object I scanned is not convex, is there any other function to calculate triagulation for non convex shapes?
In your original post, you said you were scanning a cube (which would be convex). What is the shape then?
You can apply CONVHULLN to the Delaunay triangulation of a nonconvex shape
DT=DelaunayTri(V); %The rows of V are the vertices
T=DT.Triangulation;
N=size(T,1);
vols=zeros(1,N);
for ii=1:N
[~,vols(ii)]=convhulln(V(T(ii,:),:));
end
volume = sum(vols),

Iniciar sesión para comentar.

Categorías

Preguntada:

el 22 de Mzo. de 2013

Community Treasure Hunt

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

Start Hunting!

Translated by