Azzera filtri
Azzera filtri

Developing Laplacian Filter and apply it to an image

26 visualizzazioni (ultimi 30 giorni)
Greetings
I would like to get some help and advice in knowing how to apply the Laplacian Filter to a particular image, I want to get help in knowing how to apply it by developing an algorithm that would replicate the process, not by using the embedded MATLAB function ('laplacian') into it and having it magically work. I want to know the mathematics and logic behind it of how it works when being applied to an image.
Thanks

Risposta accettata

Image Analyst
Image Analyst il 21 Feb 2018
It's the mean difference between a pixel and it's neighbors. So you'd convolve with an array [-1 1] in each of the 8 directions. Since each direction is unique, the convolution is separable and you can just add up all the kernels. So you'd get a 3x3 window with 8 -1's all the way around the perimeter, and 8 1'd in the middle. In other words, the 3x3 matrix would have -1 all the way around except a value of 8 in the center:
kernel = -1 * ones(3);
kernel(2,2) = 8; % Now kernel = [-1,-1,-1; -1,8,-1; -1,-1,-1]
output = conv2(double(inputImage), kernel, 'same');
  9 Commenti
Image Analyst
Image Analyst il 20 Apr 2020
No, it should be
0 0 -1
0 1 0 Filter #3
0 0 0
Copy and paste error I guess.
Zamani Md Sani
Zamani Md Sani il 20 Apr 2020
ok thanks for your explanation.. it really helps!! :)

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by