We are trying to calculate a average shoreline position from a collection of shorelines dating from the 1880s to the present, the purple lines shown on the map below: enter image description here
We want to create some code that averages them to create a baseline shoreline, something like the hand-drawn black line on the map. Ideally the resulting line should fall in the middle of the shorelines and also cross inlets.

We were thinking to just take offshore transects every so often, compute the mean, and then spline fit the resulting points, but it seems there are lots of things to consider here that could cause problems.

Does this approach sound reasonable? Or is there a better way to do this, ideally in python?

  • Please, specify which GIS software you want to use.
    – mgri
    Apr 24 '17 at 20:54
  • Additionally, what have you tried? A question asking for help writing code should include a snippet of the code you've tried, and details of what happens (including any error messages) when you run it.
    – Midavalo
    Apr 24 '17 at 21:40
  • 1
    I specified python is preferred. I have not tried any code yet, but outlined the algorithmic approach I planned to use. This was basically a "does this sound reasonable" question, but perhaps gis.stackexchange does not allow for that. Apr 24 '17 at 22:13
  • Not sure if this is a red herring but have you looked at DSAS?
    – Hornbydd
    Apr 24 '17 at 23:47
  • DSAS requires you to specify a baseline shoreline. This question is "how could one create a baseline shoreline algorithmically from existing shorelines?" Apr 25 '17 at 1:10

my first guess (and I'd have to test it to make sure it would work) would be to calculate a euclidean distance to each shoreline. Sum the stack and take the minimum. You might need to do some sort of least cost path through the distances sum product to get a single clean line. I would think transects would get wonky with the curvature of the lines. We did something similar to calculate the centerline of a river based on just two lines.

GDAL can can calculate a distance in python : http://www.gdal.org/gdal_proximity.html and least cost path: GDAL - Perform Simple Least Cost Path Analysis

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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