BayesFusionSDF

# BayesFusionSDF ### Probabilistic Signed Distance Fusion with View Planning on CPU

arXiv Website CPU-first 3D Reconstruction Uncertainty Aware

**Official repository for BayesFusionSDF.** This repository provides the **research code, configuration files, and reproducibility utilities** accompanying the paper: **"BayesFusion–SDF: Probabilistic Signed Distance Fusion with View Planning on CPU"** Maintainer: **Soumya Mazumdar** Main website: **https://soumyamazumdar.com**

Repository Policy

This repository does not redistribute third-party datasets (such as CO3D or other restricted / terms-governed datasets). Instead, it provides scripts and instructions to obtain datasets from their official sources and generate the required preprocessing outputs.

In brief: the code is here, the mathematics is here, the documentation is here, but the datasets remain respectfully where their licenses intended them to remain.

Contents

Overview

BayesFusionSDF is a CPU-first probabilistic 3D reconstruction framework for dense geometry fusion from depth observations.

The method combines:

This repository contains:

The practical objective is to retain the interpretability and deployment simplicity of classical volumetric fusion while adding principled uncertainty estimates that are directly useful for reconstruction and view planning.

Installation

conda create -n bayesfusionsdf python=3.10 -y
conda activate bayesfusionsdf
pip install -r requirements.txt

Option B — venv + pip

python -m venv .venv

# Linux / macOS
source .venv/bin/activate

# Windows PowerShell
# .venv\Scripts\Activate.ps1

pip install -r requirements.txt

Notes

Data

Policy

This repository must not include:

Instead, the repository should provide:

What should be provided in GitHub

Recommended artifacts:

Example dataset layout

data/
  <dataset_name>/
    raw/
    processed/
      train/
      val/
      test/

Guidance for restricted datasets

For restricted datasets such as CO3D, provide:

Large files

If you need to distribute non-dataset large files such as:

prefer:

Training

Below is a template training command for the package layout:

python -m bayesfusionsdf.train \
  --config configs/train.yaml \
  --data_root ./data/<dataset_name>/processed \
  --output_dir ./outputs/exp01

Recommended training outputs:

Suggested practice:

Evaluation

A typical evaluation command may follow this structure:

python -m bayesfusionsdf.eval \
  --config configs/eval.yaml \
  --checkpoint ./outputs/exp01/checkpoints/latest.pt \
  --data_root ./data/<dataset_name>/processed \
  --output_dir ./outputs/exp01_eval

Recommended evaluation reports include:

Reproducibility

Recommended practices:

Optional but strongly recommended files:

scripts/reproduce_main_results.sh
scripts/smoke_test.sh

The aim is not merely that the code runs once, but that it runs again with approximately the same scientific dignity.

Directory Structure

Suggested repository structure:

BayesFusionSDF/
  bayesfusionsdf/              # Python package / core code
    __init__.py
    ...

  configs/
    train.yaml
    eval.yaml
    data/

  scripts/
    download_*.sh
    download_*.py
    preprocess_*.py
    reproduce_*.sh
    smoke_test.sh

  assets/                      # Small, permissive media only
  tests/                       # Optional unit / integration tests

  docs/                        # Optional documentation / figures
  outputs/                     # Generated locally, usually gitignored
  requirements.txt
  README.md
  LICENSE
  .gitignore
  DATASETS.md
  CITATION.cff                # Optional but recommended

Citation

If you use this repository in academic work, please cite:

@article{mazumdar2026bayesfusionsdf,
  title={BayesFusion--SDF: Probabilistic Signed Distance Fusion with View Planning on CPU},
  author={Mazumdar, Soumya and Rakesh, Vineet Kumar and Samanta, Tapas},
  journal={arXiv preprint arXiv:2602.19697},
  year={2026}
}

License

Specify the license intended for the codebase, for example:

If the repository depends on third-party software with additional license obligations, document them in:

Contact

Maintainer: Soumya Mazumdar
Website: https://soumyamazumdar.com

For repository-related communication, please use the issue tracker when appropriate so that questions, fixes, and clarifications remain visible to future travelers.

Must have

Optional but useful

What Not to Include

Do not commit:

Use:

to keep the repository clean, lawful, and pleasantly uneventful.