• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

提取有效的波形?

zzgege 2017-06-21 浏览量:965

有木有谁有好办法,就是把黑色波形,照红色那样,提取,如下图就是那种比较平缓过度或者幅度相对较小的点不要,最终形成三个点一个波形单元


111.jpg

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 教你一个好办法,

    1. 对于这些点,求差分,也就是求导,直接获得斜率信息

    2. 找到拐点(斜率函数的零点位置,并且这个点左右侧的值一正一负)

    3. 判断左右斜率是否大于你的设定阈值(值越大说明越陡,越小越平坦)


    找出符合这些条件的拐点,连起来就是你要的东西了 哈哈哈

    • 发布于 2017-06-21
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:6

  • 将你的采样频率降低一点就行,另外如果你想将一些微小跳动去掉的话,可以考虑加低通滤波器
    • 发布于2017-06-21
    • 举报
    • 评论 0
    • 0
    • 0

  • 一、

    如果这个是ADC的数据波形,那么考虑使用IIR或是FIR进行滤波,IIR或是FIR的参数计算好了就可以满足你的要求。

    二、

    如果不是,那么你要找到波形的转折点,即斜率的正负变化点的纵坐标的值并记录在一个缓存中,再计算纵坐标的差值,去掉差值小的数据,再做画波形。

    • 发布于2017-06-21
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个要看波形,如果是你画的那样的,做求导就好了,导数为0的就是大小极值。

    怎么找一个函数的极值点可以参考高等数学教科书。

    • 发布于2017-06-22
    • 举报
    • 评论 0
    • 0
    • 0

  • 您好,其實要看您採樣的情形,如果您採樣點夠多,可以得到轉折處

    因為是離散(discrete)去近似連續(continuous)訊號,所以不好用數學直接計算導數什麼的

    你可以用Array去儲存a點,b點,c點,d點...

    若c>b>a,但d<c,則c到d是一個轉折處,記錄起來,也可制定自己的threshold

    同理處理接下來幾個點,進行描繪即可

    以上

    • 发布于2017-06-22
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

提取有效的波形?