What I'm attempting to do is calculate the volume of a lake using a polygon I created by classifying an image for water. I then extracted the polygon from the classification process. What I'm left with is a polygon showing the surface area of the water. I have a DEM of the lake. How do I determine the amount of water this lake contains? I don't want to use a contour line if I dont have to because the heights vary at the edges of the lake.
This is with ArcGIS Desktop.
Best Answer
I assume that what you call “DEM of the lake” is DEM of lake bottom and surrounding area.
If this a case, it is a few steps procedure main ones being calculation of lake bank altitude and average lake depth.
Set environment settings snap raster to DEM, cell size = one for DEM and convert polyline to raster using any numeric field, output to raster “BANK”. Use raster calculator expression:
Con(~IsNull(”BANK”),”DEM”)
Output to raster “bankZ”.
Create numeric field in polygon and populate it by meanZ. Convert polygon to raster using that field, output “surfaceZ”.
Use raster calculator to calculate lake depth accounting for imperfections in DEM and lake delineation.
Con(“surfaceZ”>”DEM”, “surfaceZ”-“DEM”,0)
Mean value of output is average lake depth. Now you can compute lake volume because lake area equal area of your polygon. Be careful with units