Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Algorithm

Block-matching and 3D filtering

Domain-Specific Algorithm

Block-matching and 3D filtering, known as BM3D, is a block-matching algorithm used mainly to reduce noise in images, and is one of the expansions of the non-local means approach. It works in two cascades, a hard-thresholding stage and a Wiener filter stage, each made of grouping, collaborative filtering and aggregation. In grouping, image fragments of equal size are collected when their dissimilarity from a reference fragment falls below a threshold, and, unlike clusters from k-means, the groups need not be disjoint. The fragments of a group are stacked into a three-dimensional shape, a linear transform is applied along with transform-domain shrinkage such as Wiener filtering, and the transform is inverted. The overlapping filtered fragments are then weight-averaged back into a two-dimensional image. Colour images are handled by grouping on the luminance channel, which saves roughly a third of the computing time. Extensions include IDD-BM3D, which performs decoupled deblurring and denoising, and a variant that integrates a convolutional neural network.

Connections

In Field

Source Block-matching and 3D filtering (Wikipedia)
Sources
Block-matching and 3D filtering (Wikipedia)
  • In Field: Computer Vision, Lead
    Block-matching and 3D filtering (BM3D) is a 3-D block-matching algorithm used primarily for noise reduction in images.
  • In Group: Signal Processing and Transforms, Collaborative filtering
    followed by a transform-domain shrinkage such as Wiener filtering, then the linear transform is inverted to reproduce all (filtered) fragments.
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.