Convert an image into a closed STL heightmap.
Turn image luminance into a closed relief with a positive base, preserved aspect ratio, computed normals, and your choice of compact binary or readable ASCII STL.
Local processing. Depth, heightmap, and model operations happen in this tab; selected files are not sent to imgrove. Privacy details
Result will appear here
How to use Image to STL
- Drop one PNG, JPG, or WebP image with clear light and dark areas for heightmap sampling.
- Set the long-side grid, model width, relief height, and positive base thickness.
- Choose compact binary STL for routine handoff or readable ASCII STL for inspection.
- Download the closed mesh, then confirm its scale and geometry in a viewer or slicer.
How it works
- The browser samples source luminance on a rectangular grid whose long side matches the selected grid count, so the generated coordinates retain the source aspect ratio.
- Each grid cell becomes two top facets and two bottom facets; perimeter cells add connected side walls. The selected base thickness keeps the top above the bottom even where the source is black or transparent.
- Facet normals are calculated from each triangle's cross product. Binary export writes an 80-byte header, 4-byte triangle count, and 50-byte record per triangle; ASCII export writes the same geometry as readable text.
Formats and limits
| Input | Exactly one PNG, JPG, or WebP image. |
|---|---|
| Grid | 12 to 80 cells along the source's longer side; the shorter side is derived from the source aspect ratio. |
| Dimensions | Model width 1 to 1000 coordinate units, relief height 0.1 to 200, and positive base thickness 0.1 to 100. |
| Output | One closed binary or ASCII STL with top, bottom, four walls, and computed facet normals. |
| Units | STL stores coordinate values but no unit declaration; confirm the intended scale in the viewer or slicer. |
| Privacy | Image decoding, luminance sampling, geometry construction, encoding, and download stay in this browser tab. |
Real failure cases
- A photograph creates a relief from luminance, not a complete object or hidden back-side geometry.
- A high grid count increases triangles and file size; dense output can slow a mobile browser or slicer.
- The generated mesh can still need design review for minimum wall thickness, overhangs, orientation, support, and the destination machine.
Example result to verify
| Original | 96x72 PNG source. |
|---|---|
| Settings | 32-cell long side, width 80, relief 12, base 2, binary output. |
| Geometry | 32x24 cells, 80x60 coordinate footprint, 3,296 closed facets. |
| Binary size | 164,884 bytes from 84 + 50 × 3,296. |
| Verify | Open the STL, confirm the 4:3 footprint and intended unit, then inspect walls, base, wireframe, and normals. |
Best for
- Making closed relief meshes from logos or heightmap art.
- Testing image-to-3D ideas before using CAD software.
- Creating local STL experiments from private images.
What you get
- A binary or ASCII STL whose source aspect ratio is preserved.
- A positive base, closed bottom and four walls with computed facet normals.
- Adjustable long-side grid, model width, relief height, and base thickness.
Before you download
- This is a luminance relief, not full 3D object reconstruction.
- STL coordinates do not declare a unit, so confirm scale in the receiving app.
- Higher mesh grids create more triangles, larger files, and slower downloads.
Common examples
Use this converter when a flat image should become a simple closed relief and the receiving viewer or slicer accepts STL surface geometry.
- Logo or line-art relief. Use a clean high-contrast source, keep the default positive base, and choose a modest grid before increasing mesh detail.
- Wide or portrait source. The model keeps the source aspect ratio instead of forcing every heightmap into a square; verify the reported width and depth.
- Routine slicer handoff. Choose binary STL for a compact file, treat the coordinates as your agreed unit, and confirm imported dimensions before printing.
- Exporter inspection. Choose ASCII STL when readable facet and vertex lines help a small test, then use binary for larger routine meshes.
Helpful next tools
- STL File Format Guide - compare ASCII and binary, understand the missing unit declaration, and validate a solid mesh.
- 3D Model Viewer - open the downloaded STL and inspect dimensions, wireframe, and normals before handoff.
- Image to Depth Map - prepare a grayscale depth-style reference before constructing a relief.
- Image to GLB - choose a web-scene container when STL surface geometry is too limited.