Filtro FIR

Importante

El soporte técnico de Machine Learning Studio (clásico) finalizará el 31 de agosto de 2024. Se recomienda realizar la transición a Azure Machine Learning antes de esa fecha.

A partir del 1 de diciembre de 2021 no se podrán crear recursos de Machine Learning Studio (clásico). Hasta el 31 de agosto de 2024, puede seguir usando los recursos de Machine Learning Studio (clásico) existentes.

La documentación de ML Studio (clásico) se está retirando y es posible que no se actualice en el futuro.

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

Categoría: Transformación de datos/Filtro

Nota:

Solo se aplica a: Machine Learning Studio (clásico)

Hay módulos para arrastrar y colocar similares en el diseñador de Azure Machine Learning.

Información general sobre el módulo

En este artículo se describe cómo usar el módulo filtro FIR en Machine Learning Studio (clásico) para definir un tipo de filtro denominado filtro de respuesta de impulso finito (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 podría aplicar un filtro a las imágenes usadas en el sector sanitario para mejorar la imagen general, eliminar el ruido o centrarse en un objeto con imágenes.

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 información más general sobre el usuario de filtros en el procesamiento de señales digitales, consulte 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 datos similares.

Sugerencia

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

  • Limpiar 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 datos por criterios como un intervalo de fechas, un valor específico o expresiones regulares.
  • Recortar valores: use este módulo para establecer un intervalo y mantener solo los valores dentro de ese intervalo.

Configuración del filtro FIR

  1. Agregue el módulo 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 que se usan para afectar a la respuesta del filtro. El orden del filtro representa la longitud de la ventana de filtro.

    Para 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. Machine Learning admite los siguientes tipos de funciones de ventana para su uso en filtros finitos de respuesta de impulso:

    Hamming: la ventana de Hamming generalizada proporciona un tipo de promedio ponderado, que se usa normalmente en el procesamiento de imágenes y la visión informática.

    Blackman: una ventana de Blackman aplica una función de curva sin problemas 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 otra parte. 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 paso a paso. 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.

    Lowpass: "Paso bajo" significa que el filtro pasa a través de valores inferiores y quita los valores más altos. Por ejemplo, puede usarlo para quitar el ruido de alta frecuencia y los picos de datos de una señal.

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

    Highpass: "Paso alto" significa que el filtro pasa a través de valores más altos y quita los valores inferiores. Puede usarlo para quitar datos de baja frecuencia, como un sesgo u desplazamiento, de una señal.

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

    Bandpass: "Paso de banda" significa que pasa por la banda de valores especificada y quita otros. Puede usar este filtro para conservar los datos de una señal con características de frecuencia en la intersección entre los filtros highpass y lowpass.

    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.

    Bandastop: "Detención de banda" significa que bloquea los sigales especificados. En otras palabras, quita los datos de una señal con características de frecuencia rechazadas por el paso bajo y los filtros highpass.

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

  5. En función del tipo de filtro que elija, debe establecer uno o varios valores límite.

    Use las opciones Límite alto y Límite bajo para definir un umbral superior o inferior para los valores. Una o ambas opciones son necesarias para especificar qué valores se rechazan o se pasan. Un filtro bandtopo bandpass requiere que establezca valores de límite alto y bajo. Otros tipos de filtro, como el filtro lowpass , requieren que establezca solo el valor de límite inferior.

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

  7. Conectar el filtro a Aplicar filtro y conecte un conjunto de datos.

    Use el selector de columnas para especificar a qué columnas 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 conecte un conjunto de datos al módulo Aplicar filtro y ejecute el experimento. En ese momento, la transformación especificada se aplica a las columnas numéricas seleccionadas.

Nota:

El módulo Filtro FIR no proporciona la opción de crear una columna de indicador. Los valores de columna siempre se transforman en su lugar.

Ejemplos

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

  • Filtros: este experimento muestra todos los tipos de filtro mediante un conjunto de datos de forma de onda diseñado.

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.

Cálculo de coeficientes en 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 Filtro FIR devuelve coeficientes de filtro, o pesos de pulsació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 Filtro definido por el usuario.

Cuando Escala se establece en True, se normalizarán los coeficientes de filtro, de modo que la respuesta de magnitud del filtro en la frecuencia central de la banda de paso sea 0. La implementación de la normalización en 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 filtro (o pesos de pulsación) se contrae 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 44 dB
Hamming 0,23n 53 dB
Blackman 0,2n 75 dB

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 errores específicos de los módulos de Studio (clásico), consulte Machine Learning códigos de error.

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

Consulte también

Filter
Aplicar filtro
Lista de módulos A-Z