Difference between revisions of "Collaboration/NWU/Radiology Workstation"
(10 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
|[[Image:ProjectWeek-2007.png|thumb|320px|Return to [[2007_Programming/Project_Week_MIT|Project Week Main Page]] ]] | |[[Image:ProjectWeek-2007.png|thumb|320px|Return to [[2007_Programming/Project_Week_MIT|Project Week Main Page]] ]] | ||
|[[Image:Nwuslicer3.jpg|thumb|320px|Our clinical workstation integrated with Slicer3's main viewer, under development at Northwestern]] | |[[Image:Nwuslicer3.jpg|thumb|320px|Our clinical workstation integrated with Slicer3's main viewer, under development at Northwestern]] | ||
+ | |[[Image:Numit01.jpg|thumb|320px|Before the Programming Week]] | ||
+ | |[[Image:Numit02.jpg|thumb|320px|After the Programming Week]] | ||
|} | |} | ||
− | |||
__NOTOC__ | __NOTOC__ | ||
Line 36: | Line 37: | ||
<h1>Progress</h1> | <h1>Progress</h1> | ||
+ | The problem we focused on during the Programming Week at MIT was how to implement our desired modifications to Slicer3’s main 3D viewer. As previously described, we would like to present the volume as a cube with an oblique cut plane that slices through the volume, instead of three orthogonal cut planes as the viewer shows by default. Before we arrived, we were able to create additional cut planes and link them to the volume. By the end of the week, and with the help of Alex and Steve, we now have a fully functional oblique cut plane. The steps we took to accomplish this solution include: | ||
+ | * Computing the matrix transformations that align the slice node to the camera’s view plane normal | ||
+ | * Applying these transformations appropriately with the slice logic | ||
+ | * Adding observers to the slice node to update the orientation of the slice node as the user interacts with the viewport camera. | ||
+ | Our next steps include: | ||
+ | * Fixing the performance issues this solution has created | ||
+ | * Adding the additional slice nodes to represent the sides of the volume cube | ||
+ | * Clipping the slice nodes to form a solid volume | ||
+ | <br style="clear: both;" /> | ||
+ | </div> | ||
− | |||
− | |||
− | |||
− | |||
Latest revision as of 14:47, 13 July 2007
Home < Collaboration < NWU < Radiology Workstation
Key Investigators
- Northwestern: David S. Channin, Pat Mongkolwat, Skip Talbot, Alex Kogan, Vladimir Kleper
- Isomics: Steve Pieper
Objective
The goal of our project is to be able to use Slicer3's advanced imaging algorithms and 3D functionality from inside a clinical workstation being developed at Northwestern University. We'd also like to reconfigure use of the main viewer for a new way to interact with the volume that might be more efficient for clinical use. Our main objectives to accomplish this goal include:
- Integrate the rendering and functionality of Slicer3 into a .Net foundation GUI for use in a clinical workstation
- Create a new representation of the 3D volume as a cube with an oblique cut plane rather than the default three orthogonal cut planes
Approach, Plan
To implement this integration process, we have taken the following steps:
- Convert Slicer3 into a managed class object
- Extract the renderers through existing accesor methods and add them to managed renderers using a VTK .Net wrapper
- Convert KWWidgets into .Net Controls
- Implement volume cube representation with existing Slicer3 code
Progress
The problem we focused on during the Programming Week at MIT was how to implement our desired modifications to Slicer3’s main 3D viewer. As previously described, we would like to present the volume as a cube with an oblique cut plane that slices through the volume, instead of three orthogonal cut planes as the viewer shows by default. Before we arrived, we were able to create additional cut planes and link them to the volume. By the end of the week, and with the help of Alex and Steve, we now have a fully functional oblique cut plane. The steps we took to accomplish this solution include:
- Computing the matrix transformations that align the slice node to the camera’s view plane normal
- Applying these transformations appropriately with the slice logic
- Adding observers to the slice node to update the orientation of the slice node as the user interacts with the viewport camera.
Our next steps include:
- Fixing the performance issues this solution has created
- Adding the additional slice nodes to represent the sides of the volume cube
- Clipping the slice nodes to form a solid volume
References
- A Translation Station for Imaging: P. Mongkolwat, T. Lechner, T. Johnson, A. Kogan, S. Talbot, D. S. Channin; Radiological Society of North America, Chicago, IL. November 2006.
- Advancing Advanced Visualization in the Clinical Environment: S. Talbot, P. Mongkolwat, D. S. Channin; Society for Imaging Informatics in Medicine (SIIM), Providence, RI, To be presented, June 2007.