MATLAB est un logiciel technique qui peut être utilisée pour le traitement et l'analyse de signaux . Une procédure commune en matière d'analyse du signal est la détection de pointe, ou de trouver des maxima locaux - des valeurs plus grandes que les points de données adjacents - dans un signal bruité . Il est généralement nécessaire de limiter la détection de pointe à des maxima locaux d'une certaine largeur - durée lorsque le signal est dans le domaine du temps - ainsi que d'une certaine hauteur ou l'ampleur . Instructions
1
définir une source de données par importation de données dans MATLAB. Par exemple, créer une onde sinusoïdale avec un bruit aléatoire :
my_signal = sin ( 0:0.1:10 ) + rand ( 1,101 ) ;
2
Trouver des pics dans votre signal en utilisant l' méthode d'interpolation quadratique de " findpeaks () ":
[ peak_value , peak_location ] = findpeaks ( my_signal ) ;
3
Recherche des pics d'une hauteur minimale à l'aide le paramètre " minpeakheight " . La hauteur est un scalaire à valeur réelle qui se réfère à la valeur des données minimum de pics admissibles :
[ peak_value , peak_location ] = findpeaks ( my_signal , « minpeakheight ' , 2,5 ) ;
4 < p > Rechercher des pics séparés par une distance minimum en utilisant le paramètre " minpeakdistance " . La valeur est le nombre minimum d' indices entre les pics dans le vecteur " my_signal " , et doit être un entier :
[ peak_value , peak_location ] = findpeaks ( my_signal , « minpeakdistance ', 5) ;
5
Rechercher seulement pics au-dessus d'un certain seuil en utilisant le paramètre " seuil " . Il s'agit d' un scalaire à valeur réelle qui se réfère à la différence minimale permise entre les points de données de pointe et adjacent :
[ peak_value , peak_location ] = findpeaks ( my_signal , ' seuil ' , 0,5 ) ;
6
seulement trouver un certain nombre de pics en utilisant le paramètre " npeaks " . La valeur doit être un entier:
[ peak_value , peak_location ] = findpeaks ( my_signal , « npeaks ', 5) ;
7
Trier la liste retournée de pics utilise le " sortstr paramètre " . Les valeurs autorisées sont " monter ", " descendre " et "none" :
[ peak_value , peak_location ] = findpeaks ( my_signal , « sortstr », « ascension ») ;