OHIF / Viewers

OHIF zero-footprint DICOM viewer and oncology specific Lesion Tracker, plus shared extension packages
https://docs.ohif.org/
MIT License
3.29k stars 3.32k forks source link

Unable to load segmentations #1699

Closed fedorov closed 4 years ago

fedorov commented 4 years ago

Before Creating an issue

  • Are you running the latest version?

3.11.3

  • Are you reporting to the correct repository?

Yes.

  • Did you search existing issues?

It is related to #1345, but is not the same.

Bug Report

Describe the Bug

I try to load a study that has one axial CT and 2 SEG series (axial and sagittal), see here: https://idc-sandbox-000.firebaseapp.com/projects/idc-tcia/locations/us/datasets/issues/dicomStores/issue-2-kits/study/1.3.6.1.4.1.14519.5.2.1.6919.4624.232054350417049226102282907929.

Once I load the study, I see 2 SEGs flashing for a moment on the left panel, and then disappear. The segmentation selector on the right does not have anything.

Developer log shows the following (both segmentation series are BINARY, not FRACTIONAL):

image

What steps can we follow to reproduce the bug?

https://idc-sandbox-000.firebaseapp.com/projects/idc-tcia/locations/us/datasets/issues/dicomStores/issue-2-kits/study/1.3.6.1.4.1.14519.5.2.1.6919.4624.232054350417049226102282907929

Related to https://github.com/ImagingDataCommons/TCIA-IDC-DataReviewCoordination/issues/2

JamesAPetts commented 4 years ago

I've checked this and the fractional message is a red herring of bad error propagation which I'll fix, so we get the correct error.

As for the segmentation, the axial one loads and the sagittal one doesn't. We could reformat these segmentations so they lie in plane, since they aren't oblique, but not handled by dcmjs yet (which only has support for segmentations in the acquisition plane).

I'll work on out of plane segmentation, for orthogonal segmentations which will also deal with #1345.

pieper commented 4 years ago

but not handled by dcmjs yet (which only has support for segmentations in the acquisition plane).

Did you mean cornerstone here?

JamesAPetts commented 4 years ago

I meant dcmjs's cornerstone adapter. It only has support for segmentations defined in the acquistion plane (although maybe flipped, rotated). cornerstone/vtkjs data is just a cube, so we can put the data in the correct orientation if we correct this in dcmjs.

pieper commented 4 years ago

Ahh, I see 👍

fedorov commented 4 years ago

@JamesAPetts out of plane segmentations are covered in #1345, and it can stay there (and it is not urgent). This present issue was that I did not see any segmentations on the list on the right. But I just tried the link above, and I was able to see axial segmentations, so I don't know what's going on.

For the out-of-plane segmentations, for that specific collection, out of plane SEGs will be replaced with the axial ones. We talked with the data submitter, and they created out of plane SEGs without realizing it, so we will fix those in the collection (inconsistent orientation is great for testing, but in practice can lead to various complications for the downstream users).

fedorov commented 4 years ago

Also, after some tinkering, which involved trying to select out of plane seg in the list on the right, I ended up with "black screen" and a different error in the console:

image

JamesAPetts commented 4 years ago

The latter is a red herring, I'll put better error propogation in dcmjs and we can deal with this and load up a dialog.

JamesAPetts commented 4 years ago

Thrown the correct messages depending on the issue (Orhtognal, not supported, Oblique not supported, fractional not supported) and thrown up a notification:

Will make a PR.

JamesAPetts commented 4 years ago

Resolved in #1708. If there are further issues please bring them up in a seperate ticket. :)