Minimal RENI++ Inference
This directory evaluates the thesis RENI++ illumination prior with a small
CPU environment containing PyTorch, NumPy and Pillow. It does not install
Nerfstudio, tiny-cuda-nn, COLMAP, or the full ns_reni package.
Download the minimal release group from the repository root:
python scripts/download_models.py model-storage/reni --group minimal
Then render a deterministic random sample on CPU:
cd model-storage/reni/minimal
uv run render.py --weights decoder.pt --output-dir render
The release directory is self-contained: it includes the decoder artifact,
reference implementation, rendering example, Apache 2.0 licence and locked
CPU environment. From the source-tree copy of this example, pass the
downloaded model-storage/reni/minimal/decoder.pt path explicitly.
The command writes:
environment_linear_hdr.pt, a[H, 2H, 3]linear-HDR tensor;environment_preview.png, a display-tonemapped preview;latent.pt, the[100, 3]latent used for the render.
The output is in the fixed luminance gauge used to train the two-bracket model. Apply a scalar exposure in linear HDR when absolute scene exposure is required.
reni_decoder.py is a release-specific reference implementation. It includes
the learned joint Vector Neuron frame, its Gram-Schmidt orthonormalisation, the
directional encoding, attention decoder, and two-bracket HDR reconstruction.
The full Nerfstudio checkpoint remains the source for continued training and
for reproducing analyses of the learned training latents.