Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • sight sight
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 121
    • Issues 121
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
  • Merge requests 20
    • Merge requests 20
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Sight
  • sightsight
  • Merge requests
  • !849

feat(io): write Enhanced US Volume DICOM file

  • Review changes

  • Download
  • Email patches
  • Plain diff
Open Didier WECKMANN requested to merge 1010-feat-io-write-enhanced-us-volume-dicom-file into dev Nov 28, 2022
  • Overview 8
  • Commits 1
  • Pipelines 37
  • Changes 10

Description

Current Dicom Series writer has been updated to call a specialized writer when the SOP class is Enhanced US Volume.

The new writer is ultra-minimalist and almost certainly not 100% DICOM compliant, as it requires, nor checks for mandatory tags to operate. However, all frames of a data::ImageSeries (on Z axis) are saved losslessly in jpeg2000, and Series API allow writing/reading per-frame Image Position Patient/Volume, Image Orientation Patient/Volume, and Frame Acquisition Date Time. Even if the writer doesn't ensure other mandatory tags are present, it is still possible (and desirable) to write them using the Series API with the generated tag name / sop class from sight::data::dicom::Tag and sight::data::dicom::SopClass. Note however that the current API is limited to simple attributes, not the one located in a frame sequence like in Shared Functional Groups Sequence. For that, some adaptations are required (the same as `Image Position Patient…). This part will be updated later, when required.

Closes #1010

How to test it?

  • Launch unit tests !
  • Modify unit tests (sight/libs/io/dicom/test/tu/WriterTest.cpp) to not delete the written DICOM and try to open it in Slicer / ALiza / Pydicom
Edited Dec 05, 2022 by Didier WECKMANN
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: 1010-feat-io-write-enhanced-us-volume-dicom-file