Skip to content

ginzburg-dev/denoise-machine-x

Repository files navigation

DenoiseMachineX

linux-build-and-test License

A modular, open-source, high-performance C++ denoiser for removing rendering noise.

Featuring spatial and temporal filtering, multi-layer and multi-frame support, designed for flexibility and easy integration in modern pipelines


Features

  • Modern C++20 codebase
  • Multi-layer and multi-frame image abstraction
  • Pixel-wise and channel-wise access
  • Modular architecture for filters and IO
  • GPU/CUDA acceleration (planned/optional)
  • Unit-tested with GitHub Actions

Getting Started

Prerequisites

  • C++20 compiler (e.g., GCC 10+, Clang 11+, MSVC 2019+)
  • CMake 3.15+
  • (Optional) CUDA Toolkit for GPU acceleration

Build

This project uses OpenEXR and Imath for image file IO.

macOS:
brew install openexr imath

Ubuntu/Debian:
sudo apt install libopenexr-dev libimath-dev

Windows (recommended):
- Install vcpkg
- vcpkg install openexr

If OpenEXR is installed in a non-standard location:
cmake -DCMAKE_PREFIX_PATH=/path/to/openexr;/path/to/imath ..

git clone https://github.com/ginzburg-dev/denoise-machine-x.git
cd denoise-machine-x
mkdir build && cd build
cmake ..
cmake --build .

About

Open-source universal temporal/spatial denoising tool to remove rendering noise

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published