Volume rendering of Voxel based data

Deborah Schmidt
Helmholtz Imaging | MDC Berlin
Sep 25, 2024
Slides available at https://ida-mdc.github.io/workshop-visualization/1-3_in-depth-voxels/

Visualizing volumetric datasets

  • Slice-Based Visualization: This involves rendering 2D cross-sections or “slices” of the 3D dataset, often used in medical imaging.
  • Volume raycasting (max intensity, emission absorbtion)
Slicing, Max. Intensity, Emission Absorbtion

Slicing, Max. Intensity, Emission Absorbtion

Thetawavederivative work: Florian Hofmann, CC BY-SA 3.0

Thetawavederivative work: Florian Hofmann, CC BY-SA 3.0

Visualizing Voxel Data interactively with napari

  1. Install and activate environment (guide)
  2. Download Notebook voxel_rendering_napari.ipynb into workshop directory
  3. Type jupyter lab and press Enter
  4. Open Notebook from list of files on the left side
  5. Run Cells in the Notebooks one by one by pressing Shift and Enter

Visualizing volumetric datasets

Transfer functions

Rendering with VTK including Transfer Function adjustment

  1. Install and activate environment (guide)
  2. Download Notebook voxel_rendering_vtk.ipynb into workshop directory
  3. Type jupyter lab and press Enter
  4. Open Notebook from list of files on the left side
  5. Run Cells in the Notebooks one by one by pressing Shift and Enter

Big Data Rendering

How can images be loaded partially and on demand?

  • Image stored in chunks as files on disk
  • Image stored in different resolutions
  • Open Microscopy Environment specification format (OME-NGFF)

Big Data Rendering

BigDataViewer Ecosystem

  • Supports large data formats: The BDV ecosystem can handle massive 3D datasets and allow arbitrary slicing.

Big Data Rendering

Streaming data locally

With Python:

  • Step 1: Open your terminal and activate the workshop environment
  • Step 2: Download this script somewhere convenient.
  • Step 3: Navigate to your data: cd workshop
  • Step 4: Run the script: python server.py
  • Step 2: Open the Neuroglancer demo page and enter the local URL of your data (e.g., zarr://http://localhost:8000/my-dataset.ome.zarr).

Big Data Rendering

Providing data

  1. Open https://ome.github.io/ome-ngff-validator/
  2. Either open one of their example URLs, or..
  3. .. attach your data URL to the validator URL: https://ome.github.io/ome-ngff-validator/?source=http://0.0.0.0:8080/my-dataset.ome.zarr

Visualizing volumetric datasets

Web based rendering with Neuroglancer

  • Collaboration-friendly: Share URLs with collaborators to provide access to the 3D visualization.