This is a lake of approximately 13 ha with 81 sampled depth points in about 10 transect lines:

Sampled points

Previously in ARCgis with a 50 ha lake and about a 100 depth sampling points, I got decent output with the TopotoRaster tool. However, no such exact equivalent seems to exist with QGIS or open source software.

In QGIS, I got the interpolated raster below, using the TIN method in the Raster Interpolation plugin. However, this seemed to be a lucky outcome, when I tried to repeat, I got different results (unsatisfactory) in spite of not really varying any parameter.

Interpolated raster

These are more urban (constructed) tanks than lakes, therefore, they are fairly regular in their bed profile, hence the low point sampling density. Some articles seemed to suggest Inverse Distance Weighting (IDW) as the most suitable technique, yet I seemed to get the worst results with that (possibly owing to low point density).

Are there any heuristics which can be employed here considering the size of the lake, its regular profile and the point sampling density to arrive at which interpolation method is apt? (between Kriging, IDW, Bilinear, Cubic convolution, TIN or spline)

Or is it always a bit of trial and error?

  • Intuitively, I would think interpolation with Nearest Neighbour makes the most sense since the differences in depths are relatively regular. It would be great if anyone could suggest a resource where some procedures/guidelines are outlined to make sure that consistent output is achieved with respect to interpolation of this kind and in other cases too.
    – SaRo89
    Commented Sep 10, 2016 at 11:18
  • Reefmaster creates good looking contours and shaded relief with TIN reefmaster.com.au/index.php/forum/support/….
    – user30184
    Commented Sep 10, 2016 at 15:11
  • 2
    By looking at the image QGIS don't utilize the boundary automatically. I would add a bunch of points with zero depth along the boundary.
    – user30184
    Commented Sep 10, 2016 at 15:51
  • 1
    There seem to be sample points outside the boundary, so I suspect either the boundary is wrong or there's an uncertainty in the bathymetry locations.
    – Spacedman
    Commented Sep 10, 2016 at 21:57
  • 2
    IDW is best when you have a relatively dense set of points over your study area, but you suggest it has a low point density. In this case maybe Splining is a good option, it smooths the surface out which I imagine is how a lake bottom looks (but i really dont know) "Conceptually, it is analogous to bending a sheet of rubber to pass through known points while minimizing the total curvature of the surface. This method is best for gently varying surfaces, such as elevation, water table heights, or pollution concentrations." -gisresources.com/types-interpolation-methods_3
    – ed.hank
    Commented Sep 10, 2016 at 22:02

1 Answer 1


One alternative is spline interpolation as suggested in the related post: Interpolation of multibeam bathymetry.

From QGIS, use the GRASS tool v.surf.rst:

Performs surface interpolation from vector points map by splines.

Then, you can test different types of parameterization available within the tool. There is an option to apply a leave-one-out cross validation for parameter optimization, which will vary gradually the tension, smoothing, etc; in order to find the minimal predictive error.

As suggested by user30184, make sure the input dataset uses ground level points at the lake's boundaries, so to avoid extrapolation.

  • Spline is what I used on a River Bathymetry project I did as a contractor for USGS. I never asked exactly why but we were pleased with the results. I almost made a similar answer but I wasn't sure of the justification. Good answer! Commented Sep 13, 2016 at 17:42
  • Thanks Andre, really appreciate your quick and crisp answer. I had some trouble trying to run v.surf.rst, it refused within QGIS to give me any proper raster output with values. Suspect its some problems with the way I have projected data. When I figure it out I will put the results in the edits to the question.
    – SaRo89
    Commented Sep 16, 2016 at 8:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.