Difference between revisions of "DICOM:Database"

From Slicer Wiki
Jump to: navigation, search
Line 9: Line 9:
 
== Example Data ==
 
== Example Data ==
  
* [http://github.com/pieper/CTK/blob/master/Libs/DICOM/Resources/dicom-schema.sql MITK DICOM Schema]
+
* [http://github.com/pieper/CTK/blob/master/Libs/DICOM/Core/Resources/dicom-schema.sql MITK DICOM Schema]
* [http://github.com/pieper/CTK/blob/master/Libs/DICOM/Resources/dicom-sample.sql Dump of example database created with schema above]
+
* [http://github.com/pieper/CTK/blob/master/Libs/DICOM/Core/Resources/dicom-sample.sql Dump of example database created with schema above]
 
* [[file:dicom-database-examples-2010-03-09.zip| Sample DICOM data used to create the database dump]]
 
* [[file:dicom-database-examples-2010-03-09.zip| Sample DICOM data used to create the database dump]]
* [[Slicer3/strawman DICOM Schema|Lorensen's strawman sqlite DICOM schema]]  
+
* [[Slicer3/strawman DICOM Schema|Lorensen's strawman sqlite DICOM schema]]
  
 
== Considerations ==
 
== Considerations ==

Revision as of 15:26, 14 March 2010

Home < DICOM:Database

Local databases to organize DICOM header information are often used in medical image applications and workstations. This page is used to organize information and examples.

History

Bill started a thread on the slicer-devel mailing list about improving dicom parsing performance. This message includes a sample sql database schema as an attachment.

At the CTK meeting, Marco Nolden showed a similar approach has been followed as part of the MITK project using DCMTK to fill an SQLite database.

Example Data

Considerations

  • It would be ideal if the database schema was standardized and could be used with any DICOM toolkit (GDCM and/or DCMTK).
  • The MITK schema is nice because it uses the standard DICOM field names for the columns, for example PatientsUID, ModalitiesInStudy, etc).
  • Eventually we could create an ITK IO Factory plugin reader that an read when given an SQLite filename and a query string that specifies a volume. With something like: "/tmp/dicom.db:SeriesUID=1.2.3...." If the SQL database kept the width, height, and pixel data offset then the files could be read quickly without re-parsing.
  • Marco plans to contribute a cleaned up version of the MITK code to the CTK git repository.