View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
Gradient using first order derivative of Gaussian

4.2 | 13 ratings Rate this file 31 Downloads (last 30 days) File Size: 1.63 KB File ID: #8060 Version: 1.0
image thumbnail

Gradient using first order derivative of Gaussian


Guanglei Xiong (view profile)


19 Jul 2005 (Updated )

Output the gradient image of a grayscale image

| Watch this File

File Information

[gx,gy]=gaussgradient(IM,sigma) outputs the gradient image gx and gy of
image IM using a 2-D Gaussian kernel. Sigma is the standard deviation of
this kernel along both directions.

Required Products Image Processing Toolbox
MATLAB release MATLAB 7 (R14)
MATLAB Search Path
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (16)
24 Nov 2012 Atif Anwer


18 Nov 2011 Yad prab

Hey, nice job man! I can easily visulaize the variations in my image.
But what if i m in 3D. With image in 2D and a time factor that is adds to the third dimenstion ?

22 Mar 2010 Ernesto

thanks, it show clearly gx and gy

07 Jan 2010 Karthik MSwamy

Can you add the paper/text you had referred to calculate the kernels in your code. Thanks!

Comment only
04 Jan 2010 Karthik MSwamy

Real nice work!!!

13 Aug 2009 Gustaf Kylberg

Seems like you are calculating too small kernel sizes when higher values of sigma are used, e.g., when sigma>10 the kernels are clearly truncated. With sigma>40 your kernel size becomes imaginary.

Comment only
10 Aug 2009 samur piere

can you mention the mathematical basis for kernel size and normalization steps. thx.

epsilon = 1e-2;
halfsize = ceil( sigma * sqrt(-2*log(sqrt(2*pi)*sigma*epsilon)) );

hx = hx/sqrt(sum(sum( abs(hx).*abs(hx) )));

12 Jun 2009 hbu 

hbu  (view profile)


Comment only
23 Apr 2009 Yaroslav Bulatov

10 Feb 2009 Prakash Manandhar

02 Oct 2008 Andrea Tagliasacchi

Works perfectly it seems, Thanks

19 Sep 2008 masha yusrina

there was a problem using the function imshow(fim(1:50,1:50),'InitialMagnification','fit'); in 'fit'

i can't solve it

06 Jul 2006 renuka patnaik

there was a problem using the function imshow(fim(1:50,1:50),'InitialMagnification','fit'); in 'fit'

25 Nov 2005 Michal Kujalowicz

Theare is a problem with fim=mat2gray(im); instruction,in "testgaussgradient.m" (matlab R14)I got "matrix im should be a double error".
It can be solved by adding im=double(im);
after reading image (3 line)

16 Sep 2005 H N

Image processing toolbox is not required if you use conv2 instead of imfilt.

31 Mar 2016 1.0


Contact us