Partager via


Filtre FIR

Important

Le support de Machine Learning Studio (classique) prend fin le 31 août 2024. Nous vous recommandons de passer à Azure Machine Learning avant cette date.

À partir du 1er décembre 2021, vous ne pourrez plus créer de nouvelles ressources Machine Learning Studio (classique). Jusqu’au 31 août 2024, vous pouvez continuer à utiliser les ressources Machine Learning Studio (classique) existantes.

La documentation ML Studio (classique) est en cours de retrait et ne sera probablement plus mise à jour.

Crée un filtre de réponses impulsionnelles finies pour le traitement du signal

Catégorie : transformation/filtre de données

Notes

s’applique à: Machine Learning Studio (classic) uniquement

Des modules par glisser-déposer similaires sont disponibles dans Concepteur Azure Machine Learning.

Vue d’ensemble du module

cet article explique comment utiliser le module filtre FIR dans Machine Learning Studio (classic) pour définir un type de filtre appelé filtre à réponse impulsionnelle finie (FIR). Les filtres FIR ont de nombreuses applications dans le traitement des signaux, et sont couramment utilisés dans des applications nécessitant une réponse à phase linéaire. Par exemple, un filtre peut être appliqué aux images utilisées dans les soins de santé pour améliorer la netteté de l’image globale, éliminer le bruit ou se concentrer sur un objet image.

Notes

Un filtre est une fonction de transfert qui prend un signal d’entrée et crée un signal de sortie en fonction des caractéristiques du filtre. Pour obtenir des informations générales sur l’utilisateur des filtres dans le traitement des signaux numériques, consultez filtre.

Une fois que vous avez défini un filtre de traitement de signal numérique, vous pouvez appliquer le filtre aux données en connectant un jeu de données et le filtre au module appliquer le filtre . Vous pouvez également enregistrer le filtre en vue d’une réutilisation avec des jeux de données similaires.

Conseil

Vous avez besoin de filtrer les données d’un DataSet ou de supprimer les valeurs manquantes ? Utilisez plutôt ces modules :

  • Nettoyer les données manquantes: utilisez ce module pour supprimer les valeurs manquantes ou remplacer les valeurs manquantes par des espaces réservés.
  • Partition and Sample: utilisez ce module pour diviser ou filtrer votre jeu de données en fonction de critères tels qu’une plage de dates, une valeur spécifique ou des expressions régulières.
  • Valeurs de clip: utilisez ce module pour définir une plage et conserver uniquement les valeurs comprises dans cette plage.

Comment configurer le filtre FIR

  1. Ajoutez le module de filtre FIR à votre expérience. Vous pouvez trouver ce module sous transformation des donnéesdans la catégorie filtre .

  2. Pour commande, tapez une valeur entière qui définit le nombre d’éléments actifs utilisés pour affecter la réponse du filtre. L' ordre du filtre représente la longueur de la fenêtre de filtre.

    Pour un filtre FIR, la commande minimale est 4.

  3. Pour fenêtre, sélectionnez la forme des données à laquelle le filtre sera appliqué. Machine Learning prend en charge les types suivants de fonctions de fenêtrage pour une utilisation dans les filtres à réponse impulsionnelle finie :

    Hamming: la fenêtre Hamming généralisée fournit un type de moyenne pondérée, qui est couramment utilisé dans le traitement d’image et la vision par ordinateur.

    Blackman: une fenêtre Blackman applique une fonction de courbe lissement conique au signal. La fenêtre Blackman offre une meilleure atténuation de bande d'arrêt que d'autres types de fenêtres.

    Rectangulaire: une fenêtre rectangulaire applique une valeur cohérente à l’intérieur de l’intervalle spécifié et n’applique aucune valeur ailleurs. La fenêtre rectangulaire la plus simple peut remplacer n valeurs d'une séquence de données par des zéros, ce qui donne l'impression que le signal est soudainement activé et désactivé.

    Une fenêtre rectangulaire est également appelée fenêtre boxcar ou Dirichlet.

    Triangulaire: une fenêtre triangulaire applique des coefficients de filtre de manière progressive. La valeur active apparaît au sommet du triangle, puis elle décline avec les valeurs précédentes ou suivantes.

    Aucun: dans certaines applications, il est préférable de ne pas utiliser de fonctions de fenêtrage. Par exemple, si le signal que vous analysez représente déjà une fenêtre ou une rafale, l'application d'une fonction de fenêtre peut dégrader le rapport signal/bruit.

  4. Pour type de filtre, sélectionnez une option qui définit la façon dont le filtre est appliqué. Vous pouvez spécifier que le filtre exclue les valeurs cibles, les modifie, les rejette ou les transmette.

    Passe-bas: « passage faible » signifie que le filtre passe par des valeurs inférieures et supprime les valeurs plus élevées. Par exemple, vous pouvez l’utiliser pour supprimer le bruit et les pics de données à haute fréquence d’un signal.

    Ce type de filtre a un effet régularisant sur les données.

    Haut: « passe-haut » signifie que le filtre passe par des valeurs plus élevées et supprime les valeurs inférieures. Vous pouvez l’utiliser pour supprimer des données à fréquence faible, telles qu’une polarisation ou un décalage, d’un signal.

    Ce type de filtre conserve les changements soudains et les pics dans un signal.

    Bandepassante : « passe-bande » signifie qu’il transmet pour la bande de valeurs spécifiée et supprimez d’autres. Vous pouvez utiliser ce filtre pour conserver les données d’un signal dont les caractéristiques de fréquence se trouvent à l’intersection entre les filtres haut et passe-bas.

    Les filtres passe-bande sont créés en combinant un filtre passe-haut et un filtre passe-bas. La fréquence de coupure du filtre passe-haut représente la limite inférieure et, celle du filtre passe-bas représente la limite supérieure.

    Ce type de filtre est bon pour supprimer une polarisation et régulariser un signal.

    Éliminateur: « arrêt de bande » signifie qu’il bloque les sigals spécifiés. En d’autres termes, elle supprime les données d’un signal dont les caractéristiques de fréquence sont rejetées par le passage faible et les filtres haut.

    Ce type de filtre est bon pour préserver la polarisation du signal et les modifications soudaines.

  5. Selon le type de filtre que vous avez choisi, vous devez définir une ou plusieurs valeurs de coupure.

    Utilisez les options limite supérieure et limite inférieure pour définir un seuil supérieur et/ou inférieur pour les valeurs. L’une ou l’autre de ces options est requise pour spécifier les valeurs qui sont rejetées ou transmises. Un filtre éliminateur ou bande passante requiert la définition de valeurs de coupure haute et basse. D’autres types de filtres, tels que le filtre passe-bas , requièrent que vous définissent uniquement la valeur de coupure basse.

  6. Sélectionnez l’option mettre à l' échelle si la mise à l’échelle doit être appliquée aux coefficients ; Sinon, laissez vide.

  7. Connecter le filtre pour appliquer le filtreet connecter un jeu de données.

    Utilisez le sélecteur de colonne pour spécifier les colonnes auxquelles le filtre doit s’appliquer. Par défaut, le module appliquer le filtre utilise le filtre pour toutes les colonnes numériques sélectionnées.

  8. Exécutez l’expérience.

    Aucun calcul n’est effectué tant que vous n’avez pas connecté un jeu de données au module appliquer le filtre et exécuté l’expérience. À ce stade, la transformation spécifiée est appliquée aux colonnes numériques sélectionnées.

Notes

Le module filtre FIR n’offre pas la possibilité de créer une colonne d’indicateur. Les valeurs de colonne sont toujours transformées sur place.

Exemples

Pour obtenir des exemples d’utilisation de filtres dans Machine Learning, consultez cette expérience dans le Azure ai Gallery:

  • Filtres: cette expérience illustre tous les types de filtres, à l’aide d’un jeu de données de forme d’onde conçu.

Notes techniques

Cette section contient des détails, des conseils et des réponses aux questions fréquentes concernant l’implémentation.

Informations d’implémentation

Les filtres FIR présentent les caractéristiques suivantes :

  • Les filtres FIR n'ont pas de contre-réaction, autrement dit, ils réutilisent les sorties de filtre précédentes.
  • Les filtres FIR sont plus stables, car la réponse impulsionnelle renvoie toujours sur 0.
  • Les filtres FIR nécessitent un ordre plus élevé pour atteindre la même sélectivité que les filtres IIR (à réponse impulsionnelle infinie).
  • Comme d'autres filtres, le filtre FIR peut être conçu avec une fréquence de coupure spécifique qui permet de conserver ou de rejeter les fréquences qui composent le signal.

Calcul des coefficients sur la fenêtre de filtre

Le type de fenêtre détermine le compromis entre la sélectivité (largeur de bande de transition dans laquelle les fréquences ne sont ni entièrement acceptées ni entièrement rejetées) et la suppression (atténuation totale des fréquences à rejeter). La fonction de fenêtrage est appliquée à la réponse de filtre idéale pour forcer la réponse de la fréquence à zéro en dehors de la fenêtre. Les coefficients sont sélectionnés en échantillonnant la réponse de fréquence dans la fenêtre.

Le nombre de coefficients renvoyés par le module Filtre FIR est égal à l'ordre du filtre plus un. Les valeurs de coefficient sont déterminées par les paramètres de filtre et par la méthode de fenêtrage. Elles sont symétriques pour garantir une réponse à phase linéaire.

Mise à l’échelle des coefficients

Le module de filtre FIR retourne les coefficients de filtre, ou appuyez sur pondérations pour le filtre créé.

Les coefficients sont déterminés par le filtre en fonction des paramètres que vous entrez (par exemple, l'ordre). Si vous souhaitez spécifier des coefficients personnalisés, utilisez le module de filtre défini par l’utilisateur .

Lorsque Scale est défini sur true, les coefficients de filtre sont normalisés, de sorte que la réponse de magnitude du filtre à la fréquence centrale du bande passante est 0. l’implémentation de la normalisation dans Machine Learning Studio (classic) est identique à celle de la fonction fir1 dans MATLAB.

En règle générale, dans la méthode de conception de fenêtre, vous concevez un filtre de réponse impulsionnelle infinie (IIR) idéale. La fonction de fenêtre est appliquée à la forme d'onde dans le domaine temps. Elle multiplie la réponse impulsionnelle infinie par la fonction de fenêtre. Cela entraîne la convolution de la réponse en fréquence du filtre IIR avec la réponse en fréquence de la fonction de fenêtrage. Toutefois, dans le cas de filtres FIR, les coefficients d’entrée et de filtre (ou les pondérations de pression) sont conversés lors de l’application du filtre.

Atténuation de la sélectivité et de la plage d’arrêt

Le tableau suivant compare la sélectivité et l'atténuation de bande pour un filtre FIR avec la longueur n en utilisant différentes méthodes de fenêtrage :

Type de fenêtre Région de transition Atténuation de bande minimale
Rectangulaire 0,041n 21 dB
Triangle 0,11n 26 dB
Hann 0,12n 44 dB
Hamming 0,23n 53 dB
Blackman 0,2n 75 dB

Paramètres du module

Nom Plage Type Default Description
Commande >=4 Integer 5 Spécifier l'ordre des filtres
Fenêtre Quelconque WindowType Spécifiez le type de fenêtre à appliquer
Type de filtre Quelconque FilterType Passe-bas Sélectionnez le type de filtre à créer
Coupe-bas [double.Epsilon;.9999999] Float 0.3 Définir la fréquence coupe-bas
Coupe-haut [double.Epsilon;.9999999] Float 0,7 Définir la fréquence coupe-haut
Scale Quelconque Boolean True Si true, les coefficients de filtre sont normalisés

Output

Nom Type Description
Filtrer Interface IFilter Implémentation de filtre

Exceptions

Exception Description
NotInRangeValue Une exception se produit si le paramètre n’est pas dans la plage.

pour obtenir la liste des erreurs spécifiques aux modules Studio (classiques), consultez Machine Learning codes d’erreur.

pour obtenir la liste des exceptions d’api, consultez Machine Learning les Codes d’erreur de l' api REST.

Voir aussi

Filter
Appliquer un filtre
Liste alphabétique des modules