PNG to STL gallery — real conversions, real settings

Every render below was produced by this site’s own mesh generator running in your browser — the same code path as the converter, not an artist’s impression of one. On the left is the grayscale PNG heightmap that went in; on the right is the watertight STL it produced. The parameter table under each pair is the exact configuration used, so you can reproduce any of them.

All seven are heightmap conversions: brightness becomes height, nothing is reconstructed or invented. That is the difference from an image‑to‑3D‑model tool, which has to guess at the back of the object from a single photograph and charges credits for every guess. If you want a genuine watertight bas-relief or lithophane from a logo, a line drawing, an icon or a shaded portrait, this is the right tool. If you want a full standing figurine reconstructed from a photo, it is not — no 2D converter can do that.

How to read these.The renders are shown with modest vertical exaggeration (about 2–3×) and a slight tilt so the relief reads in three dimensions. The exported STL is never exaggerated — you get the true millimetre dimensions listed in the tables.

Pharaoh bas-relief panel

Bas-relief · decorative panel

A symmetrical nemes headdress, uraeus cobra and bead collar turned into a full-bleed gold relief plaque.

Grayscale PNG heightmap source for the pharaoh relief: nemes headdress stripes, face shading, uraeus cobra and beaded usekh collar on a black background
Input — the grayscale PNG heightmap (brightness = height)
Golden Egyptian pharaoh bas-relief STL model rendered on black background, converted from a grayscale PNG heightmap by png2stl.com
Output — the exported STL relief model (228,796 triangles / 114,400 vertices)

This is the classic bas-relief case: the source is already front-facing artwork, so the heightmap needs almost nothing beyond a brightness curve. Because the whole plate is the subject, background detection is switched off — the dark nemes stripes are part of the design, not empty canvas. The stepped stripes on the headdress show exactly where a real machined relief would break into terraces, and the usekh collar at the bottom reads as three concentric rings of beads because that is literally what a concentric gradient does to a height field.

Relief height
2.6 mm
Edge radius
0.5 mm
Smoothing
1 pass
Base
1.5 mm thin
Height contrast
1.0 (linear)
Invert
off
Background detect
off (full-bleed panel)

Printing notes

Print flat on the bed with the relief facing up, 0.2 mm layers. If the nemes stripes look noisy, drop relief height to 2.2 mm rather than raising smoothing — the terracing is real geometry, not noise.

Rococo scrollwork panel

Bas-relief · CNC-style ornament

A wide acanthus-and-scroll ornamental panel with a beaded border, the way a CNC carver would leave a furniture or cabinet panel.

Grayscale PNG heightmap source for Rococo scrollwork: mirrored acanthus volutes, central rosette and beaded border drawn as white strokes on dark ground
Input — the grayscale PNG heightmap (brightness = height)
Ivory-white Rococo acanthus scrollwork CNC relief panel rendered on light grey, converted from a grayscale PNG heightmap by png2stl.com
Output — the exported STL relief model (319,196 triangles / 159,600 vertices)

Ornamental work is where the heightmap model genuinely beats AI reconstruction: the source is a line drawing, and a line drawing has exactly one correct interpretation — bright strokes become ridges. Nothing is invented. The four corner volutes and the central rosette are separated by broad flat ground, which is what gives the panel its crisp read; the beaded border sits proud of the field so it survives a 0.4 mm nozzle. Use this case to judge edge quality, since scrollwork is where stair-stepping shows up first.

Relief height
2.8 mm
Edge radius
0.4 mm
Smoothing
1 pass
Base
1.5 mm thin
Height contrast
1.0 (linear)
Invert
off
Background detect
off (full-bleed panel)

Printing notes

Use 0.4 mm or smaller to keep the volute tips from blobbing. A 0.4 mm edge radius is deliberate: at 0.6 mm the tight scroll turns merge into each other.

Commemorative coin

Relief · cast / token

A wreath-and-star coin built on the thicker base so the rim survives casting and cleanup.

Grayscale PNG heightmap source for a commemorative coin: circular rim, laurel wreath and a central star on a dark field
Input — the grayscale PNG heightmap (brightness = height)
Gold commemorative coin STL with laurel wreath and star relief, rendered in 3D from a grayscale PNG heightmap by png2stl.com
Output — the exported STL relief model (102,396 triangles / 51,200 vertices)

Coins and tokens want mass, not thinness, so this is the one case using the thick base. The rounded edge means the rim survives tumbling and casting — a sharp rim on a coin-sized part chips off during cleanup. Wreath leaves are thin, which is why the edge subdivision is doing real work here: it is what keeps a low feature from being swallowed by the bevel.

Relief height
1.8 mm
Base
3 mm thick
Edge radius
0.5 mm (default)
Smoothing
0 (off)
Height contrast
1.0 (linear)
Invert
off
Background detect
off (full-bleed panel)

Printing notes

Cast in resin or metal, or print at 0.12 mm layers for a crisp rim. The 3 mm base is what stops a 50 mm coin from flexing.

Mountain range relief

Landscape · layered panel

A wide landscape with three snow-capped peaks layered into the slope — the classic backlit wall panel.

Grayscale PNG heightmap source for a mountain landscape: bright sky, three snow-capped peaks and darker layered slopes in front
Input — the grayscale PNG heightmap (brightness = height)
Slate-blue mountain range relief panel rendered in 3D with snow-capped peaks, converted from a grayscale PNG heightmap by png2stl.com
Output — the exported STL relief model (163,196 triangles / 81,600 vertices)

Landscapes work as heightmaps because the tonal bands in a photo or painting already describe depth: sky is brightest and tallest, snow caps are next, rock face is dark and low. The deep edge radius on this one is what creates the soft rounded terraces you see on the slopes; turn it down and the range reads as a stepped pyramid. This is also the case to copy if you are making a backlit lamp — invert it and the sky becomes the recess instead.

Relief height
3 mm
Edge radius
0.8 mm (soft terraces)
Smoothing
1 pass
Base
1.5 mm thin
Height contrast
1.0 (linear)
Invert
off
Background detect
off (full-bleed panel)

Printing notes

For a backlit panel, invert so the sky sits behind the peaks and print with translucent filament or a light source underneath. Wide panels warp — print a 3–4 mm border frame around the outside.

Pixel-art heart

Voxel-ish · retro relief

A 20×20 pixel heart blown up into chunky blocky geometry — sprites and game icons keep their sharp edges.

Grayscale PNG heightmap source for a pixel-art heart: a 20 by 20 pixel blocky heart shape, white on dark
Input — the grayscale PNG heightmap (brightness = height)
Emerald green blocky pixel-art heart relief rendered in 3D as chunky voxel-like geometry, converted from a PNG pixel heightmap by png2stl.com
Output — the exported STL relief model (102,396 triangles / 51,200 vertices)

Low-resolution art is the best stress test for stair-stepping. At 20×20 the converter produces hard blocky terraces, and because the source is tiny the triangle count stays low. Pixel art is also the one case where you generally want no smoothing and no bevel: the whole point is the hard edge. If you want the same look from a low-res image and get mush instead, turn smoothing to 0 and drop edge radius to 0.

Relief height
2 mm
Edge radius
0.35 mm
Smoothing
0 (off)
Base
1.5 mm thin
Height contrast
1.0 (linear)
Invert
off
Background detect
off (full-bleed panel)

Printing notes

Instantly recognisable at any layer height. Good test print for validating a new filament profile — the terraces make layer height errors obvious.

Portrait lithophane

Lithophane · backlit

A shaded portrait converted with the lithophane curve, where white light reveals the face through the material.

Grayscale PNG heightmap source for a portrait lithophane: shaded head and shoulders with dark eyes, nose and mouth on a light-to-mid grey field
Input — the grayscale PNG heightmap (brightness = height)
White porcelain portrait lithophane STL rendered in 3D with shaded facial features, converted from a grayscale PNG heightmap by png2stl.com
Output — the exported STL relief model (199,996 triangles / 100,000 vertices)

A relief and a lithophane are the same geometry with two different height mappings, which is the single most misunderstood thing in this category. A relief uses a linear brightness-to-height curve. A lithophane uses an exponential one, because white PLA absorbs roughly half its light per millimetre — so contrast has to be pushed exponentially or the shadows never appear. Two smoothing passes are used here to kill the pixel noise that would otherwise blur the face at shallow depths. Print this one at 0.8–1.0 mm total thickness with a light behind it, not on the bed face-up.

Relief height
2.4 mm
Edge radius
0.5 mm
Smoothing
2 passes
Base
1.5 mm thin
Height mapping
lithophane (exponential)
Invert
off
Background detect
off (full-bleed panel)

Printing notes

0.8–1.0 mm wall, white or natural PLA, 0.08–0.12 mm layers, print face-up flat then light from behind. Anything thicker and the shadows grey out; anything thinner and the face disappears.

Patterns worth stealing from these examples

  • Line art and logos want zero smoothing. Every blurred logo in circulation was smoothed by accident. The logo and coincases run with smoothing off and 0.35 mm bevels for exactly that reason.
  • Photographs need smoothing, usually twice. Sensor noise becomes terraced spikes that no slicer can smooth away. The portrait case uses two passes.
  • Edge radius is a design decision, not a default. 0.8 mm turns the mountainslopes into soft terraces; 0.35 mm keeps the scrollwork volute tips from merging.
  • Full-bleed artwork needs background detection off. These seven all run with detection off because the dark background is part of the relief. Turn it on only when the subject floats on a plain backdrop and you want it to drop to the base plate.
  • Relief and lithophane are different curves, not different images. Compare the portrait entry with the others: exponential height mapping is what makes a backlit face appear out of a flat slab.

Try it on your own image

Nothing above needs an account, an upload or a credit balance. The converter runs entirely in the browser via WebAssembly, so your image never leaves your machine. Start from a logo or a line drawing if you want crisp results; open the how heightmaps work guide if you want the theory, or the step-by-step workflow for the parameters in order.