How to have MATLAB identify flat areas on a line

3 次查看(过去 30 天)
I have some code that generates values for both x and y (horizontal and vertical), and I would like to be able to write something into the code that will be able to look for points that have a high second derivatives above some threshold value as well, as some certain amount of spacing before them that is flat.
Essentially what I am doing with my code is evolving coastal marine terraces through time to generate a final plot that shows what those terraces look like at present based on that code. I want to be able to discern areas that go from a flat shelf to a steep cliff, but I do not want to pick out shelves that are too small. I will use these points where there is a transition from flat to steeply inclined (called shoreline angles) to be able to quantitatively compare them with elevations of shoreline angles that exist in the actual landscape.
Any help, even if it is just the idea of how to go about this, would be much appreciated. I am including a picture of a plot to help better understand the problem.
The black line is an actual profile from the coastline of interest. The cyan line is the model generated curve. The places that stand out as benches and then change rapidly to steeply inclined cliffs are what I want to identify. I would then like to compare the y values for the points where it rapidly changes to the y values of points that I pick on the reality profile using a goodness of fit test like a chi-squared test.
Thank you.
  1 个评论
Image Analyst
Image Analyst 2015-8-4
It looks like the only flat/level part of the black line is between a distance of about 2 and 2.1 km and at an elevation of about 75 m. Am I reading that correctly? So that is the section you want to find?

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Oceanography and Hydrology 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by