Practical depth guide
16-bit depth maps: more storage is not always more truth
A 16-bit grayscale PNG can store 65,536 integer levels, but that does not prove the source contains 65,536 distinct depth measurements. Separate file capacity from model precision before you build a production promise around bit depth.
Bit depth describes the container
An 8-bit grayscale pixel can hold values from 0 through 255. A 16-bit grayscale pixel can hold values from 0 through 65,535. The larger range can preserve smooth gradients when the source computation contains sufficient precision and each step survives export and import. It also creates larger files and can expose compatibility problems in software that silently converts incoming data back to 8-bit.
A file can be technically 16-bit while containing only 256 unique levels multiplied across the wider range. That is what happens when an 8-bit preview is placed in a 16-bit container without a higher-precision source. The file may satisfy software that requires 16-bit PNG, but it cannot remove quantization already present. DepthCarve labels this export as a compatibility container for exactly that reason.
When real higher precision changes the result
Higher precision matters most across long, shallow gradients: atmospheric depth, smooth displacement, subtle faces, and large reliefs where a one-level step becomes physically visible. It can reduce contouring during repeated levels, curves, or color-space transformations. A true high-precision pipeline must preserve floating-point or 16-bit values from inference through editing, encoding, decoding, and the final application's internal representation.
For a small laser test or shallow relief made from a noisy estimate, model quality, source clarity, and material calibration may dominate bit depth. More levels do not fix reversed depth, halos, missing boundaries, or unreachable cutter geometry. Spend effort in the order failures occur: scene interpretation first, useful range second, container precision third, and downstream manufacturing verification last.
Verify the file instead of trusting its extension
Inspect PNG metadata with a tool that reports channel count and sample depth. Confirm the file is one-channel grayscale at 16 bits rather than an ordinary RGB PNG. Then import it into the actual target application, export or inspect the internal result, and look for an automatic conversion. Documentation, version, and color-management settings can change the behavior.
Count unique values when precision is critical, but interpret that count carefully. Image adjustments can create many interpolated levels without adding reliable scene information. A smooth histogram says nothing about whether the nose is in front of the cheek or the background is correctly flat. Compare structure against the source and use a controlled gradient test to evaluate the software path separately.
Choose 8-bit, 16-bit, or floating-point output deliberately
Choose 8-bit for broad masks, early previews, many laser workflows, and compatibility. Choose 16-bit when the receiving application supports it and repeated transformations or large shallow gradients could reveal banding. Choose floating-point formats such as EXR when the model returns real high-dynamic-range depth and the VFX or 3D pipeline preserves it.
DepthCarve's geometry provider may return an EXR depth output alongside preview PNG, normals, point cloud, GLB, and camera metadata. Download that raw provider output when the project needs more than a compatibility PNG. The output remains a model estimate, not guaranteed metric truth, but its numerical path is better suited to high-precision analysis than stretching an 8-bit display image.
Before the file moves forward
Final checklist
- The source model or computation produces more than 8-bit display values.
- Every editing step preserves 16-bit or floating-point precision.
- The PNG is verified as one-channel, 16-bit grayscale.
- The receiving application does not silently down-convert on import.
- A controlled gradient test shows a visible benefit for the real output size.
- Structural depth errors are fixed before bit depth is optimized.