area of water body in a grey color image
1 view (last 30 days)
Show older comments
how to get area of water body in one band of a landsat image
2 Comments
Answers (2)
Bjorn Gustavsson
on 21 Oct 2021
If the water-surface are flatter than the not-water-surfaces (seems reasonable assumption for standard optical satellite imaging without additional information), then you might try to look after regions where the magnitude of the gradients are small:
Im = double(your_one_band_landsat_image);
[dIdx,dIdy] = gradient(Im);
d2I = del2(Im);
subplot(1,3,2)
imagesc(Im)
subplot(1,3,1)
imagesc(d2I)
subplot(1,3,3)
imagesc(abs(dIdx)+abs(dIdy)) % other measures of flatness are also available
HTH
0 Comments
See Also
Categories
Find more on Image Processing Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!