Edit this page

NA-MIC Project Weeks

Back to Projects List

Efficient Handling and Progressive Loading of Compressed Multiframe DICOM Images

Key Investigators

Presenter location: Online

Project Description

Loading compressed multiframe DICOM images as a whole causes frequent browser crashes, particularly on Microsoft machines. This issue arises due to the large file size of the DICOM images, exceeding the browser’s memory capacity.

The browser’s rendering engine attempts to load the entire file into memory, due to the significant size of these images, the browser can quickly exhaust its allocated memory, leading to crashes or unresponsive behavior.

This issue affects both ePAD and OHIF with the latest WADO-loader version. Note that the crash can be reproduced in the current OHIF v3 version, so it has impact on projects including IDC.

Objective

Initiate a discourse about the methodologies for saving, storing, and reading DICOM data, and explore strategies for optimizing the handling of compressed multiframe images to achieve enhanced efficiency and avoid browser crashing.

Approach and Plan

Progress and Next Steps

After conducting further tests, we discovered an additional observation regarding the uncompressed images. It became evident that even when working with uncompressed images, if the image size exceeds a certain threshold (500 MB), OHIF crashes almost instantly, within a matter of seconds.

This finding underscores the importance of addressing the performance and stability concerns, not only for handling compressed images but also for handling larger uncompressed images. It emphasizes the need to optimize the OHIF viewer and its underlying components like cornerstoneWADOImageLoader and dicomParser to ensure robust performance across a wide range of image sizes.

We have made significant progress in addressing various issues related to the OHIF viewer and its underlying components:

PR link: https://github.com/cornerstonejs/cornerstoneWADOImageLoader/pull/454#issue-1287614710

Ticket link: https://github.com/cornerstonejs/dicomParser/issues/248

PR Link: https://github.com/cornerstonejs/dicomParser/pull/251

Illustrations

Crash screenshot crash-image Sample multiframe loaded successfully with suggested improvements multiframe-uncompressed

Background and References

Uncompressed ultrasound image https://github.com/emelalkim/sampledata/releases/tag/large_multiframe

Unfortunately we couldn’t deidentify the compressed ultrasound images.

Related libraries: https://github.com/cornerstonejs/cornerstoneWADOImageLoader https://github.com/cornerstonejs/dicomParser