Kitware / vtk-js

Visualization Toolkit for the Web
https://kitware.github.io/vtk-js/
BSD 3-Clause "New" or "Revised" License
1.23k stars 371 forks source link

Overlay to display segmentations in 2D #724

Open aylward opened 6 years ago

aylward commented 6 years ago

An overlay is the concept used to illustrate how segmentations associated with an image volume can be shown in correspondence with a 2D slice of that volume in a 2D slice view render window that is displaying that image.

Overlays need to convey: 1) Area within a contour (geometry) that intersects that slice 2) Area contained within multiple contours 3) Landmarks 4) Position of 3D widgets on that slice 5) Host 2D contours as they are being drawn 6) Host painting actions (which could have a 3D effect) 7) Intersection between a slice and a point cloud.

The idea is that an overlay has an image (or an image has an overlay) and the 2D slice view render window knows how to display a slice through the overlay with the corresponding slice from the image. The overlay handles complexities regarding geometry-surface intersection, filling-in geometries, allowing a click on an image/overlay to identify the corresponding geometries that contain that location, and displaying the overlay data as a transparent surface corresponding to a slice.

We may need to start tracking "slice thickness" in images and/or overlays.

pieper commented 6 years ago

here's the example we discussed: https://dcmjs-org.github.io/dcmjs/examples/vtkDisplay/index.html