liveBook · Manning

Denoising

As explained in Geometry for Programmers

Denoising is the removal or reduction of unwanted variation and artifacts in sampled image data while preserving meaningful structure.

Denoising removes small artifacts from sampled image or voxel data while preserving sufficiently smooth features. In CT models, artifacts can result from scanning inaccuracies or image-computation errors. A small erosion followed by proportionate dilation removes isolated pieces and smooths noisy borders. section 12.3.3

A practical binary-voxel workflow:

  • Represent filled voxels as 1 and empty voxels as 0. section 12.3.3
  • Erode by inverting the image, dilating it, and inverting it again. section 12.3.3
  • Dilate the eroded result by the same noise-size depth. section 12.3.3
  • Choose the depth carefully: thin features can disappear, while thicker features remain. section 12.3.3

Binary-image implementation

The compact operation is denoise(img, noise_size) = dilate(erode(img, noise_size), noise_size). A two-dimensional example contains isolated noise, a thin feature, and a thick feature; with noise size 1, the isolated and thin pieces are removed while the thick structure remains. section 12.3.3

Figure 12.14 Denoising is a small erosion followed by proportionate dilation.
12-14

Use the figure to visualize erosion shrinking the voxel model before dilation restores its proportionate boundary. section 12.3.3

How Geometry for Programmers covers it

How deep it goes
Explains morphology, distance-based dilation, inversion-based erosion, and a simplified implementation without diagonal elements.
Examples
Uses binary 2D and 3D voxel models containing isolated noise, thin features, and thick features.
What it assumes
Assumes familiarity with dilation and Boolean operations while defining erosion through image inversion.
What you can do after
Apply it via binary voxel operations to remove small artifacts and smooth model boundaries.
How it connects
Connects erosion, dilation, voxel models, Boolean subtraction, thin-wall detection, triangle meshes, and signed distance fields.

Also explained in

Compare how 7 books explain denoising →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Geometry for Programmers. The section links point to the parts of the book it draws on.