Difference between revisions of "DICOM:Interface"

From Slicer Wiki
Jump to: navigation, search
 
(12 intermediate revisions by 3 users not shown)
Line 7: Line 7:
 
[[image:Osirix-local-database-screen 1.png|thumb|300px|center|Osirix local database view]]
 
[[image:Osirix-local-database-screen 1.png|thumb|300px|center|Osirix local database view]]
 
[[image:Osirix-qurey-interface 3.png|thumb|300px|center|Osirix Query Interface]]
 
[[image:Osirix-qurey-interface 3.png|thumb|300px|center|Osirix Query Interface]]
 +
 +
=== Related Efforts and Implementations ===
 +
 +
* A very nice dicom browser implementation also exists in [http://graphics.tudelft.nl/Projects/DeVIDE DeVIDE] from Delft University.  The DeVIDE project provides [http://devidenews.wordpress.com/2008/05/10/screencast-of-new-dicombrowser-in-85/ a screencast of the browser in action].
 +
* The [http://www.vph-noe.eu/vph-repository/cat_view/12-vph-related-strategy-documents?start=10 Virtual Physiological Human (VHP) European Network of Excellence] has also been looking at new DICOM browser functionality.
 +
** These [http://www.creatis.insa-lyon.fr/~cervenansky/DCM%20API%20SPECIFICATIONS.pdf design] [http://www.creatis.insa-lyon.fr/~cervenansky/DCMAPISDD.pdf documents] describe the project.
 +
** The effort is an expansion of the [http://www.creatis.insa-lyon.fr/site/fr/CreatoolsCreaImageIO CreatTools Image IO Interface].
  
  
 
== Design Discussion ==
 
== Design Discussion ==
  
Wendy has [[Slicer3:UIDesign:WorkingProblems:XNAT_Desktop_GUI_Design|Design Discussion| done a review]] and created a design that generalizes the DICOM concepts while maintaining the core concepts used in clinical applications.
+
=== Use-case scenarios ===
 +
We have begun collecting some use-case scenarios with Martin Styner's group on this topic. In these scanarios users want to query an (XNAT) repository of information using DICOM and other relevant metadata: [[Slicer3:UIDesign:WorkingProblems:XNAT_Enterprise_QueryWidget | USE-CASE SCENARIOS]]. Please feel free to add more use-case descriptions to the page.
 +
 
 +
=== Manage data & load interface for DICOM & other formats ===
 +
We are also working on a generalized Load interface, which is both a Slicer component and a stand-alone application for managing data. To '''manage data''', the interface would allow users to import data from a number of sources, including
 +
* disk
 +
* local database
 +
* repository and database (XNAT enterprise instance)
 +
* DICOM SCP (PACS)
 +
To load data into Slicer, the interface would allow users to select from among the sources above, query, browse results, and retrieve and load data into Slicer. This design is currently in progress: [[Slicer3:UIDesign:WorkingProblems:Slicer_Consolidated_Load_GUI_Design | MANAGE, QUERY, & LOAD DATA INTERFACE ]]
 +
 
 +
=== XNAT Desktop new interface version ===
 +
Finally, we are working on a new interface for XNAT Desktop which mirrors the data management portion of the functionality above, and presents similar layout and user experience (to maximize knowledge transfer for users among the set of tools: [[Slicer3:UIDesign:WorkingProblems:XNAT_Desktop_GUI_Design| XNAT Desktop design discussion]]. This work is in progress.
  
 
[[Image:SlicerXNDLayout_Draft2.png | thumb | 400px | center | Generalized design for remote resource query ]]
 
[[Image:SlicerXNDLayout_Draft2.png | thumb | 400px | center | Generalized design for remote resource query ]]
Line 27: Line 46:
 
|- style="background:#ebeced; color:black" align="left"  
 
|- style="background:#ebeced; color:black" align="left"  
 
| style="width:25%" | '''Name'''
 
| style="width:25%" | '''Name'''
 +
| style="width:5%" | '''Age'''
 
| style="width:15%" | '''Scan'''
 
| style="width:15%" | '''Scan'''
 
| style="width:15%" | '''Date'''  
 
| style="width:15%" | '''Date'''  
 
| style="width:15%" | '''Subject ID'''
 
| style="width:15%" | '''Subject ID'''
 
| style="width:15%" | '''Number'''
 
| style="width:15%" | '''Number'''
 +
| style="width:15%" | '''Institution'''
 
| style="width:15%" | '''Referrer'''  
 
| style="width:15%" | '''Referrer'''  
 +
| style="width:15%" | '''Performer'''
 
|-
 
|-
| style="background:#ffffdd; color:black"|Patient.PatientsName
+
| style="background:#ffffdd; color:black"|'''Patient.PatientsName'''
 +
| style="background:#ffffdd; color:black"|'''Patient.PatientsAge'''
 
| style="background:#888888; color:black"|   
 
| style="background:#888888; color:black"|   
| style="background:#888888; color:black"| Patient.PatientsBirthDate
+
| style="background:#888888; color:black"|'''Patient.PatientsBirthDate'''
| style="background:#888888; color:black"|       +  Patient.PatientsID
+
| style="background:#888888; color:black"|'''Patient.PatientsID'''
 +
| style="background:#888888; color:black"|
 +
| style="background:#888888; color:black"|
 
| style="background:#888888; color:black"|
 
| style="background:#888888; color:black"|
 
| style="background:#888888; color:black"|
 
| style="background:#888888; color:black"|
 
|-
 
|-
| style="background:#ffffdd; color:black"|Studies.StudyDescription  
+
| style="background:#ffffdd; color:black"|''+Studies.StudyDescription''
| style="background:#888888; color:black"|Studies.ModalitiesInStudy
+
| style="background:#888888; color:black"|
| style="background:#888888; color:black"|Studies.StudyDate
+
| style="background:#888888; color:black"|''Studies.ModalitiesInStudy''
 +
| style="background:#888888; color:black"|''Studies.StudyDate''
 
| style="background:#888888; color:black"|
 
| style="background:#888888; color:black"|
| style="background:#888888; color:black"|Studies.AccessionNumber
+
| style="background:#888888; color:black"|''Studies.AccessionNumber''
| style="background:#888888; color:black"|Studies.ReferringPysician
+
| style="background:#888888; color:black"|''Studies.InstiutionName''
 +
| style="background:#888888; color:black"|''Studies.ReferringPysician''
 +
| style="background:#888888; color:black"|''Studies.PerformingPysician''
 
|-
 
|-
| style="background:#ffffdd; color:black"|Series.SeriesDescription
+
| style="background:#ffffdd; color:black"|++Series.SeriesDescription
| style="background:#ebeced; color:black"|Series.BodyPartExamined
+
| style="background:#888888; color:black"|
| style="background:#b4d597; color:black"|Series.SeriesDate
+
| style="background:#888888; color:black"|Series.BodyPartExamined
| style="background:#b4d597; color:black"|
+
| style="background:#888888; color:black"|Series.SeriesDate
| style="background:#fff6a6; color:black"|Series.AcquisitionNumber
+
| style="background:#888888; color:black"|
| style="background:#b4d597; color:black"|
+
| style="background:#888888; color:black"|Series.AcquisitionNumber
 +
| style="background:#888888; color:black"|
 +
| style="background:#888888; color:black"|
 +
| style="background:#888888; color:black"|
 
|-
 
|-
 
|}
 
|}
 +
 +
== Progress ==
 +
 +
[[image:CtkDICOM-prototype-2010-03-14.png|thumb|center|500px|At the end of the [http://www.na-mic.org/Wiki/index.php/Events:CTK-Pre-Hackfest-2010 CTK prehackfest] a non-functional Qt based interface has been developed.  The internal structure of the tree browser is close to completion.  Many of the other features (searching and query-retrieve) are yet to be done.]]

Latest revision as of 22:59, 15 March 2010

Home < DICOM:Interface

Goals

Ideally we will have a nice set of reusable Qt widgets for different aspects of the DICOM interaction process. Since Osirix is widely used (and praised) we are using their interface as an inspiration for our work.

The screenshots show some of the essential functionality.

Osirix local database view
Osirix Query Interface

Related Efforts and Implementations


Design Discussion

Use-case scenarios

We have begun collecting some use-case scenarios with Martin Styner's group on this topic. In these scanarios users want to query an (XNAT) repository of information using DICOM and other relevant metadata: USE-CASE SCENARIOS. Please feel free to add more use-case descriptions to the page.

Manage data & load interface for DICOM & other formats

We are also working on a generalized Load interface, which is both a Slicer component and a stand-alone application for managing data. To manage data, the interface would allow users to import data from a number of sources, including

  • disk
  • local database
  • repository and database (XNAT enterprise instance)
  • DICOM SCP (PACS)

To load data into Slicer, the interface would allow users to select from among the sources above, query, browse results, and retrieve and load data into Slicer. This design is currently in progress: MANAGE, QUERY, & LOAD DATA INTERFACE

XNAT Desktop new interface version

Finally, we are working on a new interface for XNAT Desktop which mirrors the data management portion of the functionality above, and presents similar layout and user experience (to maximize knowledge transfer for users among the set of tools: XNAT Desktop design discussion. This work is in progress.

Generalized design for remote resource query

Implementation

Initial implementation tests are happening in the context of Common Toolkit working sessions.

Column Layout

Suggested Osirix-like local database view that uses the database layout proposed by MITK


Name Age Scan Date Subject ID Number Institution Referrer Performer
Patient.PatientsName Patient.PatientsAge Patient.PatientsBirthDate Patient.PatientsID
+Studies.StudyDescription Studies.ModalitiesInStudy Studies.StudyDate Studies.AccessionNumber Studies.InstiutionName Studies.ReferringPysician Studies.PerformingPysician
++Series.SeriesDescription Series.BodyPartExamined Series.SeriesDate Series.AcquisitionNumber

Progress

At the end of the CTK prehackfest a non-functional Qt based interface has been developed. The internal structure of the tree browser is close to completion. Many of the other features (searching and query-retrieve) are yet to be done.