Image Segmentation

The results!

The panels in each window, proceeding as you would read text:

Original image, image at constant luminance, segmented image (palette not determined by the colors), primary image colors, colors (hue-saturation plane), color frequency (hue-saturation plane), Voroni diagram (hue-saturation plane).

Edit: In the color frequency graph, the circles are the cluster centers (the primary image colors).

Posted Apr 24, 2010, 7:50 PM UTC · edited

79
jsyang•

K-means in colorspace?

2
mouseitOP•

Roughly. I made up my own clustering, but it's based on k-means--it uses every point as a potential cluster, which is expensive (O(n^2)), but solves the problem of choosing k. It also uses odd dimensions: (hue, saturation, hue-saturation frequency).

1
joelthelion•

Pretty nice :) Wouldn't work on the images I used to work on, though :-/

1
mouseitOP•

Haha, what were those?

1
joelthelion•

Medical images. Specifically, MRI images of the heart, like this one. These are pretty difficult to segment, for several reasons:

  • Intensity varies through the image due to varying distance to the antenna
  • The image is a 2D slice of a 3D reality, and the actual 2D slice you image varies over time, so you don't have mass conservation for example.
  • Anatomy varies a lot from patient to patient
  • and so on :)

edit: more like this one, actually

1
mouseitOP•

Ooh that is tricky--how many dimensions does the data have? If it's single-dimensional I don't know what segmentation could do (especially if, as you mentioned, the intensity varies independently from the content of the image).

1
joelthelion•

The images have only one channel. There are some pretty good segmentation algorithms for these images, the key is to use a prior model of the structure you are looking for.

1