Efficiently computing the drainage network on massive terrains using external memory flooding process
- 308 Downloads
We present EMFlow, a very efficient algorithm and its implementation, to compute the drainage network (i.e. the flow direction and flow accumulation) on huge terrains stored in external memory. Its utility lies in processing the large volume of high resolution terrestrial data newly available, which internal memory algorithms cannot handle efficiently. The flow direction is computed using an adaptation of our previous method RWFlood that uses a flooding process to quickly remove internal depressions or basins. Flooding, proceeding inward from the outside of the terrain, works oppositely to the common method of computing downhill flow from the peaks. To reduce the number of I/O operations, EMFlow adopts a new strategy to subdivide the terrain into islands that are processed separately. The terrain cells are grouped into blocks that are stored in a special data structure managed as a cache memory. EMFlow’s execution time was compared against the two most recent and most efficient published methods: TerraFlow and r.watershed.seg. It was, on average, 25 and 110 times faster than TerraFlow and r.watershed.seg respectively. Also, EMFlow could process larger datasets. Processing a 50000 × 50000 terrain on a machine with 2GB of internal memory took about 4500 seconds, compared to 87000 seconds for TerraFlow while r.watershed.seg failed on terrains larger than 15000 ×15000. On very small, say1000 ×1000 terrains, EMFlow takes under a second, compared to 6 and 20 seconds in r.watershed.seg and TerraFlow respectively. So EMFlow could be a component of a future interactive system where a user could modify terrain and immediately see the new hydrography.
KeywordsTerrain modeling Hydrology External memory GIS
This research was partially supported by CAPES (Science without Borders), FAPEMIG, CNPq and NSF grant IIS-1117277.
- 2.Anderson-Tarver C, Gleason M, Buttenfield B, Stanislawski L (2012) Automated centerline delineation to enrich the national hydrography dataset. In: Xiao N, Kwan M P, Goodchild M, Shekhar S (eds) Geographic Information Science, Lecture Notes in Computer Science, vol 7478. Springer Berlin Heidelberg, pp 15–28Google Scholar
- 4.Collet Y (2012) Extremely fast compression algorithm, http://code.google.com/p/lz4/ (Accessed on June-2014)
- 5.Danner A, Agarwal PK, Yi K, Arge L (2007) Terrastream: From elevation data to watershed hierarchies. In: Proc. ACM Sympos. on Advances in Geographic Information Systems, pp 212–219Google Scholar
- 6.Haverkort H, Janssen J (2012) Simple I/O-efficient flow accumulation on grid terrains. CoRR abs/1211.1857, http://dblp.uni-trier.de/db/journals/corr/corr1211.html#abs-1211-1857
- 7.Jenson S, Domingue J (1988) Extracting topographic structure from digital elevation data for geographic information system analysis. Photogramm Eng Remote Sens 54(11):1593–1600Google Scholar
- 8.Magalhães SVG, Andrade MVA, Franklin WR, Pena GC (2012) A new method for computing the drainage network based on raising the level of an ocean surrounding the terrainGoogle Scholar
- 13.Silveira JA, Magalhães SVG, Andrade MVA, Conceição VS (2013) A library to support the development of applications that process huge matrices in external memory. In: Proceedings of 15th International Conference on Enterprise Information Systems (ICEIS), Angers, France, pp 153–160Google Scholar
- 16.Stuetzle C, Franklin WR, Cutler B, Muckell J, Andrade MVA, Stookey J, Inanc M, Xie Z (2008) Hydrology preservation of simplified terrain representations. In: 16th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems (ACM GIS 2008), Irvine CA, USAGoogle Scholar
- 18.Vitter JS (2008) Algorithms and data structures for external memory. Now Publishers Inc., HanoverGoogle Scholar