Find the volume of a nx3 Dataset

1 view (last 30 days)
Hello everybody, I have an easy question:
I have seen this great explanation about how to integrate the volume underneath a set of nonuniformly spaced data: http://blogs.mathworks.com/videos/2009/09/08/integrating-to-find-the-volume-underneath-a-set-of-nonuniformly-spaced-data/
but the interpolation here it´s done between 0-1 because of his dataset. My question is: if my dataset has a large number of different values (like a ball), how should I do this interpolation? I have thought about to change the
interpZ(0.5,0.5) %test interpolation
vol = quad2d(interpZ,0,1,0,1) %volume should be close to 1
like this:
interpZ(¿?,¿?) %test interpolation
vol = quad2d(interpZ,min(min(z)),max(max(z)),min(min(z)),max(max(z)))
Thank you.

Accepted Answer

Image Analyst
Image Analyst on 13 Jun 2015
You have to decide what constitutes the "volume". Let's say your N by 3 data are the (x,y,z) coordinates in a scatter cloud/cluster that looks roughly like a peanut. Now, is your 3D volume the bounding box of the peanut? Or do you want it to be the volume of only the peanut itself? Finding the bounding box of the whole peanut is trivial = just use max() and min() on each of the three dimensions, x, y, and z. If you want a peanut shaped volume, then you have to decide if some arbitrary (x,y,z) point is to be included inside the peanut or outside of it, so that if you have a regular grid (like a CT or MRI volumetric image) then you can find the volume of the irregular peanut shape.
  11 Comments
Image Analyst
Image Analyst on 17 Jun 2015
If you want the volume in real world units you have to know the width of a voxel. What is your field of view? What is the number of voxels across it? Divide those to get the real world units of a voxel - essentially the cross sectional area. See my attached spatial calibration demo.
Jose Andrés
Jose Andrés on 21 Jun 2015
Ok, that was the information I hadn't. My providers forgot to add this voxel's width information and I didn't know how could I do it.
Thank you so much, your last message made me realize what was the problem.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!