Signal Processing Toolbox

Traiter et analyser des signaux

 

Signal Processing Toolbox™ propose des fonctions et des applications pour analyser, prétraiter et extraire des caractéristiques de signaux échantillonnés de manière uniforme et non uniforme. La toolbox comprend des outils pour la conception et l'analyse de filtres, le rééchantillonnage, le lissage, l'élimination de la tendance et l'estimation du spectre de puissance. La toolbox comprend également des fonctionnalités permettant d'extraire des caractéristiques comme les points de retournement et les enveloppes, de rechercher des crêtes et des motifs dans les signaux, de quantifier des similitudes de signaux et de réaliser des mesures comme le rapport signal à bruit et la distorsion. Vous pouvez également effectuer une analyse modale et d'ordre des signaux vibratoires.

L'application Signal Analyzer permet de prétraiter et d'analyser plusieurs signaux simultanément dans les domaines temporels, fréquentiels et temps-fréquence sans écrire de code, d’explorer de longs signaux et d’extraire des régions d'intérêt. L'application Filter Designer permet de concevoir et d'analyser des filtres numériques en choisissant parmi de nombreux algorithmes et réponses. Les deux applications génèrent du code MATLAB®.

En savoir plus :

Machine Learning et Deep Learning pour les signaux

Prétraitez des données, extrayez des caractéristiques, labellisez des signaux et générez des jeux de données pour les workflows de Machine Learning et de Deep Learning

Prétraitement et extraction de caractéristiques

Utilisez des fonctions et des applications intégrées pour nettoyer les signaux et supprimer les artefacts indésirables avant d'entraîner un réseau profond.

Extrayez des caractéristiques dans les domaines temporels, fréquentiels et temps-fréquence pour les améliorer et réduire la variabilité et la dimensionnalité des données pour entraîner des modèles de Deep Learning.

Classifier des signaux ECG avec des réseaux LSTM (Long Short-Term Memory)

Labellisation et gestion des jeux de données

Utilisez l'application Signal Labeler pour labelliser les signaux avec des attributs, des régions et des points d'intérêt. Créez différents types de labellisation et de sous-labellisation.

Utilisez des datastores pour gérer des signaux trop volumineux pour être stockés en mémoire.

Labelliser des signaux pour l'analyse 

Exemples de référence

Utilisez des exemples pour débuter avec le Machine Learning et le Deep Learning pour les signaux.

Segmentation de formes d'onde avec le Deep Learning.

Exploration et prétraitement d'un signal

Utilisez des applications et fonctions pour explorer, traiter et comprendre les données

Explorer les signaux

Utilisez l'application Signal Analyzer pour analyser et visualiser les signaux dans les domaines temporels, fréquentiels et temps-fréquence. Extrayez les régions d'intérêt à partir des signaux pour une analyse approfondie.

L'application Signal Analyzer permet également de mesurer et d'analyser des signaux de durée variable simultanément dans une même vue.

Prétraiter les données

Débruitez, lissez et éliminez la tendance des signaux pour les préparer à leur analyse. Supprimez les valeurs aberrantes et le contenu parasite de vos données.

Améliorez les signaux, visualisez-les et découvrez des motifs. Modifiez la fréquence d’échantillonnage d’un signal ou rendez-la constante pour les signaux contenant des données manquantes ou échantillonnés irrégulièrement.

Traiter un signal contenant des échantillons manquants

Extraction de caractéristiques et mesures du signal

Mesurez les caractéristiques distinctives courantes et extrayez des motifs dans les signaux

Statistiques descriptives

Calculez des statistiques descriptives courantes comme les maxima, minima, écarts-types et niveaux RMS. Trouvez les points de retournement dans les signaux et alignez les signaux grâce à la déformation dynamique du temps.

Identifiez les crêtes d’un signal et déterminer leur hauteur, leur largeur et la distance qui les sépare. Mesurez des caractéristiques dans le domaine temporel, comme l’amplitude crête à crête et les enveloppes des signaux.

Métriques d’impulsion et de transition

Mesurez le temps de montée, le temps de descente, la vitesse de balayage, l’overshoot et l’undershoot, le temps de stabilisation, la largeur d’impulsion, la période de répétition et le rapport cyclique.

Vitesse de balayage d'une forme d'onde triangulaire

Mesures spectrales

Calculez la bande passante et les fréquences moyennes ou médianes pour les signaux ou le spectre de puissance. Mesurez le rapport signal à bruit (SNR), la distorsion harmonique totale (THD) et le rapport signal à bruit et distorsion (SINAD). Mesurez la distorsion harmonique.

Estimez la fréquence instantanée, l'entropie spectrale et le kurtosis spectral.

Mesurer la puissance d'un signal

Conception et analyse de filtres

Concevez, analysez et implémentez un large éventail de filtres numériques et analogiques

Filtres numériques

Concevez, analysez et implémentez un large éventail de filtres FIR et IIR numériques (passe-bas, passe-haut, coupe-bande, etc.) avec l'application Filter Designer. Visualisez les réponses en amplitude, phase, retard de groupe, impulsionnelle et à un échelon.

Étudiez les pôles et zéros d'un filtre. Évaluez les performances d’un filtre en testant la stabilité ainsi que la linéarité de la phase. Appliquez des filtres aux données et supprimer les retards ainsi que la distorsion de phase avec le filtrage à phase zéro.

Filtres analogiques

Concevez et analysez des filtres analogiques, comme Butterworth, Chebyshev, Bessel ainsi que des filtres elliptiques.

Procédez à la conversion analogique-numérique des filtres en utilisant des méthodes comme l'invariance impulsionnelle et la transformation bilinéaire.

Comparaison de filtres passe-bas IIR analogiques

Analyse spectrale

Caractérisez le contenu fréquentiel d'un signal

Estimation spectrale

Estimez la densité spectrale en utilisant des méthodes non paramétriques comme le périodogramme, la méthode de Welch de moyennage par recouvrement des segments et la méthode multitaper. Implémentez des méthodes paramétriques et de type sous-espace, comme les méthodes de Burg, de covariance et MUSIC pour estimer le spectre.

Calculez les spectres de puissance de signaux échantillonnés de manière non uniforme ou de signaux contenant des échantillons manquants, à l’aide de la méthode de Lomb-Scargle. Mesurez les similitudes entre les signaux dans le domaine fréquentiel en estimant la cohérence spectrale.

Estimation spectrale avec la méthode de Welch

Fonctions de fenêtrage

Implémentez et visualisez les fonctions de fenêtrage courantes. Utilisez l'application Window Designer pour concevoir et analyser des fenêtres. Comparez la largeur des lobes principaux et le niveau des lobes secondaires des fenêtres en fonction de leur taille et d'autres paramètres.

Concevoir et analyser des fenêtres spectrales

Analyse temps-fréquence

Visualisez et comparez le contenu temps-fréquence des signaux non stationnaires

Distributions temps-fréquence

Utilisez la transformée de Fourier à court terme, les spectrogrammes ou les distributions de Wigner-Ville pour analyser les signaux avec un contenu spectral non-stationnaire. Utilisez le spectrogramme croisé pour comparer les signaux dans le domaine temps-fréquence.

Transformée de Fourier à court terme

Réallocation et synchrosqueezing

Utilisez la technique de réallocation pour améliorer la qualité de la localisation des estimations temps-fréquence. Identifiez les arêtes temps-fréquence en utilisant le synchrosqueezing.

Fréquence instantanée d'un chirp complexe

Transformées adaptatives 

Réalisez des analyses temps-fréquence adaptatives en utilisant la décomposition modale empirique, la décomposition modale variationnelle et la transformée de Hilbert-Huang.

Décomposition modale empirique

Analyse vibratoire

Caractérisez les vibrations des systèmes mécaniques

Analyse d'ordre

Utilisez l'analyse d'ordre pour analyser et visualiser le contenu spectral apparaissant dans les machines rotatives.

Effectuez le suivi et l'extraction des ordres et de leurs formes d'onde dans le domaine temporel. Effectuez le suivi et l'extraction des profils RPM à partir des signaux vibratoires. Éliminez le bruit de façon cohérente avec le moyennage synchrone.

Analyse vibratoire des machines rotatives

Analyse modale

Effectuez une analyse modale expérimentale en estimant les fonctions de réponse fréquentielle, les fréquences naturelles, les rapports d'amortissement et les formes modales.

Analyse modale d'une aile volante souple

Analyse de fatigue

Générez des comptages Rainflow pour l'analyse de fatigue sur un grand nombre de cycles.

Comptage Rainflow pour l'analyse de fatigue

Accélération et déploiement

Utilisez des GPU pour accélérer votre code. Générez du code source C et C++ portable, des exécutables autonomes ou des applications autonomes à partir de votre code MATLAB®

Accélérer votre code

Accélérez votre code avec des GPU et des processeurs multicœurs pour les fonctions supportées.

Accélérer une corrélation avec des GPU

Génération de code

Générez du code C et C++ de qualité production et des fichiers MEX pour le déploiement sur PC et applications embarquées avec MATLAB Coder.

Générez du code CUDA optimisé pour les fonctions supportées et utilisez-le sur des GPU NVIDIA.

Génération de code pour le filtrage à phase zéro

Nouveautés

Application Signal Labeler

Effectuez un étiquetage interactif ou automatisé des signaux

Datastores de signaux

Gérez des collections de signaux stockés dans l’espace de travail ou dans des fichiers

Analyse temps-fréquence

Utilisez la décomposition modale variationnelle pour extraire des modes intrinsèques

Exemples de Deep Learning

Utilisez des analyses temps-fréquence et des réseaux de neurones pour la classification et la labellisation

tall arrays

Exploitez les tall arrays avec les fonctions spectrogram et stft

Support de la génération de code GPU

Générez du code CUDA pour les fonctions fftfilt et stft

Accélération GPU

Accélérez les fonctions spectrogram, czt, stft et wvd

Support de la génération de code C/C++

Générez du code pour l’analyse temps-fréquence, l’extraction de caractéristiques, l’analyse spectrale, le traitement de signaux multifréquences et le design de filtres

Consultez les notes de version pour en savoir plus sur ces fonctionnalités et les fonctions correspondantes.