Skip to content

feat(core): rework DICOM / series relationship in Sight

Description

A new DICOM reader has been implemented to take use of the shared DICOM context, allowing to have access to all DICOM properties from the original DICOM files. The new reader is also able to read DICOM IMAGE files that were not well-supported, most notably:

  • All Ultrasound Images IOD (Enhanced US Volume, Ultrasound Image, Ultrasound Multi-Frame Image)
  • RGB Image with YBR color space (used in jpeg image)
  • Encapsulated transfer syntax
  • Unusual planar configuration (r1r2r3...g1g2g3...b1b2b3 instead of r1g1b1r2g2b2r3g3b3...)
  • Monochrome 1 image

Few bugs have also been corrected, and some enhancement has been done:

  • Allows selecting the series to read in case there are more than one series found
  • Huge speedup: 4x faster reading
  • 2x less memory used
  • Fixed many bugs in the Series selection dialog:
    • crash with date/time on anonymized data (which contained unusual dates)
    • wrong data displayed
    • wrong data selected
    • added utf-8 / internationalization support (yes René is now displayed correctly, and far east patient are no more a number of squares)
  • Thread management of GUI stuff like cursors, DICOM logger dialog, etc.... Nobody noticed, but busy cursors were not always displayed.
  • some tests were added (and also US data on sight-data)

Unfortunately, there are some missing feature comparing to old DICOM reader:

  • NO PACS support yet. DIMSE still relies on old DICOM code
  • Only Images. Segmentation surface, structured report, etc. still rely on old DICOM code.

SightViewer does not support RBG image or double type images. Some (most) US DICOM files will be badly displayed as they are not monochrome..

Closes #862 (closed)

How to test it?

  • Launch SightViewer and play with DICOM. Try with a single DICOM, with a root of many DICOM subdirectories
Edited by Didier WECKMANN

Merge request reports