如图示,曲线的最大值、最小值点以求得,怎样求在最大值和最小值之间的曲线拐弯处的点?我试过用极值法求,但是行不通,因为两个数基本上是相等的。注:数据是离散的
[

17 条回复

建议计算相邻点间的斜率 斜率发生重大变化的地方 极有可能是出现拐点的地方

所谓斜率可以通过求一阶导数来得到,一阶导数符号改变的地方就是拐点。

如下图所示,原信号的一阶差分信号,我通过语句 :
a=find(k3==0)找一阶差分为零的点,
出现这种情况:
a =
Empty matrix: 1-by-0
从图中看应该有五个点的一阶差分等于零的,但是为什么用find找不出来呢?还有别的什么方法吗?
[

回复 3# songzy41 的帖子

按你的方法执行,如上楼所述。出现什么问题了?是因为一阶差分信号的数值太小吗?

回复 3# songzy41 的帖子

可能是我方法搞错了,刚才看了一下一阶差分的数值,没有等于零的点,应该如你所说:找斜率符号改变的点。我再试试

回复 2# xqqe 的帖子

斜率发生重大变化用具体语句应该怎么表达?能写段例子吗?
还有我要的是确切的点,不是有可能的点。谢谢!

设DIF为一阶导数的数值,整个数据长N,则可计算:
s(1)=1;
for k=2:N
s(k)=DIF(k-1)*DIF(k);