2
$\begingroup$

I have a 3D shape in a 3D binary image. Therefore, I have a list of all of the x,y,z points. If I am to analyze this shape for various identification, such as "sphericity", volume, surface area, etc., what are some of the choices do I have here?

$\endgroup$
4
  • 1
    $\begingroup$ Can you be more specific? Your problem domain will often inform good features/descriptors. $\endgroup$
    – bjoernz
    Commented Feb 10, 2012 at 16:38
  • $\begingroup$ I want to check the following features against the shape that I got: sphericity, smoothness, compact, volume, and surface area. Something like this. For instance, checking for sphericity. A perfect sphere shape should yield 100% sphericity value, while some other random shapes will yield other values < 100%. Does that explain a bit? ^^; $\endgroup$
    – Karl
    Commented Feb 10, 2012 at 17:08
  • $\begingroup$ Does it have noise or the only error is discretization? $\endgroup$ Commented Feb 12, 2012 at 16:15
  • $\begingroup$ In this question, assume that all noises do not exist. $\endgroup$
    – Karl
    Commented Feb 14, 2012 at 4:59

1 Answer 1

2
$\begingroup$

To approximate the volume ($V_{counted}$) you need to count all the voxels.

To roughly approximate the surface area ($A_{approx}$) count all the voxels that have an "empty" voxel as a neighbor. (Have a look at Marching cubes or Marching tetrahedrons for more inspiration and a more detailed discussion on how to determine a surface element).

In order to determine the sphericity I would calculate the minimal bounding box$^1$, take the largest axis and regard it as the diameter: $V_{calc} = \frac{4}{3}\pi r^3$

Since your features ($f_{vol}$, $f_{area}$, $f_{sphere}$, $\dots$) should be in the interval $[0, 1]$ (or 0% - 100%) you simply need to divide the smaller value by the larger value:

$f_{vol}(V_{counted}, V_{ref}) = \frac{\min(V_{counted}, V_{ref})}{\max(V_{counted}, V_{ref})}$

$f_{area}(A_{approx}, A_{ref})$ and $f_{sphere}(V_{counted}, V_{calc})$ accordingly.

$f_{compactness} \tilde{=} f_{sphere}$, since a sphere is the most compact volume.

I hope you can understand, what I am trying to say, and hopefully the answer you are looking for is somewhere in here.

$^1$ if your data is not aligned, you may have to align it first (PCA).

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.