Skip to content

Latest commit

 

History

History
72 lines (46 loc) · 2.27 KB

File metadata and controls

72 lines (46 loc) · 2.27 KB

VisualNifty

VisualNifty is an interactive volumetric image viewer developed for medical imaging and scientific visualization. It is designed to efficiently render three-dimensional scalar fields from NifTi-format datasets. The system utilizes a ray casting-based Direct Volume Rendering (DVR) pipeline to transform raw intensity data into detailed visualizations. Advanced rendering techniques - such as gradient-based shading and ambient occlusion — are integrated to improve the perception of depth and surface detail, resulting in photorealistic images that depict internal structures. High performance enable real-time interactivity even on complex and high-resolution datasets. VisualNifty also offers an intuitive user interface that allows fine-grained adjustments of visualization parameters, like transfer functions, lighting configurations, and view manipulations.

Project Report

For a detailed description of the implementation and results, see the full report:

VisualNifty - A Volumetric image viewer

Screenshots

Startup Interface

Startup Interface

Photo Realistic Rendering

Photo Realistic

First Contact

First Contact

Compositing (Front-to-Back)

Compositing (Front-to-Back)

Maximum Intensity Projection

Maximum Intensity

Mean Density

Mean Density

Project Structure

src/
  main.cpp
  core/                # NIfTI data management
  interface/           # UI components (GradientEditor, LayoutSetup, RangeSlider)
  viewPort/            # 3D viewport, camera, and rendering logic
shaders/               # GLSL shader files for rendering
datasets/              # Example NIfTI datasets
CMakeLists.txt         # Build configuration

Getting Started

Prerequisites

  • C++17 compatible compiler (e.g., clang++)
  • OpenGL development libraries
  • Qt
  • RNifti (for NIfTI support)

Build Instructions

mkdir build
cd build
cmake ..
make

After building, run the application from the build directory:

./VisualNifty