Object segmentation

What is an object in a 3D image?

Take the following image. Your brain immediately spots different entities in it:


This identification happens even it you don't know yet that this is an image of actin filaments. You see bright elongated structures and black holes because your eyes and brain, working together, have separated interesting features from the background, isolating them. You just don't see bright and dark pixels, you group the bright pixels together so that they belong to macrostructures.

But a digital image is just a discrete collection of intensity values, changing from one place to the other, and there is no intrinsic procedure that can tell us if a pixel is part of an object or of the background. Our brains are quick in doing this, and much preprocessing happens in the eyes themselves. They are so trained in working together that they can isolate very similar intensities in sophisticated ways, and even see things where there is nothing!!! How can we reproduce a similar, or even more reliable, data interpretation in the computer?

(Actually, any interpretation of reality we do in terms of objects against a background is a big simplification and is subject to metaphysical difficulties: as matter is just a collection of independent molecules and atoms, where does a body exactly end, and where does everything else start? How many bodies are actually there? This problem is way below the resolution of fluorescence microscopy, but it reminds us that defining what an object is is not an easy thing to do).


The problem of segmentation refers to the selection of interesting features in an image. Very much related to this is labeling, grouping together into a single entity (object) pixels that have something in common (typically, that they are adjacent in space).

This is a typical approach for segmentation of objects:

  • First separate interesting VoXels from the background by using a practical algorithm. This algorithm can be very complex and sophisticated, or something simple and intuitive, like applying a threshold to the intensity values to split the voxels in two groups (interesting and background).
  • Once you have separated the interesting voxels, group together in independent objects those that are connected, again given certain procedure, like for example "they are connected if they share one face of the cube they belong to" (this is called Six Connected). You do this by applying the same numeric label to every voxel belonging to an independent object, using a different label per object. That's why this is called labeling.

Question: if you follow such a procedure... do you think two independent objects belonging to the same image can overlap in space?