cornerstonejs / cornerstone3D

Cornerstone is a set of JavaScript libraries that can be used to build web-based medical imaging applications. It provides a framework to build radiology applications such as the OHIF Viewer.
https://cornerstonejs.org
MIT License
574 stars 294 forks source link

[Bug] Display fault when patient orientation is not axil-aligned #640

Open shaoxunxuhiu opened 1 year ago

shaoxunxuhiu commented 1 year ago

Describe the Bug

Hello, I found a display fault when the patient orientation is non-aligned (ImageOrientation metadata is unusual, oblique orientation) with InterpolationType.NEAREST applied as interpolation method. Also, the segmentation tool doesn't work properly, the pixels on the border which is caused by the orientation correction cannot be colored displayed and colored by the brush tool.

Here is a demo video and a figure:

https://github.com/cornerstonejs/cornerstone3D/assets/132644082/e679fc1a-6431-4327-bc44-feb0415e01d9

241167891-eed6f0b2-dca4-41fb-b3f5-6268f159df30

Here is a demo dicom file with oblique patient orientation: C3L-03196.zip

Steps to Reproduce

  1. Set the InterpolationType to NEAREST to show the provided dicom data.
  2. Show different slices to see the border pixels caused by the orientation correction, which is likely a fault line.

The current behavior

There is a "border line".

The expected behavior

Display as liner InterpolationType, without "border line".

OS

Windows 10

Node version

16.15.1

Browser

Microsoft Edge 113.0.1774.57

sedghi commented 1 year ago

How does other viewers render this workflow? Like have you tried 3D Slicer?

zhoualibaba commented 1 year ago

Other viewerscan render normally.You can download the demo data above to try it out.When the meta tag(0020,0037)Image Orientation Patient is not an integer list,it often occurs.When i use ACQUISITION orientation,it looks normal,i want to know can i combine ACQUISITION with AXIAL/CORONAL/SAGITTAL for use.

sedghi commented 1 year ago

You can't combine them, it is either or situation.