• MATLAB中findpeaks函数用法


    目录

    语法

    说明

    示例


             在MATLAB中,findpeaks函数用于查找信号中的峰值(peaks)。以下是findpeaks函数的基本语法、说明以及示例:

    语法

    1. [pks,locs] = findpeaks(x)
    2. [pks,locs] = findpeaks(x, 'Name', Value)

    说明

    参数说明

    • x:输入信号,可以是一个向量或一个矩阵。通常,x 是一个表示某种测量值随时间或位置变化的一维信号。

    可选的名称-值参数(Name-Value Pairs)包括:

    • 'MinPeakHeight':指定峰值的最小高度。只有高度超过此阈值的峰值才会被找到。默认值为-inf,表示没有高度阈值。
    • 'MinPeakDistance':指定峰值之间的最小距离。如果两个峰值之间的距离小于此值,只有其中一个峰值会被保留。默认值为1。
    • 'Threshold':指定峰值的阈值。只有高度超过此阈值的峰值才会被找到。默认值为0。
    • 'SortStr':指定返回的峰值是否按高度排序。可以设置为'ascend'(升序,默认值)或'descend'(降序)。
    • 'NPeaks':指定要返回的峰值的最大数量。如果设置为正整数,将返回高度最高的前NPeaks个峰值

    输出参数说明

    • pks:找到的峰值的高度,是一个向量。
    • locs:找到的峰值在输入信号中的位置,是一个向量,表示峰值的索引。

    示例

    1. % 创建一个示例信号
    2. t = linspace(0, 2*pi, 1000);
    3. x = sin(3*t) + 0.5*sin(7*t);
    4. % 使用默认参数查找峰值
    5. [pks, locs] = findpeaks(x);
    6. % 绘制信号和峰值
    7. plot(t, x, t(locs), pks, 'ro');
    8. title('信号和峰值');
    9. xlabel('时间');
    10. ylabel('幅度');
    11. legend('信号', '峰值');
    12. % 自定义参数查找峰值
    13. [pks, locs] = findpeaks(x, 'MinPeakHeight', 0.8, 'MinPeakDistance', 100);
    14. % 绘制信号和自定义参数查找的峰值
    15. figure;
    16. plot(t, x, t(locs), pks, 'ro');
    17. title('信号和自定义参数查找的峰值');
    18. xlabel('时间');
    19. ylabel('幅度');
    20. legend('信号', '峰值');

    如图所示:

  • 相关阅读:
    Flutter 3.3 现已发布
    2024年深圳杯&东三省数学建模联赛A题论文首发第二种思路
    算法基础:归并排序(超详细)
    英文翻译法语-英文法语翻译软件
    分布式面试题
    opencv-图像变换:傅里叶变换
    总结:2022-9-11 动态规划最优子结构特征 多进程图像总结
    Hive集群部署实验
    Bash基本功能—通配符和其他特殊符号
    vue生成动态表单
  • 原文地址:https://blog.csdn.net/jk_101/article/details/132878689