jiansongliu 发表于 2011-7-15 13:31

求问,FFT变换后,想得到振幅最大处的横坐标,命令或者方

求问大家,FFT变换后,想提取几处振幅最大处的横坐标,相应的命令或者方法是什么。因为我们不关心它们的振幅而关心他们所对应的横坐标,如图,想得到图中四处的振幅所对应的横坐标。谢谢。



321forever 发表于 2011-7-17 01:39

回复 1 # jiansongliu 的帖子

做好fft后,得到的是一个数列,在这个数列中找出最大值

jiansongliu 发表于 2011-7-19 09:51

应该是个好办法,但估计还是有困难,因为图中有好几处较大值振幅。楼主给的方法不错,谢谢。

jiansongliu 发表于 2011-7-20 10:21

本帖最后由 jiansongliu 于 2011-7-20 10:22 编辑

还是期待大家进一步帮助,因为振幅最大值处容易找出。但是对于第二个波峰或以及第三个波峰等等,它们并不是对应于第二或则第三振幅最大值。以为FFT变化后其实都是有一个个波峰所组成。多以说第一个最大振幅是容易找到的,但是对于其他的,就无能为力了。
我在网上搜索到类似的问题,但是好像都没有给出具体的办法。

所以在这里再次发起该问题的求解,以等待大家的宝贵意见

tenglang 发表于 2011-7-20 12:40

回复 6 # jiansongliu 的帖子

可以把计算结果一个temp变量, 在找到temp变量中的第一最大值后,然后把这个最大值设为0,这样就可以找到第二个最大值了,以此类推.

ChaChing 发表于 2011-7-21 00:49

若如1F的图, 个人以为LZ的问题不在如何找, 应先考量如何smoothing!?

jiansongliu 发表于 2011-7-21 11:25

谢谢大家的回复,tenglang 给的答案也只能找出最大的振幅对应的横坐标值,因为我给出的傅里叶变化图曲线是由都是有一个个很密波峰所组成,所以第二个最大振幅不一定就是我所要的那个振幅点。
ChaChing 给出的答案我认为一定程度上是个关键,smoothing 是不是就是吧我画的图拟合成一条光滑曲线,而非我给出的由一系列波峰所组成的曲线。但如果是那样的话,会不会改变其值?

小地震 发表于 2011-7-23 12:21

楼主这个分析好像是把间断了的几次连续振懂的数据放在一起做了FFT,由于每次振的强度不一样,所以看着不清晰,最好能就一次振动数据做FFT,这样看着会很清楚。

gumiaoyu 发表于 2011-8-1 20:10

可以用sort排序命令先进行降序排序,然后找到对应的横坐标就可以了啊,你的图中峰值也就10个以内很容易找到

cartoonyjw 发表于 2011-8-2 11:06

我也遇到这样的问题,我的想法就是求局部极大值,峰值的位置肯定是比它前面的值和后面的值都大,所以通过一个循环和判断就可以得到这样一系列满足条件的峰值。但遇到了新的问题就是得到了一些我不需要的极大值。通过一个阈值来筛选也不起任何作用。请问楼主是否找到了更好的办法?

cartoonyjw 发表于 2011-8-2 11:07

补充:找到了峰值就相当于找了对应的横坐标

gumiaoyu 发表于 2011-8-2 15:30

回复 11 # gumiaoyu 的帖子

刚开始想错了,应该是先求出极值及对应的横坐标,然后排序就可以求出相对应的横坐标了

ChaChing 发表于 2011-8-3 00:57

cartoonyjw 发表于 2011-8-2 11:06 static/image/common/back.gif
我也遇到这样的问题,我的想法就是求局部极大值,峰值的位置肯定是比它前面的值和后面的值都大,所以通过一 ...

8F smoothing如何?

ChaChing 发表于 2011-8-3 01:01

建议LZ给齐数据及初步代码, 让楼上几位试试看!

cartoonyjw 发表于 2011-8-3 10:13

回复 15 # ChaChing 的帖子

你说得smoothing具体怎么做?
页: [1] 2
查看完整版本: 求问,FFT变换后,想得到振幅最大处的横坐标,命令或者方