Difference between revisions of "2011 Winter Project Week:ThinClientQtInterfaceForIGT"

From NAMIC Wiki
Jump to: navigation, search
Line 11: Line 11:
  
 
<div style="margin: 20px;">
 
<div style="margin: 20px;">
<div style="width: 27%; float: left; padding-right: 3%;">
+
<div style="width: 33%; float: left; padding-right: 3%;">
  
 
<h3>Objective</h3>
 
<h3>Objective</h3>
Line 18: Line 18:
  
 
</div>
 
</div>
<div style="width: 40%; float: left;">
+
<div style="width: 30%; float: left;">
  
 
<h3>Approach, Plan</h3>
 
<h3>Approach, Plan</h3>
Line 25: Line 25:
 
* Build a simple viewer application for preliminary assessment  
 
* Build a simple viewer application for preliminary assessment  
 
</div>
 
</div>
 +
<div style="width: 33%; float: left;">
  
<div style="width: 40%; float: left;">
+
<h3>Progress</h3>
 
+
* Preliminary system design
 +
** Use Slicer4
 +
** Separate GUI and processing engine at Python layer
 +
** vtkWindowToImageFilter for screen grabbing
 +
** Utilize OpenIGTLink
 +
*** Python scripting over OpenIGTLink
 +
*** Implementation of Remote Frame Buffer over OpenIGTLink
  
 
</div>
 
</div>
 
</div>
 
</div>
<div style="width: 95%; float: left;">
 

Revision as of 11:24, 14 January 2011

Home < 2011 Winter Project Week:ThinClientQtInterfaceForIGT

Key Investigators

  • AZE: Nicholas Herlambang
  • BWH: Nobuhiko Hata
  • Isomics: Steve Pieper
  • Kitware: Julien Finet, JC

Objective

Considering the space available in operating room, one ideal scenario for IGT is to have processing power of a workstation on a smaller form-factor devices such as laptop PC. By separating GUI from the processing engine, it is possible to use laptop PC in the operating room, while the processing workstation is put outside the operating room. Our objective is to develop a thin-client for IGT that provides visualization from and receive user input to be passed to the server (3D Slicer). We will use Qt to built the thin-client GUI, and define a messaging protocol for passing images from the server and user input to the server.

Approach, Plan

  • Build thin-client GUI with Qt
  • Define messaging protocol for data transfer between the thin-client and server (3D Slicer)
  • Build a simple viewer application for preliminary assessment

Progress

  • Preliminary system design
    • Use Slicer4
    • Separate GUI and processing engine at Python layer
    • vtkWindowToImageFilter for screen grabbing
    • Utilize OpenIGTLink
      • Python scripting over OpenIGTLink
      • Implementation of Remote Frame Buffer over OpenIGTLink