Image to STL Converter — Free Heightmap Relief, No Upload
Image → STL
Turn any image into a 3D-printable STL heightmap relief in your browser. Adjust depth and resolution. Free, private, no AI, no upload.
Best for
- Making simple lithophane-style reliefs from high-contrast images
- Turning logos, maps, or grayscale art into raised STL surfaces
- Testing heightmap depth and resolution without uploading an image
- Creating a printable relief mesh for further cleanup in a slicer or editor
Before you start
- Use high-contrast images; subtle photos often produce noisy reliefs
- Resize very large images first to reduce triangle count and browser memory use
- Expect a heightmap surface, not an AI-generated full 3D object
- Inspect the STL in a viewer or slicer before printing because color is not preserved
Known Limitations
- Heightmap / relief only — pixel brightness maps to surface height; this is NOT AI 3D reconstruction
- Result is a surface mesh suitable for relief printing, not a volumetric solid object
- Color information is not preserved in the STL output
- Very high-resolution images may be slow to process in-browser; consider resizing before upload
Helpful guides
Frequently Asked Questions
Does this tool use AI to reconstruct a 3D model from a photo?
No. This is a heightmap converter — pixel brightness is mapped to surface height to produce a relief mesh. A photo of a face produces a bumpy surface, not a 3D head shape. For lithophanes, nameplates, and embossed reliefs it works well; for full 3D reconstruction from a single photo it does not.
What images work best with this tool?
High-contrast images with strong light-to-dark gradients produce the most readable reliefs. Grayscale images, logos, text on white backgrounds, and topographic maps are good candidates.
Will colors from my image appear in the STL output?
No. STL stores geometry only. The image colors are used only to calculate height values — they are not preserved in the output file.
My high-resolution image is slow to process. What can I do?
Resize the image to 1024×1024 pixels or smaller before uploading. The resolution of the input image directly affects the triangle count of the output mesh and the in-browser processing time.
Does my image get uploaded to a server?
No. All processing runs in your browser. Your image never leaves your device.
Related tools
How it works
Your files are processed entirely inside your browser using Three.js. Your files never leave your browser — there is no server upload, no cloud storage, and no third-party processing. The converted file is generated as a local Blob and downloaded directly to your device. Once the conversion is complete, all data is released from memory.