¿Cómo podemos suprimir el ruido de fondo en un teléfono durante una llamada telefónica?

Me pregunto qué hardware estás usando que pueda hacerte querer buscar una aplicación de este tipo. Me imagino que los últimos teléfonos iPhone y Android ya tienen una excelente supresión de ruido de fondo incorporada. Para el iPhone, esto se hace con el uso de otro micrófono ubicado en uno de los lados del teléfono (según la versión).

Cuando está en una llamada, su señal de conversación se compara con la señal de este segundo micrófono de “ruido de fondo” y se utiliza para cancelar el ruido de fondo de su señal de conversación.

Varias veces, cuando he estado en llamadas telefónicas, me disculpé por el ruido de fondo fuerte, solo para que el receptor me dijera que no escuchan nada.

Es una idea divertida para una aplicación como ejercicio, pero tengo que pensar que será muy difícil lograr la supresión del ruido de fondo tan bien como la función ya incorporada.

Existen algunos métodos de reducción de ruido de un solo extremo. De un solo extremo significa que no hay codificador: solo está tratando de eliminar el ruido de una señal que tiene.

La otra respuesta sugirió una puerta de ruido, esa es una forma. También conocido como expansor, es fácil de implementar en software y no gravaría demasiado los recursos de un teléfono inteligente. La operación consiste básicamente en silenciar el audio durante las partes silenciosas; no tendrá ningún efecto (idealmente) mientras escucha a la otra persona hablar.

El siguiente método es un filtro de muesca. Aquí, básicamente, identificamos partes del espectro que son ruido o principalmente ruido (por ejemplo, 60 ciclos de zumbido y sus armónicos) y los filtramos. Sería difícil para una aplicación distinguir entre un componente de frecuencia que es una buena señal y uno que es ruido. También sería ineficaz contra el ruido de banda ancha como el ruido blanco, que a menudo es la mayor parte del problema. Comienza a ser computacionalmente costoso, por lo que puede tener problemas para extraer suficiente energía de la CPU del teléfono.

El siguiente método, creo que a menudo lo usa el software de audio, es matar todas las bandas espectrales cuya energía en este momento está por debajo de un umbral dado. Básicamente es una puerta de ruido en cada banda de frecuencia. Hay muchas variaciones en este esquema. Creo que es típico recolectar un bloque de muestras, calcular la FFT, poner a cero o reducir las frecuencias cuya amplitud está por debajo de un umbral, y luego invertir. Los problemas aquí incluyen determinar el umbral (y si es diferente por banda), no tener suficientes ciclos para calcular FFT / IFFT y otro procesamiento de señal, y el retraso introducido al tener que procesar un bloque a la vez.

No estoy lo suficientemente familiarizado con los entornos de desarrollo para Android y iPhone para saber si hay un gancho que le permite interceptar la señal del teléfono para procesarla antes de que el usuario la escuche. Si no, puede que tenga que desarrollar una aplicación de teléfono completa solo para agregar su función de reducción de ruido.

Para eso, debe tener un diseño inteligente sobre una codificación inteligente, es decir, debe tener un micrófono secundario junto con el principal para facilitar las cosas (o de lo contrario necesita desarrollar una cantidad masiva de código para lograr una calidad de sonido más clara , desde el punto de vista de la ingeniería de sonido)

Para obtener más ayuda, puede consultar este artículo mío: ¡Dos mejor que uno, al menos en el caso de los micrófonos! 😀

Que tengas un día increíble y todo lo mejor para tu futuro 😀

Si habla de ruido de línea, que generalmente es una forma de ruido aleatorio, podría aplicar la auto-correlación y obtener una reducción de 6 a 9 dB. Como se trata de una aplicación, no tendrás control físico del teléfono. Todo lo que puede hacer es determinar cuál es el ruido y aplicar técnicas de autocorrelación. También puedes aplicar técnicas ANR

Depende del teléfono y el software. En mi Samsung Galaxy S5, ejecutando Android 6.0.1 y usando la aplicación de teléfono que vino preinstalada desde Metro PCS (no estoy seguro de quién es el desarrollador), abre la aplicación de teléfono, ingresa a la configuración, selecciona “Llamar”, desplázate hacia abajo hasta que vea “Reducción de ruido”, marque la casilla para activarlo. ¡Eso es! Para cualquier otro teléfono / software / aplicaciones de marcado telefónico, usted está solo.

Idealmente, la solución será una combinación de hardware y software, pero si el software es su única opción, entonces buscaría compuertas de ruido e intentaría optimizar su rendimiento.

More Interesting

¿Qué se necesita para aprender a construir una aplicación de reconocimiento de imágenes?

¿Qué piensa la gente del concurso Quora ML CodeSprint 2013?

En un modelo gráfico dirigido, el aprendizaje es fácil pero la inferencia es difícil. ¿Es esto cierto?

¿Qué algunos documentos sobre desafíos en predicción financiera con técnicas de aprendizaje automático?

¿Cómo se puede determinar si un elemento no es apto para ninguna clasificación de acuerdo con el algoritmo Naive Bayes?

¿Cuáles son algunas aplicaciones de la vida real del aprendizaje automático además de las aplicaciones relacionadas con la web?

¿Cómo se hacen análisis de datos, estadísticas y aprendizaje automático en big data?

¿Cuántos datos necesitamos para pensar siquiera en aplicar el aprendizaje profundo?

¿Cuál es un buen sitio de contestación de preguntas sobre IA y aprendizaje automático aparte de Quora? Los relacionados con Stack Exchange son bastante malos. Las personas están más centradas en los puntos y formatos en lugar de dar una respuesta adecuada.

¿Cómo se puede aplicar el aprendizaje profundo a los sistemas de recomendación en el mercado de valores?

¿Cuáles son las mejores medidas al validar de forma cruzada un modelo para determinar qué tan bueno es el modelo y cómo funcionará en situaciones reales?

Cómo usar el codificador automático de Geoffrey Hinton para datos MNIST para clasificar dígitos

¿Qué es una transformación de características en el aprendizaje automático?

¿Con qué empiezo, minería de datos, inteligencia artificial o aprendizaje automático?

¿Por qué necesitamos Python y Java para el aprendizaje automático mientras tenemos R?