how to get gradient of an image
8 views (last 30 days)
Show older comments
hi im having a hyperspectral image and im trying to get the gradient operators of the horizontal and vertical directions but i can't any help? Thanks
0 Comments
Accepted Answer
Walter Roberson
on 8 Apr 2013
for band = 1 : size(X,3)
[GX(:,:,band), GY(:,:,band)] = gradient(X(:,:,band));
end
Note you get out two matrices the same size as the original.
9 Comments
More Answers (2)
Image Analyst
on 25 Mar 2013
The Image Processing Toolbox has imgradient() and imgradientxy() functions.
5 Comments
Image Analyst
on 8 Apr 2013
Moved: DGM
on 29 Dec 2023
That does not make sense to me. In the lateral x,y direction you have units of "per pixel" but in the Z direction since the planes are different wavelengths, not distance in pixels, the gradient is not a spatial gradient. It would have units of "per wavelength". And you certainly wouldn't want a 3D gradient with spatial coordinates mixed with wavelength coordinates. It makes no sense, at least not to me.
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!