File Exchange

image thumbnail

Shock Filtering in Matlab

version (1.29 KB) by Tolga Birdal
Very simple image enhancement and sharpening using shock filters


Updated 01 Dec 2010

View License

Shock filters are based in the idea to apply locally either dilation or erosion process, depending on whether the pixel be-longs to the influence zone of a maximum or a minimum.
The decision between dilation and erosion is made using the sign function (also called the signum) s in set {-1, 0, +1} based on the Laplace operator (Kramer-Bruckner, 1975).
Applying this procedure produces a sharp discontinuity called shock at the borderline between two influence zones. This way, the final equation becomes u_t=sign(delta(u) .* |gradient(u)|.

The resulting effect is basically enhancement/sharpening of the input image.

F. Guichard, J. Morel; “A Note on Two Classical Shock Filters and Their Asymptotics”; Michael Kerckhove (Ed.): Scale-Space
and Morphology in Computer Vision, LNCS 2106, pp. 75-84; Springer, New York; 2001.

G. Aubert, P. Kornprobst; “Mathematical Problems in Image Processing”; Applied Mathematical Sciences 147; Springer, New
York; 2002.
J. Weickert Coherence-enhancing shock filters; In B. Michaelis, G. Krell (Eds.): Pattern Recognition. Lecture Notes in Computer
Science, Vol. 2781, Springer, Berlin, 1-8, 2003.

Comments and Ratings (4)

Shun Fu



MATLAB Release Compatibility
Created with R2009b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Discover Live Editor

Create scripts with code, output, and formatted text in a single executable document.

Learn About Live Editor