Difference between revisions of "2013 Summer Project Week:Dynamically Configurable Quality Assurance Module for Large Huntington's Disease Database Frontend"

From NAMIC Wiki
Jump to: navigation, search
(Created page with '__NOTOC__ <gallery> Image:PW-MIT2012.png|Projects List Image:QAEvaluationScreenShot.png| QA Evaluation UI </gallery> ==Key Investigators== …')
 
 
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
 
<gallery>
 
<gallery>
Image:PW-MIT2012.png|[[2012_Summer_Project_Week#Projects|Projects List]]
+
Image:PW-MIT2012.png|[[2013_Summer_Project_Week#Projects|Projects List]]
Image:QAEvaluationScreenShot.png| QA Evaluation UI
+
Image:QAEvaluationScreenShot.png| Original GUI
 +
Image:QualityAssurance_initial.png| Configurable GUI
 +
Image:QualityAssurance_0.png| Example 1
 +
Image:QualityAssurance_1.png| Example 2
 +
Image:QualityAssurance_2.png| Example 3
 
</gallery>
 
</gallery>
 
+
[[2013_Summer_Project_Week#Agenda|Back to Summer project week Agenda]]
 
==Key Investigators==
 
==Key Investigators==
 
* UIowa: Dave Welch, Hans Johnson
 
* UIowa: Dave Welch, Hans Johnson
* UNC: JC Fillion-Robin
+
* Kitware: JC Fillion-Robin
* Isometrics: Steve Pieper
+
* Isomics: Steve Pieper
 +
* BWH: Andrey Fedorov
  
 
<div style="margin: 20px;">
 
<div style="margin: 20px;">
Line 28: Line 33:
 
<h3>Approach, Plan</h3>
 
<h3>Approach, Plan</h3>
  
We will use the Python scripting capabilities to create a loadable module for Slicer that is able to query a database.  We will take advantage of QT Designer to streamline our UI development and test on a copied version of our network hierarchy.
+
We will use the Python scripting capabilities to create a loadable module for Slicer that is able to query a database.  We will take advantage of QT Designer to streamline our UI development and test on a copied version of our network hierarchy.  In order to normalize our QA across evaluators, we will control the slice views from the module and expose only the necessary volumes and label nodes to the users.
  
 
</div>
 
</div>
Line 35: Line 40:
  
 
<h3>Progress</h3>
 
<h3>Progress</h3>
The UI for our module is complete and functioning and much of our module's logic has been created and testedWe will be continuing development of this module and hope to present at the Winter Project Week.
+
We have successfully generated a robust GUI via configuration files ONLY. In addition, we have laid out the configuration file to describe a database to the GUI backend. 
 +
 
 +
Our module requires at least three configuration files (INI-compliant):
 +
 
 +
1) <strong>qualityassurance.cfg</strong>: describes the available modules within this module
 +
 
 +
For each defined module:
 +
 
 +
2) <strong>GUI configuration file</strong>: describes the GUI layout and logic
 +
 
 +
3) <strong>database configuration file</strong>: describes the database schema
 +
 
 +
We currently support Postgres SQL and the design is intended for easy extension to other SQL flavors.   
 +
Excel interaction would be desirable, but we don't support it currently.
  
 +
TODO:
 +
# dynamic definition of logic functions
 +
# more integration of CompareVolumes
 +
# support for QButtonGroup?
  
 
</div>
 
</div>
Line 51: Line 73:
 
##Extension -- loadable
 
##Extension -- loadable
 
#Other (Please specify)
 
#Other (Please specify)
 
==References==
 
# TODO
 

Latest revision as of 13:19, 21 June 2013

Home < 2013 Summer Project Week:Dynamically Configurable Quality Assurance Module for Large Huntington's Disease Database Frontend
Back to Summer project week Agenda

Key Investigators

  • UIowa: Dave Welch, Hans Johnson
  • Kitware: JC Fillion-Robin
  • Isomics: Steve Pieper
  • BWH: Andrey Fedorov

Objective

QA evaluation of derived images for large population studies is vital to ensure study results are accurate and relevant. We will create a Slicer module capable of querying a database of associated derived volumes and label maps from our AutoWorkup pipeline for interactive QA evaluation.

We will also minimize duplication of QA efforts through database management within the module, allowing multiple Slicer instances on a network to evaluate our results by subject without repetition or conflict. In addition, we will optimize the evaluator's time through process schemes like pre-loading of batched data.



Approach, Plan

We will use the Python scripting capabilities to create a loadable module for Slicer that is able to query a database. We will take advantage of QT Designer to streamline our UI development and test on a copied version of our network hierarchy. In order to normalize our QA across evaluators, we will control the slice views from the module and expose only the necessary volumes and label nodes to the users.

Progress

We have successfully generated a robust GUI via configuration files ONLY. In addition, we have laid out the configuration file to describe a database to the GUI backend.

Our module requires at least three configuration files (INI-compliant):

1) qualityassurance.cfg: describes the available modules within this module

For each defined module:

2) GUI configuration file: describes the GUI layout and logic

3) database configuration file: describes the database schema

We currently support Postgres SQL and the design is intended for easy extension to other SQL flavors. Excel interaction would be desirable, but we don't support it currently.

TODO:

  1. dynamic definition of logic functions
  2. more integration of CompareVolumes
  3. support for QButtonGroup?

Delivery Mechanism

This work will be delivered to the NA-MIC Kit as a (please select the appropriate options by noting YES against them below)

  1. ITK Module
  2. Slicer Module (Yes)
    1. Built-in
    2. Extension -- commandline
    3. Extension -- loadable
  3. Other (Please specify)