Clear Filters
Clear Filters

Non-Maximum-Suppression method- without for loops

5 views (last 30 days)
Hi,
I've been assigned to perform the canny edge detection without using the edge function.
So far I've used the 'Gaussian' filter to smooth-en the image, the 'Sobel' filter to get the by X and by Y derivatives and got the Gradient size matrix ( asb(X)+abs(Y) )and direction matrix. Hope its good so far
What I'd like to do next is perform the non maximum suppression preferably with using the matlab matrix manipulation.
Lets say the gradient image is G the direction image is D and I want to make a thin edges image T without the need of for loops
T= all G(i,j) that are maximal in their D(i,j) direction ( if the direction is 90 degrees so if the G(i,j)>G(i,j+1),G(i,j-1) make T(i,j)=G(i,j) else T(i,j)=0 )
Would appreciate a hand ;)
Cheers, Despairy

Accepted Answer

Image Analyst
Image Analyst on 15 Dec 2012
So do you want 8 T images - one for each of the 8 directions you can go from a pixel? Can't you just use circshift to shift the image, subtract it from the original, and threshold it at zero?

More Answers (0)

Community Treasure Hunt

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

Start Hunting!