Difference between revisions of "2010 Winter Project Week Qt-ing the Command Line Module"

From NAMIC Wiki
Jump to: navigation, search
(Created page with '__NOTOC__ <gallery> Image:PW-SLC2010.png|Projects List Image:genuFAp.jpg|Scatter plot of the original FA data through the genu of the corpus…')
 
m (Text replacement - "http://www.slicer.org/slicerWiki/index.php/" to "https://www.slicer.org/wiki/")
 
(11 intermediate revisions by one other user not shown)
Line 2: Line 2:
 
<gallery>
 
<gallery>
 
Image:PW-SLC2010.png|[[2010_Winter_Project_Week#Projects|Projects List]]
 
Image:PW-SLC2010.png|[[2010_Winter_Project_Week#Projects|Projects List]]
Image:genuFAp.jpg|Scatter plot of the original FA data through the genu of the corpus callosum of a normal brain.
+
Image:ExectionModelTourGUI.png|Command line module with a KWWidget-base GUI.
Image:genuFA.jpg|Regression of FA data; solid line represents the mean and dotted lines the standard deviation.
+
Image:Qtlogo.png|Qt.
 
</gallery>
 
</gallery>
 
==Instructions for Use of this Template==
 
#Please create a new wiki page with an appropriate title for your project using the convention Project/<Project Name>
 
#Copy the entire text of this page into the page created above
 
#Link the created page into the list of projects for the project event
 
#Delete this section from the created page
 
#Send an email to tkapur at bwh.harvard.edu if you are stuck
 
  
 
==Key Investigators==
 
==Key Investigators==
* UNC: Isabelle Corouge, Casey Goodlett, Guido Gerig
+
* GE: Jim Miller
* Utah: Tom Fletcher, Ross Whitaker
+
* Kitware: Jean-Christophe Fillion-Robin, Julien Finet
  
 
<div style="margin: 20px;">
 
<div style="margin: 20px;">
Line 21: Line 14:
  
 
<h3>Objective</h3>
 
<h3>Objective</h3>
We are developing methods for analyzing diffusion tensor data along fiber tracts. The goal is to be able to make statistical group comparisons with fiber tracts as a common reference frame for comparison.
+
Port the CommandLineModule infrastructure for automatic GUI construction to Qt.
 
 
  
  
Line 34: Line 26:
 
<h3>Approach, Plan</h3>
 
<h3>Approach, Plan</h3>
  
Our approach for analyzing diffusion tensors is summarized in the IPMI 2007 reference below. The main challenge to this approach is <foo>.
+
The CommandLineModule uses a data specification in XML to define the inputs and outputs of a module. The module automatically constructs a user interface that interacts with the MRML scene using this data specification.  Historically, the module has used KWWidgets and Slicer specific widgets for all user interface components.
  
Our plan for the project week is to first try out <bar>,...
+
Porting the CommandLineModule to Qt involves:
 +
* Automatic GUI generation using Qt in places of KWWidgets
 +
* Populate GUI with values from MRML
 +
* Callback process to populate MRML from GUI
 +
 
 +
This port is already under way and we will use the week to identify anything that would need to change in the underlying CommandLineModuleLogic as well as refine and extend the GUI construction and interaction.
  
 
</div>
 
</div>
Line 43: Line 40:
  
 
<h3>Progress</h3>
 
<h3>Progress</h3>
Software for the fiber tracking and statistical analysis along the tracts has been implemented. The statistical methods for diffusion tensors are implemented as ITK code as part of the [[NA-MIC/Projects/Diffusion_Image_Analysis/DTI_Software_and_Algorithm_Infrastructure|DTI Software Infrastructure]] project. The methods have been validated on a repeated scan of a healthy individual. This work has been published as a conference paper (MICCAI 2005) and a journal version (MEDIA 2006). Our recent IPMI 2007 paper includes a nonparametric regression method for analyzing data along a fiber tract.
+
 
 +
Met with JC:
 +
* GUI is constructed
 +
* Presented  the architecture for CLI execution
 +
* Walked through the logic code
 +
* JC refactoring the logic code to break up the N-thousand line method
 +
* Plan to use signal/slots to communicate between the main thread and processing thread
 +
** Modified, Render, ReadData, DeleteFile, ...
  
  
Line 52: Line 56:
  
 
==References==
 
==References==
*Fletcher P, Tao R, Jeong W, Whitaker R. [http://www.na-mic.org/publications/item/view/634 A volumetric approach to quantifying region-to-region white matter connectivity in diffusion tensor MRI.] Inf Process Med Imaging. 2007;20:346-358. PMID: 17633712.
+
*[https://www.slicer.org/wiki/Slicer3:Execution_Model_Documentation Execution Model Documentation]
* Corouge I, Fletcher P, Joshi S, Gouttard S, Gerig G. [http://www.na-mic.org/publications/item/view/292 Fiber tract-oriented statistics for quantitative diffusion tensor MRI analysis.] Med Image Anal. 2006 Oct;10(5):786-98. PMID: 16926104.
+
*[https://www.slicer.org/wiki/Qt_in_Slicer3 Qt in Slicer3]
* Corouge I, Fletcher P, Joshi S, Gilmore J, Gerig G. [http://www.na-mic.org/publications/item/view/1122 Fiber tract-oriented statistics for quantitative diffusion tensor MRI analysis.] Int Conf Med Image Comput Comput Assist Interv. 2005;8(Pt 1):131-9. PMID: 16685838.
+
*[http://wiki.slicer.org/slicerWiki/index.php/Slicer3:Developers:Projects:QtSlicer QtSlicer]
* Goodlett C, Corouge I, Jomier M, Gerig G, A Quantitative DTI Fiber Tract Analysis Suite, The Insight Journal, vol. ISC/NAMIC/ MICCAI Workshop on Open-Source Software, 2005, Online publication: http://hdl.handle.net/1926/39 .
+
*[http://qt.nokia.com/ Qt]
 
 
 
</div>
 
</div>

Latest revision as of 17:43, 10 July 2017

Home < 2010 Winter Project Week Qt-ing the Command Line Module

Key Investigators

  • GE: Jim Miller
  • Kitware: Jean-Christophe Fillion-Robin, Julien Finet

Objective

Port the CommandLineModule infrastructure for automatic GUI construction to Qt.



Approach, Plan

The CommandLineModule uses a data specification in XML to define the inputs and outputs of a module. The module automatically constructs a user interface that interacts with the MRML scene using this data specification. Historically, the module has used KWWidgets and Slicer specific widgets for all user interface components.

Porting the CommandLineModule to Qt involves:

  • Automatic GUI generation using Qt in places of KWWidgets
  • Populate GUI with values from MRML
  • Callback process to populate MRML from GUI

This port is already under way and we will use the week to identify anything that would need to change in the underlying CommandLineModuleLogic as well as refine and extend the GUI construction and interaction.

Progress

Met with JC:

  • GUI is constructed
  • Presented the architecture for CLI execution
  • Walked through the logic code
  • JC refactoring the logic code to break up the N-thousand line method
  • Plan to use signal/slots to communicate between the main thread and processing thread
    • Modified, Render, ReadData, DeleteFile, ...