InsightSoftwareConsortium / itkwidgets

An elegant Python interface for visualization on the web platform to interactively generate insights into multidimensional images, point sets, and geometry.
https://itkwidgets.readthedocs.io/
Apache License 2.0
576 stars 83 forks source link

Label image volume is not visible outside of intensity image bounds in `view` #662

Open tbirdso opened 1 year ago

tbirdso commented 1 year ago

Overview

When viewing two binary images with view(image1, label_image=image2), only the first image volume is displayed. The second image volume can be inferred as intersections on the label surface.

itkwidgets-boundary-contour

Expected Behavior

Two volumes of different colors are visible in the scene.

Observed Behavior

One volume is visible as a 3D boundary. The intersection of the other volume is implied as discoloration on the first volume surface.

Minimum Reproducible Example

arr1 = np.zeros([25,25,25], dtype=np.uint8)
arr1[1:15,1:15,1:15] = 1
image1 = itk.image_view_from_array(arr1)

arr2 = np.zeros([25,25,25], dtype=np.uint8)
arr2[:20,:5,:5] = 1
image2 = itk.image_view_from_array(arr2)

itkwidgets.view(image1, label_image=image2)

Intersection in red:

min-example

cc @PaulHax

thewtex commented 1 year ago

In this case the bounding box visualization would be helpful.

ManooshSamiei commented 6 months ago

In itk 5.3.0 this intersection for label image is not shown at all. Do you have any suggestions?