Difference between revisions of "2009 Winter Project Week Event Broker"

From NAMIC Wiki
Jump to: navigation, search
(New page: {| |thumb|320px|Return to [[2009_Winter_Project_Week|Project Week Main Page ]] |[[]] |[[]] |} __NOTOC__ ===Key Investigators=== * James Ross * Raul San Jose <...)
 
m (Text replacement - "http://www.slicer.org/slicerWiki/index.php/" to "https://www.slicer.org/wiki/")
 
(One intermediate revision by one other user not shown)
Line 10: Line 10:
  
 
===Key Investigators===
 
===Key Investigators===
* James Ross
+
* Jim Miller
* Raul San Jose
+
* Steve Pieper
 
 
  
 
<div style="margin: 20px;">
 
<div style="margin: 20px;">
Line 19: Line 18:
  
 
<h1>Objective</h1>
 
<h1>Objective</h1>
Our goal is to develop a lung imaging platform for the clinical understanding of multiple lung diseases like, Chronic Obstructive Pulmonary Disease (COPD), Asthma, Interstitial Lung Disease (ILD) among others. Quantitative lung imaging is a key component of on-going genetic and molecular biology studies that are being carried out at BWH and other centers across USA. A significant example of these new efforts is [[http://www.copdgene.org/|COPD Genetics Epidemiology]] multicenter study. The NAMIC Kit and Slicer 3 are ideal candidates for the implementation of such a effort.
+
Slicer3 has adopted an Event-Based architecture which allows modularity and extension of the core functionality. The implementation is based on the mechanisms included in VTK.  To help developers manage the application-scale use of this apprach, an extra layer of data structures is included that supports introspection, logging, and event stream optimization (see the Event Broker link below).  
  
Our goals for this week are threefold:
+
 
* Design the main platform components.
+
Large parts of the Slicer3 code base have been migrated to use the EventBroker functionality, but many parts of the code still directly create observers using the native VTK mechanisms. Our goal is to migrate most or all of the code so that event related bugs are easier to identify and eliminate. This should also improve overall application performance.
* Dynamic programming approaches for the extraction of 3D airways.
 
* Porting our current imaging platform, [[http://www.airwayinspector.org| Airway Inspector]] based on 3D Slicer to Slicer 3.
 
  
 
</div>
 
</div>
Line 31: Line 28:
  
 
<h1>Approach, Plan</h1>
 
<h1>Approach, Plan</h1>
Our approach is to develop a module in Slicer 3 that have the following components:
+
* Identify any missing features, bugs or inefficiencies in the current EventBroker.
* A unique library that can be link against and shared by other Slicer module or external applications.
+
* Find the "recipe" for converting code.
* Command Line Modules that encapsulate the individual algorithm components of the platform without string attaches to a particular solution. The idea is to enable rapid prototyping and deployment of the solutions before they are fully integrated.
+
* Apply to as much code as possible and/or make plans for future conversion.
* Custom solutions for disease-oriented applications: our plan is to discuss how an explication can customize the Slicer 3 layout.
 
 
 
We will focus on the following design aspects:
 
* MRML data structures for tubular-type anatomical structures.
 
* Support for quantitative imaging: handling data tables in Slicer 3 from MRML to Command Line Modules.
 
* ITK filter hierarchies for the main image analysis components: extraction of lung lobes, airways and vessels.
 
* Customizable GUI layout.
 
  
 
</div>
 
</div>
Line 47: Line 37:
  
 
<h1>Progress</h1>
 
<h1>Progress</h1>
* A semiautomatic lobe segmentation has been successfully implemented in Slicer 3 as a Command Line Module.
 
* Initial design needs have been discussed.
 
  
  
Line 58: Line 46:
  
 
===References===
 
===References===
[http://www.slicer.org/slicerWiki/index.php/Slicer3:EventBroker Event Broker page on slicer wiki]
+
[https://www.slicer.org/wiki/Slicer3:EventBroker Event Broker page on slicer wiki]

Latest revision as of 17:09, 10 July 2017

Home < 2009 Winter Project Week Event Broker
[[]] [[]]



Key Investigators

  • Jim Miller
  • Steve Pieper

Objective

Slicer3 has adopted an Event-Based architecture which allows modularity and extension of the core functionality. The implementation is based on the mechanisms included in VTK. To help developers manage the application-scale use of this apprach, an extra layer of data structures is included that supports introspection, logging, and event stream optimization (see the Event Broker link below).


Large parts of the Slicer3 code base have been migrated to use the EventBroker functionality, but many parts of the code still directly create observers using the native VTK mechanisms. Our goal is to migrate most or all of the code so that event related bugs are easier to identify and eliminate. This should also improve overall application performance.

Approach, Plan

  • Identify any missing features, bugs or inefficiencies in the current EventBroker.
  • Find the "recipe" for converting code.
  • Apply to as much code as possible and/or make plans for future conversion.

Progress



References

Event Broker page on slicer wiki