Anttwo/Surflo

Official implementation of Surflo: Consistent 3D Surface Flow Model with Global State.

What it solves

Surflo addresses the challenge of reconstructing detailed 3D surfaces from a small, variable number of unposed RGB images. It aims to provide a high-quality, clean mesh output that is significantly faster than optimization-based methods (like Gaussian Wrapping) and higher quality than feed-forward pointmap models.

How it works

Surflo encodes a set of input views (ranging from 2 to 80 images) into a fixed-size global latent state. It then uses flow matching to decode this state into an arbitrary number of oriented surface points, which are then used to generate a clean 3D mesh. The system supports both "plain" reconstruction (point cloud only) and "guided" reconstruction, where rendering guidance is used to refine the surface and extract a mesh.

Who it’s for

This tool is designed for researchers and developers working in 3D computer vision, surface reconstruction, and 3D asset creation who need fast, high-fidelity 3D meshes from limited image sets.

Highlights

  • Variable Input Views: Supports reconstruction from as few as 2 or as many as 80 images.
  • Fast Inference: Runs an order of magnitude faster than optimization-based state-of-the-art methods.
  • Flexible Guidance: Offers multiple guidance presets (minimal, short, default, long) to balance runtime, VRAM usage, and detail level.
  • Integrated Pipeline: Provides a full pipeline from image loading and encoding to point cloud generation and mesh extraction.
  • Python API: Includes a facade for easy integration into other applications.

Related

  • Project
  • Project
  • Project
  • Project