Crossposted from DIP4FISH

A particle class is needed to handle the chromosomes extracted from a metaphase image.

image

For this very beginning, the class only handles the counterstain image (DAPI), it is possible to :

  1. display a particle vertically,
  2. compute the ratio between the particle area and the convex hull area, in order to distinguish between single chromosomes and overlapping chromosomes. The convex hull area is computed with a funny formula.

Blue curve:orientation curve for the original particle image (top
left). Green curve: orientation curve after high pass filtering (top
right).

With two features as the particle area and the ratio between the particle area and the convex hull area, it should be possible to start to classify the particles into four categories:

# non overlapping chromosomes, # overlapping chromosomes, # nuclei, # remaining small stuffs .

scikit-learn may be considered.

The script written to test the class, instanciates two particle objects, rotates them and calculates the “convexity” ratio. To use it with your images, modify the path to the image, numpy, scipy, pylab, pymorph, mahotas must be installed.