[Work Log]

July 18, 2013
Project Tulips
Subproject Data Association v2
Working path projects/​tulips/​trunk/​src/​matlab/​data_association_2
Unless otherwise noted, all filesystem paths are relative to the "Working path" named above.


Bootcamp demo session

Ran bootcamp demo session. Final code available at


Ground truth labeling of curve fragments

Goal: use 2D ground truth to automatically label bottom-up curve fragments.


  1. Draw ground truth curves using curve index
  2. dilate slightly
  3. For each rendered data curve, gather all GT indices
  4. keep most-occurring GT index.
  5. add to assoc list for that curve


Q: Remember how to read and process ground truth.
A: See ../ground_truth/read_gt2.m

Symlinked to train/read_gt2.m.

Q: Which dataset does our example data come from?
A: ~/data/arabidopsis/2010-06-03/ler_5_36/ler_5_36_0.jpg

Q: Where is ground truth data?
A: ~/data/arabidopsis/2010-06-03/ler_5_36/resized_50%/ground_truth_2d.gt2

Blah Blah

Refactored some code into new function build_curve_maps.m, which renders each of the curves in a cell-array into a map containing their indices.

Forgot that GT is stored as Bezier curves. Symlinked the all bezier-related code into data_association_2. Relevant function is bezier/polybez_to_polyline.m.

Forgot that GT is stored in OpenGL-style coordinates (bottom-left origin). Converting to top-right using tools/flip_y.m.


Got through item 2 in "Overview" above. Will finish next time, and start building training framework.

Posted by Kyle Simek
blog comments powered by Disqus