On the contrary, if we SUBTRACT the high frequency data from the image, and is left with only low-passed (smooth/blur) portion of the image.
In principle that is mathematically true. Image - LowPassImage = HighPassImage. Therefore, mathematically, Image - HighPassImage = LowPassIimage. However, in practice, one has to do that very carefully. The former part works well, since the Gaussian Low Pass has no negative values. But the latter part does not work so well, especially when, as in non-hdri IM, one has only one sided edges (they are clipped at zero, so one never sees the negative values).
In the Fourier Transform Domain, the low pass filter is indeed the negative of the high pass filter and vice versa. See
http://www.fmwconcepts.com/imagemagick/ ... l#blurring
http://www.fmwconcepts.com/imagemagick/ ... _detection
The negative of a Laplacian filter is still a high pass filter. It does not do smoothing. Contrary to what I put in my reference above. Negating the laplacian does not cause smoothing. I will have to fix that reference, since it is not stated well. The proper statement comes below.
Consider the following examples (for which I have intensified the Laplacian too much so that it is really visible. You can try a smaller value than 1000% for a less saturated sharpening):
Input: Lena
Proper Laplacian filter
Code: Select all
lap1="3x3: -1 -1 -1 -1 8 -1 -1 -1 -1"
Negated (wrong sign) Laplacian filter
Proper Laplacian applied to image as high pass filter -- shows one-sided edges (due to IM clipping at zero):
Code: Select all
convert lena.png -define convolve:scale='!1000%' -morphology convolve "$lap1" lena_lap1.png
Wrong sign Laplacian applied to image as high pass filter -- shows opposite polarity edges:
Code: Select all
convert lena.png -define convolve:scale='!1000%' -morphology convolve "$lap1n" lena_lap1n.png
So you see above that neither cause smoothing.
Proper Laplacian filter added to identify filter and applied to the image - causes sharpening:
Code: Select all
convert lena.png -define convolve:scale='!1000%,100%' -morphology convolve "$lap1" lena_lap1b.png
Wrong sign Laplacian filter added to identify filter and applied to the image - causes strange looking sharpening:
Code: Select all
convert lena.png -define convolve:scale='!1000%,100%' -morphology convolve "$lap1n" lena_lap1nb.png
The wrong sign laplacian sharpening above does not look natural! That is why one needs the correct sign.
Applying Proper Laplacian to image and adding the original back (produces "brighter" sharpening):
Code: Select all
convert lena.png \
\( -clone 0 -define convolve:scale='!1000%' -morphology convolve "$lap1" \) \
-compose plus -composite lena_lap1c.png
Applying Proper Laplacian to image and negating, then adding the original back:
Code: Select all
convert lena.png \
\( -clone 0 -define convolve:scale='!1000%' -morphology convolve "$lap1" -negate \) \
-compose plus -composite lena_lap1cn.png
Applying Proper Laplacian to image and subtracting from original (produces "darkening" sharpening):
Code: Select all
convert lena.png \
\( -clone 0 -define convolve:scale='!1000%' -morphology convolve "$lap1" \) \
+swap -compose minus -composite -write show: lena_lap1cs.png
None of the above cause smoothing, since her shoulder is always sharp !
For reference, here is a gaussian blurred image.
Code: Select all
convert lena.png -gaussian-blur 0x1.5 -write show: lena_gblur.png
And here is the blurred Gaussian result subtracted from the image to produce high pass filtered edges:
Code: Select all
convert lena.png \
\( -clone 0 -gaussian-blur 0x1.5 \) \
+swap -compose minus -composite -evaluate multiply 10 -write show: lena_image_gblur.png
Note that the Laplacian is a second derivative operator. Any derivative, first (directional or gradient) or second (laplacian) will look for large transitions in grayscale in the image and set flat regions to zero. See the diagram at
http://mipav.cit.nih.gov/pubwiki/index. ... _Laplacian
I still would like to see a reference to where you say
someone else says the simple Laplacian (not Laplacian-Gausssian combinations or Laplacian of a Gaussian) is a smoothing filter.