Skip to content

DICOM image fails to load (cornerstone-core) – first slice decoding error #643

@LilachRayzin

Description

@LilachRayzin

Problem:
There are specific DICOM files that fail to load/display when attempting to render the first image. The UI crashes due to a missing width (CanvasRenderingContext2D error). Any subsequent images fail to load as a result of the first slice crashing. However, if I start from slice 2 (index 1), everything loads and displays correctly.

Console Logs:
[INFO] Start to read j2k main header (0). :1
[INFO] Main header has been correctly decoded. :1
[INFO] Header of tile 1 / 1 has been read. :1
[ERROR] Failed to decode. :1
[ERROR] Failed to decode tile 1/1 :1
[ERROR] opj_decompress: failed to decode tile!
DicomPreview | Id:
chunk-LKZCTPPH.js?v=0d87cce0:4072
Uncaught IndexSizeError: Failed to execute 'getImageData' on 'CanvasRenderingContext2D': The source width is 0.
at webpack_exports.default (chunk-LKZCTPPH.js?v=0d87cce0:4072:50)
at getRenderCanvas (chunk-LKZCTPPH.js?v=0d87cce0:4225:89)
at renderGrayscaleImage (chunk-LKZCTPPH.js?v=0d87cce0:4271:30)
at webpack_exports.default (chunk-LKZCTPPH.js?v=0d87cce0:2836:15)
at draw (chunk-LKZCTPPH.js?v=0d87cce0:1531:91)

Code:
cornerstone
.loadAndCacheImage(ImgIds[0])
.then(image => {
cornerstoneTools.addTool(tool1);
cornerstoneTools.setToolActive('tool1', {});
cornerstone.displayImage(cornerstoneElement, image);
})
.catch(e => {
console.log('Error: Load image', e);
});

Version:
cornerstone-core: ^2.6.1

DICOM metadata example:
LossyImageCompression (0028,2110) 01
LossyImageCompressionRatio (0028,2112) 15.162
LossyImageCompressionMethod (0028,2114) ISO_15444_1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions