A toolkit to provide GPU accelerated visualization of medical data.
Project description
Clara Viz
NVIDIA Clara Viz is a platform for visualization of 2D/3D medical imaging data. It enables building applications that leverage powerful volumetric visualization using CUDA-based ray tracing.
Clara Viz offers a Python Wrapper for rapid experimentation. It also includes a collection of visual widgets for performing interactive medical image visualization in Jupyter Lab notebooks.
Known issues
On Windows, starting with Chrome version 91 (also with Microsoft Edge) the interactive Jupyter widget is not working correctly. There is a delay in the interactive view after starting interaction. This is an issue with the default (D3D11) rendering backend of the browser. To fix this open chrome://flags/#use-angle
and switch the backend to OpenGL
.
Requirements
- NVIDIA GPU: Pascal or newer, including Pascal, Volta, Turing and Ampere families
- NVIDIA driver: 450.36.06+
Quick Start
Installation
This will install all Clara Viz packages use pip:
$ pip install clara-viz
Clara Viz is using namespace packages. The main functionality is implemented in the 'clara-viz-core' package, Jupyter Notebook widgets are found in the 'clara-viz-widgets' package. So for example if you just need the renderer use
$ pip install clara-viz-core
Render CT data from Python
from PIL import Image
import clara.viz.core
import numpy as np
# load a RAW CT data file (volume is 512x256x256 voxels)
input = np.fromfile("CT.raw", dtype=np.int16)
input = input.reshape((512, 256, 256))
# create the renderer
renderer = clara.viz.core.Renderer(input)
# render to a raw numpy array
output = renderer.render_image(1024, 768, image_type=clara.viz.core.RAW_RGB_U8_DEPTH_U8)
rgb_data = np.asarray(output)[:, :, :3]
# show with PIL
image = Image.fromarray(rgb_data)
image.show()
Use interactive widget in Jupyter Notebook
Install the Jupyter notebook widgets.
$ pip install clara-viz-widgets
Start Jupyter Lab, open the notebooks in the notbooks
folder.
from clara.viz.widgets import Widget
from clara.viz.core import Renderer
import numpy as np
# load a RAW CT data file (volume is 512x256x256 voxels)
input = np.fromfile("CT.raw", dtype=np.int16)
input = input.reshape((512, 256, 256))
display(Widget(Renderer(input)))
Acknowledgments
Without awesome third-party open source software, this project wouldn't exist.
Please find LICENSE-3rdparty.md
to see which third-party open source software
is used in this project.
License
Apache-2.0 License (see LICENSE
file).
Copyright (c) 2020-2021, NVIDIA CORPORATION.
clara-viz 0.1.0 (Dec 3 2021)
Initial release of Clara Viz
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for clara_viz_core-0.1.0-py2.py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dbec82991336068b1741bf6d46b7a40d737a134910884105ec8373642e622d57 |
|
MD5 | 423ef6fc41fcdcda92ac299ab7d750d7 |
|
BLAKE2b-256 | aec39a69dce974a3249de6f7e29b01a5894ad5b311aa6758c8915dde1493f10b |