skills$openclaw/image-to-relief-stl
ajmwagar7.2k

by ajmwagar

image-to-relief-stl – OpenClaw Skill

image-to-relief-stl is an OpenClaw Skills integration for data analytics workflows. Turn a source image (or multi-color mask image) into a 3D-printable bas-relief STL by mapping colors (or grayscale) to heights. Use when you have an image from an image-gen skill (nano-banana-pro, etc.) and want a real, printable model (STL) via a deterministic pipeline.

7.2k stars3.1k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026data analytics

Skill Snapshot

nameimage-to-relief-stl
descriptionTurn a source image (or multi-color mask image) into a 3D-printable bas-relief STL by mapping colors (or grayscale) to heights. Use when you have an image from an image-gen skill (nano-banana-pro, etc.) and want a real, printable model (STL) via a deterministic pipeline. OpenClaw Skills integration.
ownerajmwagar
repositoryajmwagar/image-to-relief-stl
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @ajmwagar/image-to-relief-stl
last updatedFeb 7, 2026

Maintainer

ajmwagar

ajmwagar

Maintains image-to-relief-stl in the OpenClaw Skills directory.

View GitHub profile
File Explorer
5 files
.
scripts
image_to_relief.py
7.6 KB
image_to_relief.sh
2.6 KB
_meta.json
292 B
SKILL.md
1.9 KB
SKILL.md

name: image-to-relief-stl description: Turn a source image (or multi-color mask image) into a 3D-printable bas-relief STL by mapping colors (or grayscale) to heights. Use when you have an image from an image-gen skill (nano-banana-pro, etc.) and want a real, printable model (STL) via a deterministic pipeline. metadata: openclaw: requires: bins: ["python3", "potrace", "mkbitmap"] install: - id: apt kind: apt package: potrace bins: ["potrace", "mkbitmap"] label: Install potrace + mkbitmap (apt) - id: brew kind: brew formula: potrace bins: ["potrace", "mkbitmap"] label: Install potrace + mkbitmap (brew)

image-to-relief-stl

Generate a watertight, printable STL from an input image by mapping colors (or grayscale) to heights.

This is an orchestrator-friendly workflow:

  • Use nano-banana-pro (or any image model) to generate a flat-color image.
  • Run this skill to convert it into a bas-relief model.

Practical constraints (to make it work well)

Ask the image model for:

  • exactly N solid colors (no gradients)
  • no shadows / no antialiasing
  • bold shapes with clear edges

That makes segmentation reliable.

Quick start (given an image)

bash scripts/image_to_relief.sh input.png --out out.stl \
  --mode palette \
  --palette '#000000=3.0,#ffffff=0.0' \
  --base 1.5 \
  --pixel 0.4

Grayscale mode

bash scripts/image_to_relief.sh input.png --out out.stl \
  --mode grayscale \
  --min-height 0.0 \
  --max-height 3.0 \
  --base 1.5 \
  --pixel 0.4

Outputs

  • out.stl (ASCII STL)
  • optional out-preview.svg (vector preview via potrace; best-effort)

Notes

  • This v0 uses a raster heightfield meshing approach (robust, no heavy CAD deps).
  • The --pixel parameter controls resolution (smaller = higher detail, bigger STL).
README.md

No README available.

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

  • OpenClaw CLI installed and configured.
  • Language: Markdown
  • License: MIT
  • Topics:

FAQ

How do I install image-to-relief-stl?

Run openclaw add @ajmwagar/image-to-relief-stl in your terminal. This installs image-to-relief-stl into your OpenClaw Skills catalog.

Does this skill run locally or in the cloud?

OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.

Where can I verify the source code?

The source repository is available at https://github.com/openclaw/skills/tree/main/skills/ajmwagar/image-to-relief-stl. Review commits and README documentation before installing.