Perona-Malik Anisotropic Filtering: Machine Vision - RE4107 Dr. Colin Flanagan
Perona-Malik Anisotropic Filtering: Machine Vision - RE4107 Dr. Colin Flanagan
Perona-Malik Anisotropic Filtering: Machine Vision - RE4107 Dr. Colin Flanagan
Group Members:
Name ID
Cian Conway 10126767
Patrick Stapleton 10122834
Ivan McCaffrey 10098119
Introduction
Algorithm Properties
Let Ω ⊂ R2 denote a subset of the plane and I(∙, t) → R be a family of greyscale images. With
this, anisotropic diffusion can be defined as:
Where, ∆ denotes Laplacian, ∇ denotes Gradient, div(…) is the divergence operator and
c(x,y,t) is the diffusion coefficient. c(x,y,t) also controls the rate of the diffusion. When
Perona and Malik pioneered the idea they proposed two functions for the diffusion
coefficient:
and
Page | 1
The constant K controls the sensitivity to edges and is usually chosen experimentally or as a
function of the noise in the image.
def f(lam,b):
func = 1/(1 + ((lam/b)**2))
return func
Procedure
This section contains the input and output from our python code. By viewing these images it
is easy to see Perona-Malik anisotropic filtering in action. The images were taken from the
sample images provided in the Sulis folder.
Image 1: noisy_rect.png
Page | 2
Before
After
Page | 3
Image 2: noisy_empire.png
Before
After
Page | 4
Conclusions
It is obvious that the above images were successful in efficiently implementing Perona-Malik
anisotropic diffusion. The above images clearly a show a significant noise reduction
difference between the before and after images. Noise reduction was successfully achieved
but it also important to note the edges and lines maintained their sharpness.
Page | 5