Atenuar ruido con altavoz

Muy buenas tardes he estado tratando de crear un proyecto que permita medir y atenuar señales, al momento solo he logrado medir las mismas con un sensor, bastante sencillo el diseño.
Mi consulta es si tienen ideas de:
1.-Cómo lograr que se distinga los diversos tipos de ruido?
2.- Cómo obtener que el sonido captado en el sensor capte la señal, se filtre y reproduzca el altavoz una onda opuesta con el afán que se perciba al oído realmente se haya atenuado

Lo que quieres hacer no es posible con la mayoria de Arduinos.
Requieres un DSP, Digital Signal Processing. Microchip tiene varios disponibles.

Todo lo que pides en 1 y 2 se hace de forma simple con un DSP que tiene la potencia para esta tarea.

  1. Distinguir ruidos solo por sus FT (Fourier Transform)
    Ruido rosa
    image

  2. deseas cambiar la fase de la señal y como dije eso es posible solo con estos procesadores DSP.
    Ruido blanco es un señal aleatoria de igual densidad de energía.
    Acá te aporto como remover el ruido blanco en una señal, usando tecnicas DSP
    signal processing - how can the noise be removed from a recorded sound,using fft in MATLAB? - Stack Overflow

Estas tareas requieren siempre mucha velocidad de procesamiento y memoria.
Algunos arduinos son capaces de esto. El YUN y el DUE (ambos descontinuados), habrá que ver la línea nueva de Arduinos como el Potenta por ejemplo pero solo especulo. Se que puede trabajar con procesamiento de imágenes asi que tiene el poder para esta tarea que tu pretendes.