标题:用c语言或者matlab求拐点
只看楼主
司徒尹辛
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-8-1
结帖率:0
 问题点数:0 回复次数:4 
用c语言或者matlab求拐点
1000多个点构成的不规则曲线,没有曲线方程,怎么求它的拐点呀~~~本人绞尽脑计也弄不出来啊,愁死了,求大神啊
搜索更多相关主题的帖子: 曲线 matlab 
2013-03-03 20:35
小xiong
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:388
专家分:1722
注 册:2013-2-8
得分:0 
学习,,,
2013-03-03 20:46
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6809
专家分:42393
注 册:2010-12-16
得分:0 
如果一个点比前一个高比后一个低、或者比前一个低比后一个高,那么就可以就是拐点了

1 先把这1000个点,按x 坐标排序,从小到大

2
 for (i = 1 到999){
   if ( (a[i].y > a[i-1].y && a[i].y < a[i+1].y) || (a[i].y < a[i-1].y && a[i].y > a[i+1].y)) )
   {
     点(a[i].x, a[i].y)是拐点
   }




我行我乐
我的博客:
http://blog.yuccn. net
2013-03-03 20:50
司徒尹辛
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-8-1
得分:0 
回复 3楼 yuccn
点是离散的,还有同一个y值对应十几个x值的时候,您说的那个方法不太管用
2013-03-03 20:57
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
得分:0 
楼上仁兄的分析不对。一条斜线上的点即满足楼上的说法,但它们不是拐点吧。

楼主想要的拐点是采样点中的还是拟合后曲线上的?如果是拟合曲线上的那就对拟合曲线求导计算,如果是采样点中的,虽然也是求导,但可以简单地计算该点与相邻点构成直线的斜率来判断。

重剑无锋,大巧不工
2013-03-03 21:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-399600-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.591020 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved