Come separare il rumore di fondo dal mio audio usando Python
Puoi usare la libreria noise reduce di pypi per ridurre il rumore di fondo da un segnale audio.
Riduzione del rumore in python:
- L'algoritmo richiede due input:Una clip audio di rumore contenente il rumore prototipico della clip audioUna clip audio di segnale contenente il segnale e il rumore che si vuole rimuovere
Passi dell'algoritmo
- Si calcola una FFT sulla clip audio di rumore
- Si calcolano le statistiche sulla FFT del rumore (in frequenza)
- Si calcola una soglia in base alle statistiche del rumore. calcolata in base alle statistiche del rumore (e alla sensibilità desiderata dell'algoritmo)
- Si calcola una FFT sul segnale
- Si determina una maschera confrontando la FFT del segnale con la soglia
- La maschera viene smussata con un filtro su frequenza e tempo
- La maschera viene applicata alla FFT del segnale, and is inverted
Installation
pip3 install noisereduce
Usage
- import noisereduce as nr
- #load data
- rate, data = wavfile.read("mywav.wav")
- # select section of data that is noise
- noisy_part = data[10000:15000]
- # perform noise reduction
- reduced_noise = nr.reduce_noise(audio_clip=data,noise_clip=noisy_part, verbose=True)
Try it and let me know.
Keep coding!
Articoli simili
- Come possiamo sopprimere il rumore di fondo in un telefono durante una telefonata?
- Vale la pena di usare la macchina per il rumore bianco? E qual è la differenza tra la macchina e un audio di rumore bianco da YouTube?
- Perché il mio trasmettitore FM nella mia auto fa rumore negli altoparlanti mentre se metto la mia mano solo molto vicino ad esso il rumore scompare?
- Come separare l'Assistente Google del mio telefono da Google Home