Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Volume rendering application to display 3D medical imaging data in the browser. Built with WebGPU.

License

Notifications You must be signed in to change notification settings

fraserlove/ossium

Repository files navigation

Ossium

A volume rendering application to display 3D volumes created from DICOM files in the browser, using WebGPU. Two rendering techniques are implemented: Multi-Planar Reformatting (MPR) using maximum intensity projection and Shaded Volume Rendering (SVR) using Blinn-Phong lighting. Ossium requires a WebGPU-enabled browser to run.

Below is an example of Ossium running on a volume of a human brain, avaliable under the assets/ folder.

MPR

Installation and Usage

Clone the repository and install the dependencies:

git clone https://github.com/fraserlove/ossium.git
yarn install

Build ossium and start the development server:

yarn build && yarn dev

The application runs on port 8080 and can be accessed in the browser by going to http://localhost:8080.

Generating a Transfer Function

The transfer function is a 1D texture that maps the intensity values of the volume to colours. It is stored in a file with the .tf extension.

To generate a transfer function, run the following command:

python scripts/tf_generator.py

This will generate a transfer function file with the default settings. The transfer function can then be loaded into the application using the Load Transfer Function button in the GUI.

Keybindings

Action Controls
Rotate Left Click + Drag
Pan Right Click + Drag
Zoom Vertical Scroll
Cine Horizontal Scroll
Change Light Direction Control + Left Click + Drag (SVR only)

About

Volume rendering application to display 3D medical imaging data in the browser. Built with WebGPU.

Topics

Resources

License

Stars

Watchers

Forks