How to Convert a Photo to a 3D Model for CNC Router Relief Carving

If you want to carve a photograph into wood or another material on your CNC router, you first need to turn that flat image into a 3D relief. The core technique is to create a depth map: a grayscale image where brightness represents height. White areas become the highest points, black areas the lowest, and your CNC software translates those shades into Z-axis movement.

This workflow bridges image processing and CNC machining. You generate a depth map from your photo, import it into your CAM software, and assign toolpaths. The result is a carved relief that captures the depth and detail of the original image.

Generating a Depth Map from Your Photo

The easiest way to get a depth map is with an AI-powered tool. ReliefMaker, for example, offers two engines: a free local model called Depth Anything V2 that takes about two seconds, and a paid Gemini Vision model that costs one credit and takes about three seconds. The paid model handles complex scenes better, so it's worth trying if your photo has busy backgrounds or subtle depth cues.

Once you have your depth map, save it as a grayscale image. This file is the bridge between your photo and your CNC software.

  • Free local model: Depth Anything V2, ~2 seconds
  • Paid model: Gemini Vision, 1 credit, ~3 seconds, better for complex scenes

Importing the Depth Map into CNC Software

In Carbide Create Pro, you can import your depth map using the 'Import Image' function. The software will interpret the grayscale values as height. From there, you assign 3D roughing and finishing toolpaths. Roughing removes the bulk of the material, while finishing adds the fine detail.

Other CAM packages like VCarve or Fusion 360 have similar workflows, though the exact steps may vary. The key is to set your relief depth appropriately for your material and bit selection.

Alternative Workflows: Image-to-STL Converters

If you prefer not to use a dedicated relief tool, you can use an online converter like ImageToStl.com. It converts PNG or JPG images to STL files using either Extrude or Heightmap modes. You can adjust detail level, add a base, and choose the base type.

Another approach, shared by a Reddit user, is to upload your photo to depth-r, save the depth map, drag it into Cura, save as STL, then import that STL into your CNC software. This multi-step process works but is less direct than using a dedicated CNC relief tool.

Limitations and Considerations

Not every photo will convert well. Flat, head-on photos of textures or patterns have no depth cues for AI to extract, so the result may be disappointing. The quality of the depth map also depends on the AI model; free local models may struggle with complex scenes compared to paid alternatives.

CNC relief carving also requires attention to material properties, bit selection, and toolpath strategies. General conversion tools don't cover these details, so you'll need to rely on your CNC software and experience. The workflow often involves multiple software steps, so it's not always a one-click process.

Frequently asked questions

What is a depth map and how does it work for CNC relief?+

A depth map is a grayscale image where brightness represents height: white is the highest point, black is the lowest. CNC software translates these shades into Z-axis movement, carving the relief.

Can I use any photo to create a 3D relief?+

Not every photo works well. Photos with clear depth cues, like portraits or landscapes, convert better. Flat textures or patterns without depth information may not produce good results.

What software can I use to convert a photo to a CNC-ready relief?+

You can use ReliefMaker to generate a depth map, then import it into Carbide Create Pro or another CAM package. Alternatively, online converters like ImageToStl.com can create an STL heightmap, which you then import into your CNC software.