Comment détecter les pics dans MATLAB
Étape 1
Définit une source d'informations en important des données dans MATLAB. Par exemple, créez une onde sinusoïdale avec un bruit aléatoire:
mon_signal = péché (0: 0.1: 10) + rand (1 101);
Étape 2
Recherchez des pics dans votre signal à l'aide de la méthode d'interpolation quadratique de "findpeaks ():"
[peak_value, peak_location] = findpeaks (mon_signal);
Étape 3
Recherchez les pics d'une hauteur minimale à l'aide du paramètre "minpeakheight". La hauteur est un scalaire de valeur réelle qui fait référence à la valeur de données minimale des pics autorisés:
[peak_value, peak_location] = findpeaks (my_signal, 'minpeakheight', 2.5);
Étape 4
Recherchez les pics séparés par une distance minimale à l'aide du paramètre "minpeakdistance". La valeur est le nombre minimum d'index entre les pics du vecteur "my_signal" et doit être un entier:
[peak_value, peak_location] = findpeaks (my_signal, 'minpeakdistance', 5);
Étape 5
Recherchez uniquement les pics dépassant une certaine limite à l'aide du paramètre "Seuil". Il s'agit d'une échelle de valeur réelle qui fait référence à la différence minimale autorisée entre le pic et les points d'information adjacents:
[peak_value, peak_location] = findpeaks (mon_signal, 'seuil', 0.5);
Étape 6
Recherchez uniquement un certain nombre de pics à l'aide du paramètre "npeaks". La valeur doit être un entier:
[peak_value, peak_location] = findpeaks (my_signal, 'npeaks', 5);
Étape 7
Correction de la liste renvoyée par les pics à l'aide du paramètre "sortsr". Les valeurs autorisées sont "ascend" (ascend), "descend" (descend) et "none" (aucune):
[peak_value, peak_location] = findpeaks (my_signal, 'sortstr', 'ascend');