Extract Spine Curve From EOS Image

Method

Fit a spline based on gradient map and image intensity.

File Structure

  1. GUI
    1.1 Draw_Spine_Curve.m
    1.2 Draw_Spine_Curve.fig
  2. Top level functions
    1.1 GrayScaleBased.m (Implement main function)
    1.2 eos_pre_process.m
    1.3 find_cobbs.m
    1.4 plot_gray.m
  3. Trail and scripts
    3.1 active_contour_trail.m
    3.2 bundle_process.m: input a txt file listing all images tobe processed (often generated by a python scripts). change "dst_dir" to where to store result. A output.txt will be generated to store cobb angle and curve level in source dir.
  4. Folder-try_svm
    try to train a classifier to find vertebra
  5. Folder-Statistics
    Analysis of test result

GUI Manual

1. Load image:

Click "Open Image", a dicom file will be selected and display. A spline will be generated automatically. Cobb angles will be measured.

2. Adjust spine line if not satisfied

Method1: click "Adjust Curve";
Method2: press keyboard "a";
A cross hair will track your mouse, press left mouse button to confirm the new position. The spline and Cobb angles will be updated.
Note: If a cross hair appear and you exit adjustment status, just press "Esc" key.

4. Un-do manual adjustment

Press: Ctrl+z
Note: Only on step can be traced by now.

5. Menu Bar

  • "Options"-> "Set Basdir"
    Specify default folder when loading dicom files.
  • "Options"-> "Hide ID"
    Hide patient ID. Click it one more time to show ID.
  • "Save Option" -> "Save Figure"
    Shown figure will be saved to disk (default location is the same as application location, e.g., Desktop folder).
  • "Save Option" -> "Set Base Dir"
    Specify default figure save location.

6. Additional information

You can fill in text editors ("Cobb1 info","Cobb2 info") to save additional information of spinal curve.
Click "Save" to save information includeing: Cobb angle, Cobb info to disk, as ".txt" file, named by "patient ID", to location You sepcified in "Save Option"->"Set Base Dir".