Filtro FIR

Crea un filtro de respuesta finita al impulso (FIR) para el procesamiento de señales

Categoría: transformación/filtro de datos

Nota

Se aplica a: machine learning Studio (clásico)

Este contenido solo pertenece a Studio (clásico). Se han agregado módulos similares de arrastrar y colocar al diseñador de Azure Machine Learning. Obtenga más información en este artículo comparativa de las dos versiones.

Información general sobre el módulo

En este artículo se describe cómo usar el módulo de filtro FIR en Azure machine learning Studio (clásico) para definir un tipo de filtro denominado filtro de respuesta finita al impulso (FIR). Los filtros FIR tienen muchas aplicaciones en el procesamiento de señales y suelen usarse en aplicaciones que requieren una respuesta de fase lineal. Por ejemplo, se puede aplicar un filtro a las imágenes que se usan en sanidad para mejorar la imagen global, eliminar el ruido o centrarse en un objeto con imagen.

Nota

Un filtro es una función de transferencia que toma una señal de entrada y crea una señal de salida basada en las características del filtro. Para obtener más información general sobre el usuario de filtros en el procesamiento de señales digitales, vea filtro.

Después de definir un filtro de procesamiento de señal digital, puede aplicar el filtro a los datos conectando un conjunto de datos y el filtro al módulo aplicar filtro . También puede guardar el filtro para volver a usarlo con conjuntos de valores similares.

Sugerencia

¿Necesita filtrar los datos de un conjunto de datos o quitar los valores que faltan? En su lugar, use estos módulos:

  • Limpiar los datos que faltan: Use este módulo para quitar los valores que faltan o reemplazar los valores que faltan por marcadores de posición.
  • Partición y ejemplo: Use este módulo para dividir o filtrar el conjunto de valores por criterios como un intervalo de fechas, un valor específico o expresiones regulares.
  • Valores de clip: Use este módulo para establecer un intervalo y mantener solo los valores dentro de ese intervalo.

Cómo configurar el filtro FIR

  1. Agregue el módulo de filtro FIR al experimento. Puede encontrar este módulo en transformación de datos, en la categoría filtro .

  2. En Order, escriba un valor entero que defina el número de elementos activos utilizados para afectar a la respuesta del filtro. El orden del filtro representa la longitud de la ventana de filtro.

    En el caso de un filtro FIR, el orden mínimo es 4.

  3. En ventana, seleccione la forma de los datos a los que se aplicará el filtro. Aprendizaje automático de Azure admite los siguientes tipos de funciones de ventana para su uso en filtros de respuesta finita al impulso:

    Hamming: la ventana de Hamming generalizada proporciona un tipo de promedio ponderado, que suele usarse en el procesamiento de imágenes y en la visión de equipos.

    Blackman: una ventana de Blackman aplica una función de curva sin estrechar a la señal. La ventana de Blackman tiene mejor atenuación de banda de rechazo que otros tipos de ventana.

    Rectangular: una ventana rectangular aplica un valor coherente dentro del intervalo especificado y no aplica ningún valor en ningún otro lugar. La ventana rectangular más sencilla podría reemplazar n valores de una secuencia de datos con ceros, dando la sensación de que la señal se activara y desactivara de repente.

    Una ventana rectangular también se conoce como ventana Boxcar o de Dirichler.

    Triangular: una ventana triangular aplica coeficientes de filtro de forma escalonada. El valor actual aparece en la punta del triángulo y disminuye de valor con los valores anteriores o siguientes.

    Ninguno: en algunas aplicaciones es preferible no usar ninguna función de ventana. Por ejemplo, si la señal que está analizando ya representa algún tipo de ventana o ráfaga, aplicar una función de ventana podría deteriorar la relación señal/ruido.

  4. En tipo de filtro, seleccione una opción que defina cómo se aplica el filtro. Puede especificar que el filtro excluya los valores de destino, los modifique, los rechace o los pase.

    Paso bajo: "Pass-Low" significa que el filtro pasa por los valores inferiores y quita los valores superiores. Por ejemplo, puede usar esta información para quitar los picos de ruido y datos de alta frecuencia de una señal.

    Este tipo de filtro tiene un efecto de suavizado en los datos.

    Paso alto: "High pass" significa que el filtro pasa por los valores superiores y quita los valores inferiores. Puede utilizarlo para quitar datos de baja frecuencia, como una desviación o un desplazamiento, de una señal.

    Este tipo de filtro conserva los cambios repentinos y los picos en una señal.

    Los: "Pass-Band" significa que pasa caso la banda de valores especificada y quita otras. Puede usar este filtro para conservar los datos de una señal con características de frecuencia en la intersección entre los filtros paso alto y paso bajo.

    Los filtros paso banda se crean mediante la combinación de un filtro paso alto y uno paso bajo. La frecuencia de corte del filtro paso alto representa el límite inferior y la frecuencia de filtro paso bajo representa el límite superior.

    Este tipo de filtro es bueno quitando una polarización y suavizando una señal.

    Suprime banda: "banda delimitadora" significa que bloquea sigals especificadas. En otras palabras, quita los datos de una señal con características de frecuencia que son rechazadas por los filtros de paso bajo y paso alto.

    Este tipo de filtro es bueno conservando la polarización de señal y los cambios repentinos.

  5. Según el tipo de filtro que elija, debe establecer uno o varios valores de límite.

    Use las opciones límite superior y límite bajo para definir un umbral superior o inferior para los valores. Se requiere una o ambas de estas opciones para especificar los valores que se rechazan o se pasan. Un filtro de Suprime banda o los requiere que se establezcan valores de límite superior e inferior. Otros tipos de filtro, como el filtro paso bajo , requieren que se establezca únicamente el valor de límite inferior.

  6. Seleccione la opción escalar si se debe aplicar la escala a los coeficientes; de lo contrario, déjelo en blanco.

  7. Conecte el filtro para aplicar el filtroy conecte un conjunto de DataSet.

    Use el selector de columnas para especificar las columnas a las que se debe aplicar el filtro. De forma predeterminada, el módulo aplicar filtro usará el filtro para todas las columnas numéricas seleccionadas.

  8. Ejecute el experimento.

    No se realiza ningún cálculo hasta que se conecte un conjunto de los conjuntos de pruebas al módulo aplicar filtro y se ejecute el experimento. En ese momento, la transformación especificada se aplica a las columnas numéricas seleccionadas.

Nota

El módulo de filtro FIR no ofrece la opción de crear una columna de indicador. Los valores de columna siempre se transforman en contexto.

Ejemplos

Para obtener ejemplos de cómo se usan los filtros en el aprendizaje automático, vea este experimento en el Azure AI Gallery:

  • Filtros: este experimento muestra todos los tipos de filtro mediante un conjunto de información de formas de onda de ingeniería.

Notas técnicas

Esta sección contiene detalles de implementación, sugerencias y respuestas a las preguntas más frecuentes.

Detalles de la implementación

Los filtros FIR tienen estas características:

  • Los filtros FIR no tienen retroalimentación; es decir, usan los resultados del filtro anterior.
  • Los filtros FIR son más estables, ya que la respuesta al impulso siempre volverá a 0.
  • Los filtros FIR requieren un orden más alto para lograr la misma selectividad que los filtros de respuesta infinita al impulso (IIR).
  • Al igual que otros filtros, el filtro FIR se puede diseñar con una frecuencia de corte específica que conserva o rechaza las frecuencias que componen la señal.

Calcular coeficientes sobre la ventana de filtro

El tipo de ventana determina el equilibrio entre la selectividad (ancho de la banda de transición en la que las frecuencias no son totalmente aceptadas ni rechazadas) y la supresión (la atenuación total de frecuencias que se van a rechazar). La función de ventana se aplica a la respuesta de filtro ideal para obligar a que la respuesta de frecuencia sea cero fuera de la ventana. Los coeficientes se seleccionan mediante el muestreo de la respuesta de frecuencia dentro de la ventana.

El número de coeficientes que devuelve el módulo de Filtro FIR es igual al orden del filtro más uno. Los valores de coeficiente están determinados por los parámetros de filtro y por el método de la ventana, y son simétricos para garantizar una respuesta de fase lineal

Escalado de coeficientes

El módulo de filtro FIR devuelve los coeficientes de filtro, o bien la ponderación para el filtro creado.

Los coeficientes vienen determinados por el filtro según los parámetros que especifique, como por ejemplo el orden. Si desea especificar coeficientes personalizados, use el módulo de filtro definido por el usuario .

Cuando escala se establece en true, los coeficientes de filtro se normalizarán, de modo que la respuesta de la magnitud del filtro en la frecuencia central del paso banda sea 0. La implementación de la normalización en Azure Machine Learning Studio (clásico) es la misma que en la función FIR1 de MATLAB.

Normalmente, en el método de diseño de ventana, diseñará un filtro de respuesta infinita al impulso (IIR) ideal. Se aplicará la función de ventana a la forma de onda en el dominio del tiempo y se multiplicará el impulso infinito por la función de ventana. Esto provoca que la respuesta de frecuencia del filtro IIR se envuelva con la respuesta de frecuencia de la función de ventana. Sin embargo, en el caso de los filtros FIR, los coeficientes de entrada y de filtro (o los pesos de pulsación) se configuran al aplicar el filtro.

Selectividad y atenuación de la banda de detención

En la tabla siguiente se compara la selectividad con atenuación de suprime banda para un filtro FIR con longitud n mediante métodos de ventana diferentes:

Tipo de ventana Región de transición Atenuación suprime banda mínima
Rectangular 0,041n 21 dB
Triangle 0,11n 26 dB
Hann 0,12n Base de 44
Hamming 0,23n Base de 53
Blackman 0,2n Base de 75

Parámetros del módulo

Nombre Intervalo Tipo Valor predeterminado Descripción
Ordenar >= 4 Entero 5 Especificar el orden del filtro
Periodo Any WindowType Especificar el tipo de ventana para aplicar
Tipo de filtro Any FilterType Paso bajo Seleccionar el tipo de filtro para crear
Corte bajo [double.Epsilon;.9999999] Float 0,3 Establecer la frecuencia de corte baja
Corte alto [double.Epsilon;.9999999] Float 0,7 Establecer la frecuencia de corte alta
Escala Any Boolean True Si es true, los coeficientes del filtro se normalizarán

Output

Nombre Tipo Descripción
Filter Interfaz IFilter Implementación del filtro

Excepciones

Excepción Descripción
NotInRangeValue Se produce una excepción si el parámetro no se encuentra en el intervalo.

Para obtener una lista de los errores específicos de los módulos de Studio (clásico), consulte Machine Learning de los códigos de error.

Para obtener una lista de excepciones de API, consulte códigos de error de la API de REST de machine learning.

Vea también

Filtro
Aplicar filtro
Lista de módulos A-Z