Autoforge / README.md
hvoss-techfak's picture
initial commit
4fddc2b

A newer version of the Gradio SDK is available: 5.33.0

Upgrade
metadata
title: Autoforge
emoji: 🏢
colorFrom: gray
colorTo: yellow
sdk: gradio
sdk_version: 5.29.1
app_file: app.py
pinned: false
license: other
short_description: Generating 3D printed layered models from an input image

Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference

AutoForge

AutoForge is a Python tool for generating 3D printed layered models from an input image. Using a learned optimization strategy with a Gumbel softmax formulation, AutoForge assigns materials per layer and produces both a discretized composite image and a 3D-printable STL file. It also generates swap instructions to guide the printer through material changes during a multi-material print. \

TLDR: It uses a picture to generate a 3D layer image that you can print with a 3d printer. Similar to Hueforge, but without the manual work (and without the artistic control).

Example

All examples use only the 13 BambuLab Basic filaments, currently available in Hueforge, the background color is set to black. The pruning is set to a maximum of 8 color and 20 swaps, so each image uses at most 8 different colors and swaps the filament at most 20 times.

Input Image

Autoforge Output

Features

  • Image-to-Model Conversion: Converts an input image into a layered model suitable for 3D printing.
  • Learned Optimization: Optimizes per-pixel height and per-layer material assignments using PyTorch.
  • Learned Heightmap: Optimizes the height of the layered model to create more detailed prints.
  • Gumbel Softmax Sampling: Leverages the Gumbel softmax method to decide material assignments for each layer.
  • STL File Generation: Exports an ASCII STL file based on the optimized height map.
  • Swap Instructions: Generates clear swap instructions for changing materials during printing.
  • Live Visualization: (Optional) Displays live composite images during the optimization process.
  • Hueforge export: Outputs a project file that can be opened with hueforge.