# Efficient algorithms for recovering watershed boundaries?

This is somewhat related to a previous question I asked: What Algorithm is used by ArcGIS Watershed tool?

I was wondering if there is a more efficient way to calculate catchment areas if you are interested only in the polygon defining the catchment area (rather than all cells contributing to the catchment area). Doing a recursive search seems very expensive and would return a lot of information we don't want (namely each cell within the area).

Assuming the same starting point - a raster grid and a pour point/outlet (I leave it open for now whether the raster is a DEM, Flow Direction or Flow Accumulation).

My first thought was to simply follow the 'steepest path' upstream of the outlet point, which would quickly take us to the 'edge'. But I could not think of a way to follow the 'edge' around.

Are there any other possibilities?

• If you haven't already, you should also take a closer look at ArcHydro Tools, which I use for catchment delineation and watershed analysis. Commented Jan 28, 2014 at 8:37
• You have mentioned that you are `interested only in the polygon defining the catchment area (rather than all cells contributing to the catchment area)` Can you expand on the difference between these two? I do not think that there is a difference. Commented Jan 28, 2014 at 8:51
• @ Martin. I'm interested in the theory and computation, not a read-to-use tool. In any case, those tools use search methods Commented Jan 28, 2014 at 9:20
• @ Devdatta. Polygon is a vector simply defining the boundary of the catchment. The other is a collection of all cells which make up the catchment area. You could also think of the polygon as those cells which define the boundary of the catchment only (i.e. not the inner cells), if you want to keep it as raster data. Commented Jan 28, 2014 at 9:20