MATLAB Answers

0

how to extract horizontal and vertical garadients of image.

Asked by pankaj chouthmal on 27 Jan 2014
Latest activity Commented on by Image Analyst
on 29 Jan 2014
What is mean by horizontal and vertical gradients ? Suppose if we have 41*41 matrix or image, then how we can compute its horizontal and vertical gradients ?

  0 Comments

Sign in to comment.

3 Answers

Answer by Anthony
on 27 Jan 2014

Hi,
You can use the diff function. Let img be your image :
img = spiral(10); % For example
gradX = diff(img,1,1);
gradY = diff(img,1,2);
doc diff
Hope it helps,
Anthony

  0 Comments

Sign in to comment.


Answer by Image Analyst
on 27 Jan 2014

You can imgradientxy)() in the Image Processing Toolbox. From the help:
I = imread('coins.png');
[Gx, Gy] = imgradientxy(I,'prewitt');
figure
imshowpair(Gx, Gy, 'montage');
title('Directional Gradients: x-direction, Gx (left), y-direction, Gy (right), using Prewitt method')
axis off;

  0 Comments

Sign in to comment.


Answer by pankaj chouthmal on 29 Jan 2014

i have used both above methods to calculate image gradients but both answers are totally different . which one is more appropriate ?

  1 Comment

The one that gets the job done for you. I don't really care as long as it works.

Sign in to comment.