A multiresolution approach for viewsheds on 2D terrains

Andrew P Prescott, Laura Toma · 2018

The viewshed of a point v on a grid terrain T, viewshedT (v), is the set of grid points in T that are visible from v. We describe a novel algorithm for computing viewshedT (v) using a multiresolution approach: Given a parameter k > 1 that represents the block size, we create a grid T′ which is a lower-resolution version of T, such that each point in T corresponds to a block of [EQUATION] points in T; T′ has size Θ(n/k), where n is the size of the original grid. The key of our approach is using T′ to speed up the computation of viewshedT(v) while not introducing approximation. We compute viewshedT(v) in two steps: First we compute the viewshed of v on T'′, while maintaining the invariant that any block in T′ that is labeled as invisible may not contain any visible points. Thus, the first step's role is to use T′ to filter out blocks in T′ that are guaranteed to be invisible. The second step considers the blocks that were labeled as visible in T′ and computes the visibility of their points with full accuracy using the data in T. Overall the algorithm runs in O[EQUATION], where l is the total size of visible blocks in T′. When k > 1 and l = o(n), the running time of our algorithm improves on the previous best bound of O(n lg n) [9, 15]. We describe a suite of experimental results showing the performance of our algorithm in practice and a speedup of more than an order of magnitude compared to previous algorithms.

Read the paper · More papers on PaperTik