# Image to STL Converter > An image to STL converter is a tool that turns a flat picture into a 3D-printable mesh. Kenerate's free converter works in your browser three ways: a relief (brightness becomes height), a lithophane (the picture shows when backlit) or an extruded shape from a logo. Set the size in millimetres and download a watertight STL or 3MF. URL: https://kenerateai.com/image-to-stl Publisher: Kenerate AI (https://kenerateai.com) Last updated: 2026-10-01 ## Key facts - Price: Free, no account - Input: JPG, PNG (transparency supported), WebP, GIF, BMP — up to 40 MB - Modes: Relief · Lithophane · Extrude shape - Output: STL, 3MF, OBJ, GLB — watertight, in millimetres - Detail: 0.1–1 mm grid, up to 640 samples per side · relief default 100 mm wide, 2 mm base, 3 mm relief - Privacy: Processed in your browser — no upload - Relief — brightness becomes height: Light areas rise, dark areas stay low (or the reverse with Invert). Great for depth maps, coins, embossed tiles and textured signs. - Lithophane — a photo made of light: Dark areas are printed thick and bright areas thin, so the photo only appears when light shines through. Frame and curve options included. - Extrude — logos and silhouettes: Pixels darker than a threshold (or the opaque part of a transparent PNG) become a solid shape — signs, badges, cookie-cutter outlines. - Watertight by construction: Every mesh is a closed solid — top surface, flat bottom and side walls — so slicers don't need to repair it. - Real millimetres: Set the width; height follows the picture's aspect ratio. Base and relief heights are in mm too, so the file prints at the size you see. - Private: The picture is read on your device. Nothing is uploaded or kept. - Resample: The image is redrawn onto a grid at your chosen detail — one sample every 0.1–1 mm across the width. - Measure brightness: Each sample's luminance (Rec. 709 weights) is read; transparent pixels count as background. - Map to height: Relief: bright = high. Lithophane: dark = thick. Extrude: dark or opaque = solid. - Close the solid: A flat bottom and side walls are added so the mesh is watertight, then it's written as STL, 3MF, OBJ or GLB. - STL (Stereolithography): Triangle mesh (binary or ASCII); by 3D Systems, 1987. Holds: Triangle surfaces, Facet normals. Lacks: Colour and textures, Units, Materials. Best for: 3D printing — every slicer opens it. Opens in: Cura, PrusaSlicer, Bambu Studio, OrcaSlicer, Blender. - 3MF (3D Manufacturing Format): ZIP package with XML; by 3MF Consortium, 2015. Holds: Meshes with units (millimetres), Colours and materials, Several objects and build plates. Lacks: Animation. Best for: Modern 3D printing and multi-colour prints. Opens in: Bambu Studio, PrusaSlicer, OrcaSlicer, Cura, Windows 3D Builder. - Relief: What it does: Brightness → height on a solid base | Best for: Depth maps, textures, embossed tiles - Lithophane: What it does: Darkness → thickness, viewed against light | Best for: Photos of people, pets and places - Extrude shape: What it does: Dark or opaque pixels → one solid height | Best for: Logos, icons, silhouettes, text images - AI image to 3D: What it does: A full 3D object reconstructed from the photo | Best for: Figures, products and characters — in the 3D Studio ## Steps 1. Add your picture — Drop a JPG, PNG or WebP onto the box above — or try a sample. 2. Choose the type — Relief for raised pictures, Lithophane for backlit photos, Extrude for logos and silhouettes. 3. Set the size — Choose the width in mm, then the base and height (or min/max thickness for lithophanes). 4. Download — Pick STL or 3MF and download. Open it in your slicer and print. ## In depth ### Why there isn't one 'image to STL' A picture is flat; an STL needs depth. Every converter has to invent that depth from something. Heightmap tools take it from brightness, lithophanes from darkness (to block light), extrusion from a mask, and AI image-to-3D from a learned guess of the hidden shape. Picking the method is the most important decision — the sliders come second. ### Brightness, polarity and contrast Tools disagree on direction: some raise white, some sink it. Here Relief raises bright pixels by default, so a depth map (white = near) comes out right, and Invert flips it. The full brightness range maps onto your chosen relief height, so a low-contrast photo gives a shallow result — raise contrast before converting for a stronger relief. ### Detail, triangles and file size STL stores every triangle at 50 bytes in binary form [1]. A heightmap makes about two triangles per sample, so doubling the detail in both directions quadruples the file. That's why this tool caps the grid at 640 samples per side — beyond that, files get too big for slicers and phones without visible gain at typical print sizes. ### Make it printable Walls thinner than one perimeter (about 0.45 mm with a 0.4 mm nozzle) can't print; two perimeters, about 0.9 mm, is a safer minimum [11]. Keep a base of at least 1.5–2 mm under a relief so it doesn't warp, and print reliefs flat on the bed. References: [1] Wikipedia — STL (file format): https://en.wikipedia.org/wiki/STL_(file_format) [2] Wikipedia — Wavefront .obj file: https://en.wikipedia.org/wiki/Wavefront_.obj_file [3] Wikipedia — FBX: https://en.wikipedia.org/wiki/FBX [4] Khronos Group — glTF: https://www.khronos.org/gltf/ [5] 3MF Consortium — 3MF specification: https://3mf.io/specification/ [6] Wikipedia — Universal Scene Description (USD / USDZ): https://en.wikipedia.org/wiki/Universal_Scene_Description [7] Wikipedia — PLY (file format): https://en.wikipedia.org/wiki/PLY_(file_format) [8] Khronos Group — glTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html [9] Apple — AR Quick Look: https://developer.apple.com/augmented-reality/quick-look/ [10] three.js — documentation: https://threejs.org/docs/ [11] Prusa Knowledge Base — Modeling with 3D printing in mind: https://help.prusa3d.com/article/modeling-with-3d-printing-in-mind_164135 [12] Prusa Blog — lithophanes and filament transparency: https://blog.prusa3d.com/lets-play-with-filament-transparency-how-to-make-amazing-lifelike-color-photos-with-just-a-simple-color-change_104338/ [13] Polymers (2024) 16(20):2862 — FFF parameters and translucency of PLA: https://doi.org/10.3390/polym16202862 [14] Wikipedia — Lithophane: https://en.wikipedia.org/wiki/Lithophane [15] W3C — CSS Values and Units Level 3 (absolute lengths): https://www.w3.org/TR/css-values-3/ [16] Adobe Substance 3D — OpenGL vs DirectX normal maps: https://experienceleague.adobe.com/en/docs/substance-3d/bakers/common-questions/what-is-the-difference-between-the-opengl-and-directx-normal-format [17] Blender Manual — Normal Map node: https://docs.blender.org/manual/en/latest/render/shader_nodes/displacement/normal_map.html [18] Wikipedia — Normal mapping: https://en.wikipedia.org/wiki/Normal_mapping [19] SIL Open Font License: https://openfontlicense.org/ ## FAQ Q: Can you convert an image to STL for free? A: Yes. This converter is free, needs no account and runs in your browser, so there's no upload or watermark. Q: Which mode should I use for a photo? A: For a photo of a person, pet or landscape, a lithophane gives the most recognisable result. A relief works best when the image is already a depth map or has simple, strong shapes. Q: Is it white = high or black = high? A: In Relief mode, white is high and black is low; tick Invert to swap. In a lithophane, dark areas are thick (so they block light). In Extrude mode, dark pixels become the solid — or, for a PNG with transparency, the opaque pixels do. Q: Will my STL be in colour? A: No. STL has no colour. The shape carries the picture: as height in a relief, or as light and shadow in a lithophane. Q: How big will the file be? A: Each sample becomes two triangles on top (plus the base and walls), and binary STL uses 50 bytes per triangle. A 100 mm relief at 0.3 mm detail is about 110,000 samples — roughly 22 MB. Increase the grid step for smaller files. Q: How thin can details be? A: A 0.4 mm nozzle prints walls down to about 0.45 mm (one perimeter); 0.9 mm (two perimeters) is safer. Very fine lines in a picture won't survive at small sizes. Q: Is there an image to STL AI? A: Yes — that's AI image-to-3D, which builds a full object rather than a flat relief. The Kenerate 3D Studio rebuilds a full object from one photo with engines like Tripo, Meshy and Rodin; 3D generation needs a one-time credit pack. Q: Is my image uploaded? A: No. It's processed on your device and never sent to a server. Q: Is this image to STL converter safe? A: Yes. The picture is read and turned into a mesh by code running in your own browser tab — it isn't uploaded, stored or shared, and there's nothing to install. The STL you download is a plain triangle mesh that any slicer opens. ## Related pages - AI 3D Model Generator: https://kenerateai.com/ai-3d-model-generator - Image to 3D: https://kenerateai.com/image-to-3d-converter - AI STL Generator: https://kenerateai.com/ai-3d-printing-model-generator - Text to 3D: https://kenerateai.com/text-to-3d-generator ## Sources - Wikipedia — STL (file format): https://en.wikipedia.org/wiki/STL_(file_format) - Wikipedia — Wavefront .obj file: https://en.wikipedia.org/wiki/Wavefront_.obj_file - Wikipedia — FBX: https://en.wikipedia.org/wiki/FBX - Khronos Group — glTF: https://www.khronos.org/gltf/ - 3MF Consortium — 3MF specification: https://3mf.io/specification/ - Wikipedia — Universal Scene Description (USD / USDZ): https://en.wikipedia.org/wiki/Universal_Scene_Description - Wikipedia — PLY (file format): https://en.wikipedia.org/wiki/PLY_(file_format) - Khronos Group — glTF 2.0 specification: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html - Apple — AR Quick Look: https://developer.apple.com/augmented-reality/quick-look/ - three.js — documentation: https://threejs.org/docs/ - Prusa Knowledge Base — Modeling with 3D printing in mind: https://help.prusa3d.com/article/modeling-with-3d-printing-in-mind_164135 - Prusa Blog — lithophanes and filament transparency: https://blog.prusa3d.com/lets-play-with-filament-transparency-how-to-make-amazing-lifelike-color-photos-with-just-a-simple-color-change_104338/ - Polymers (2024) 16(20):2862 — FFF parameters and translucency of PLA: https://doi.org/10.3390/polym16202862 - Wikipedia — Lithophane: https://en.wikipedia.org/wiki/Lithophane - W3C — CSS Values and Units Level 3 (absolute lengths): https://www.w3.org/TR/css-values-3/ - Adobe Substance 3D — OpenGL vs DirectX normal maps: https://experienceleague.adobe.com/en/docs/substance-3d/bakers/common-questions/what-is-the-difference-between-the-opengl-and-directx-normal-format - Blender Manual — Normal Map node: https://docs.blender.org/manual/en/latest/render/shader_nodes/displacement/normal_map.html - Wikipedia — Normal mapping: https://en.wikipedia.org/wiki/Normal_mapping - SIL Open Font License: https://openfontlicense.org/