Difference between revisions of "User talk:Tamekue"

From NAMIC Wiki
Jump to: navigation, search
Line 16: Line 16:
 
| style="background:#dbf3ff; color:#522200"|  
 
| style="background:#dbf3ff; color:#522200"|  
 
|-
 
|-
| style="background:#CEE3F6; color:black"| '''<font color=black>1</font>'''
+
| style="background:#CEE3F6; color:black"| '''<font color=black>2</font>'''
 
| style="background:#CEE3F6; color:black"|Implement the designed graphical user interface, we can run it and navigate through the different wizard steps.  
 
| style="background:#CEE3F6; color:black"|Implement the designed graphical user interface, we can run it and navigate through the different wizard steps.  
 
| style="background:#ffffff; color:black"| '''<font color=black>05/31/11</font>'''
 
| style="background:#ffffff; color:black"| '''<font color=black>05/31/11</font>'''
Line 22: Line 22:
 
| style="background:#dbf3ff; color:black"|  
 
| style="background:#dbf3ff; color:black"|  
 
|-
 
|-
| style="background:#CEE3F6; color:black"| '''<font color=black>1</font>'''
+
| style="background:#CEE3F6; color:black"| '''<font color=black>3</font>'''
 
| style="background:#CEE3F6; color:black"|Implement a separate algorithm in python, which parse an array containing array elements representing centerline points with associated diameter. Define a threshold value for diameters. The algorithm should detect all line segments, where associated diameter is less than the defined threshold value and save them in a container.  
 
| style="background:#CEE3F6; color:black"|Implement a separate algorithm in python, which parse an array containing array elements representing centerline points with associated diameter. Define a threshold value for diameters. The algorithm should detect all line segments, where associated diameter is less than the defined threshold value and save them in a container.  
 
| style="background:#ffffff; color:black"| '''<font color=black>05/31/11</font>'''
 
| style="background:#ffffff; color:black"| '''<font color=black>05/31/11</font>'''
Line 28: Line 28:
 
| style="background:#dbf3ff; color:black"|
 
| style="background:#dbf3ff; color:black"|
 
|-
 
|-
| style="background:#CEE3F6; color:black"| '''<font color=black>1</font>'''
+
| style="background:#CEE3F6; color:black"| '''<font color=black>4</font>'''
 
| style="background:#CEE3F6; color:black"|Use the VMTK module avaible in Slicer 3 to extract and generate a sample of lumen line from a chosen dataset containing stenosis.
 
| style="background:#CEE3F6; color:black"|Use the VMTK module avaible in Slicer 3 to extract and generate a sample of lumen line from a chosen dataset containing stenosis.
 
create a temporary stenosis detector molude in Slicer 3. Import and customize the algorithm implemented at task 3, so that stenosis may be marked and vizualized in 3D view. Run and test the created module.
 
create a temporary stenosis detector molude in Slicer 3. Import and customize the algorithm implemented at task 3, so that stenosis may be marked and vizualized in 3D view. Run and test the created module.
Line 35: Line 35:
 
| style="background:#dbf3ff; color:black"|  
 
| style="background:#dbf3ff; color:black"|  
 
|-
 
|-
| style="background:#CEE3F6; color:black"| '''<font color=black>1</font>'''
+
| style="background:#CEE3F6; color:black"| '''<font color=black>5</font>'''
 
| style="background:#CEE3F6; color:black"|Transcribe the implemented graphical user interface with all wizard steps using python and import it into the module created above.
 
| style="background:#CEE3F6; color:black"|Transcribe the implemented graphical user interface with all wizard steps using python and import it into the module created above.
 
| style="background:#ffffff; color:black"| '''<font color=black>05/31/11</font>'''
 
| style="background:#ffffff; color:black"| '''<font color=black>05/31/11</font>'''
Line 41: Line 41:
 
| style="background:#dbf3ff; color:black"|
 
| style="background:#dbf3ff; color:black"|
 
|-
 
|-
| style="background:#CEE3F6; color:black"| '''<font color=black>1</font>'''
+
| style="background:#CEE3F6; color:black"| '''<font color=black>6</font>'''
 
| style="background:#CEE3F6; color:black"|Extend the implementation of the module adding and customizing all different image processing steps (vessel enhancement, level-set segmentation, network extraction, centerline extraction and stenosis detection). We will hereby be dealing with the automation of our tool, which affects user-friendliness by reducing the number of parameters required through the graphical user interface and with interactions between the different wizard steps.
 
| style="background:#CEE3F6; color:black"|Extend the implementation of the module adding and customizing all different image processing steps (vessel enhancement, level-set segmentation, network extraction, centerline extraction and stenosis detection). We will hereby be dealing with the automation of our tool, which affects user-friendliness by reducing the number of parameters required through the graphical user interface and with interactions between the different wizard steps.
 
| style="background:#dbf3ff; color:black"| '''<font color=black>05/31/11</font>'''
 
| style="background:#dbf3ff; color:black"| '''<font color=black>05/31/11</font>'''
Line 47: Line 47:
 
| style="background:#dbf3ff; color:black"|
 
| style="background:#dbf3ff; color:black"|
 
|-
 
|-
| style="background:#CEE3F6; color:black"| '''<font color=black>1</font>'''
+
| style="background:#CEE3F6; color:black"| '''<font color=black>8</font>'''
 
| style="background:#CEE3F6; color:black"|Design and implement and test a diagramm, which gives an estimation of the stenosis detection results with different stenosis stages. This will be include into evaluation step (last wizard step) of our module.
 
| style="background:#CEE3F6; color:black"|Design and implement and test a diagramm, which gives an estimation of the stenosis detection results with different stenosis stages. This will be include into evaluation step (last wizard step) of our module.
 
| style="background:#dbf3ff; color:black"| '''<font color=black>05/31/11</font>'''
 
| style="background:#dbf3ff; color:black"| '''<font color=black>05/31/11</font>'''
Line 53: Line 53:
 
| style="background:#dbf3ff; color:black"|
 
| style="background:#dbf3ff; color:black"|
 
|-
 
|-
| style="background:#CEE3F6; color:black"| '''<font color=black>1</font>'''
+
| style="background:#CEE3F6; color:black"| '''<font color=black>9</font>'''
 
| style="background:#CEE3F6; color:black"|Evalutation of the tool on testing datasets  
 
| style="background:#CEE3F6; color:black"|Evalutation of the tool on testing datasets  
 
| style="background:#dbf3ff; color:black"| '''<font color=black>05/31/11</font>'''
 
| style="background:#dbf3ff; color:black"| '''<font color=black>05/31/11</font>'''

Revision as of 17:58, 17 March 2011

Home < User talk:Tamekue

Diploma Thesis - Tasks

Time line table

Task number Tasks Deadlines Status Comments
1 Design a prototyp of a wizard based graphical user interface. 05/31/11 DONE
2 Implement the designed graphical user interface, we can run it and navigate through the different wizard steps. 05/31/11 DONE
3 Implement a separate algorithm in python, which parse an array containing array elements representing centerline points with associated diameter. Define a threshold value for diameters. The algorithm should detect all line segments, where associated diameter is less than the defined threshold value and save them in a container. 05/31/11 DONE
4 Use the VMTK module avaible in Slicer 3 to extract and generate a sample of lumen line from a chosen dataset containing stenosis.

create a temporary stenosis detector molude in Slicer 3. Import and customize the algorithm implemented at task 3, so that stenosis may be marked and vizualized in 3D view. Run and test the created module.

05/31/11 DONE
5 Transcribe the implemented graphical user interface with all wizard steps using python and import it into the module created above. 05/31/11 DONE
6 Extend the implementation of the module adding and customizing all different image processing steps (vessel enhancement, level-set segmentation, network extraction, centerline extraction and stenosis detection). We will hereby be dealing with the automation of our tool, which affects user-friendliness by reducing the number of parameters required through the graphical user interface and with interactions between the different wizard steps. 05/31/11 DONE
8 Design and implement and test a diagramm, which gives an estimation of the stenosis detection results with different stenosis stages. This will be include into evaluation step (last wizard step) of our module. 05/31/11 OPEN
9 Evalutation of the tool on testing datasets 05/31/11 OPEN



1. Task

2. Task (until 03/11/11)

  • Write expose for diploma thesis, find enough references. OPEN
  • Result:

3. Task (until 02/24/11)

  • Implement a simple program in Python to run through an array (x,y,z,radius), find the points where the radius is < THRESHOLD and save the detected segments in an array. Select a reasonable threshold. This will help to detect stenosis.
  • Result: Loop through array realized. Stenosis are now found when radius is below a hard-coded threshold and put into a container DONE

4. Task

  • Look at Slicer4/QTScriptedModules/Scripts/Editor.py and Slicer4/QTScriptedModules/EditorLib to figure out how to split Python module to different files in Slicer4. DONE
  • Result: The module itself is a .py file in QTScriptedModules/Scripts. It is possible to include a directory with other Python Scripts in QTScriptedModules/XXX where XXX is a custom name. Then, in the .py File in Scripts, an import XXX has to be placed. This will call the XXX/__init__.py file and can include other files.

5. Task

  • Modify VMTKCenterlines in Slicer3 to include a button to perform the code of Task 3 on a vtkPolyData object. The centerlines are polyData. Add the new method to the logic class of VMTKCenterlines. This will be the algorithm to detect stenosis. DONE

6. Task (until 03/16/11)

  • A pixel in 2D has always 8 neighbors. Write code in Python to do the following: Create a 2D array (maybe a 16x16 matrix?). Take a random element in the middle of the array and loop in the directions of all 8 neighbors (top, bottom, left, right, diagonal left to top, diagonal left to bottom, diagonal right to top, diagonal right to bottom) until you reach the end of the matrix. If this is finished we can modify it to detect the maximal diameter of a vessel through one click. We will extend it then to 3D. If you want, skip 2D and start directly with 3D (16x16x16 matrix). OPEN
  • Result:

7.Task (until 04/01/11)

  • We use the gradient (deltaX) to compute the difference between radii of two points to distinguish if a stenosis is present or not in a relative fashion. Prepare the derivation for the formulas used and proof them for the thesis! OPEN
  • Result:

8. Task (until 03/18/11)

  • Write a container class in Python to save two coordinates (x,y,z) and a radius. OPEN

9. Task (until 03/23/11)

  • Write code in Python to do the following: Use the container from Task 8 to save the results from Task 6. So, these two tasks have to be completed before starting this one. Then, extend Task 6 to store the user click and the touch of the diameter in the container. Finally, use the values of the container to probe an intensity value exactly at the following location: the point on the line between the two coordinates in the container and the distance 2*radius from the first coordinate. OPEN

10. Task (until 03/25/11)

  • Use the intensity values from the user clicked point of Task 6 and the probed position of Task 9 to calculate a contrast measure between these two points. The measure should be low (less than 50) if the intensity values are similar and high (around 100-200) if the contrast is high. OPEN

11. Task (until 04/15/11)

  • Use the output of task 10 as parameter gamma for Frangi's VesselEnhancement. Use also proper values as discussed for alpha and beta. Also, Integrate the click-to-diameter functionality. Then, you should have a parameter free vesselness module where the user only clicks once to configure the filter. OPEN