Ellipses from Triangles

We propose an ellipse fitting algorithm that uses points and tangents, rather than just points, as the basic unit of information. These units are analyzed in a hierarchy: points with tangents are paired into triangles in the first layer and pairs of triangles in the second layer vote for ellipse centers. The ellipse's remaining parameters are estimated via robust linear algebra (singular value decomposition) and statistics (iteratively reweighed least squares) techniques. Our method outperforms the state-of-the-art approach in synthetic images and images of mouse embryo cells.

For the experiments with mouse-embryo cells reported in the text, we used images from the Mouse Embryo Tracking Database. The following .mat documents are Matlab files containing the list of images used. Each file has three columns: index, experiment, frame. Experiment and frame are the coordinates of the image in the linked database.

List of 421 images of 2 cells each: ief2.mat [1 Kb]

List of 332 images of 4 cells each: ief4.mat [1 Kb]

Link to Paper


  author        = {M. Cicconet and K. Gunsalus and D. Geiger and M. Werman},
  title         = {Ellipses From Triangles},
  howpublished  = {IEEE International Conference on Image Processing},
  year          = {2014},
  note          = {Paris, France}

Code: C++ (cross platform), C++ (Mac), Matlab.