Difference between the option 'log' and 'zerocross' of function edge?

12 views (last 30 days)
Hi,
I use the Matlab function edge and I want to know the differences between the option 'log' and 'zerocross' when I use for 'zerocross' the default filter? (BW=edge(I,'log'); BW=edge(I,'zerocross');)
I think the default filter of the option 'zerocross' is 'log'. Are the results the same or are there differences in the calculation of the edges?
Thanks!

Accepted Answer

Anand
Anand on 29 Sep 2014
The 'log' method is a specific type of zero-crossing edge detector, where the image is filtered with the Laplacian of Gaussian filter obtained as follows:
>> fspecial('log')
ans =
0.0448 0.0468 0.0564 0.0468 0.0448
0.0468 0.3167 0.7146 0.3167 0.0468
0.0564 0.7146 -4.9048 0.7146 0.0564
0.0468 0.3167 0.7146 0.3167 0.0468
0.0448 0.0468 0.0564 0.0468 0.0448
The syntax for 'zerocross' from the documentation of edge is as follows:
BW = edge(I,'zerocross',THRESH,H)
If you do not provide a zero crossing filter kernel H, the Laplacian of Gaussian kernel is used by default. This is why 'zerocross' and 'log' methods will give the same result if you do not specify a filter kernel.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!