Exécution d'une transformée de Fourier rapide (FFT) sur un fichier sonore

L'analyse des données prend de nombreuses formes. Parfois, vous avez besoin de chercher des tendances dans les données d'une manière que vous pourriez ne pas avoir initialement envisagé. Une façon courante d'effectuer une telle analyse consiste à utiliser une Transformée de Fourier Rapide (FFT) pour convertir le son à partir du domaine fréquentiel au domaine temporel. Faire cela vous permet de tracer le son d'une manière nouvelle.

Par exemple, pensez à un mécanicien qui prend un échantillon de bruit d'un moteur, puis appuie sur une machine pour analyser cet échantillon, à la recherche d'éventuels problèmes de moteur. Le diagnostic peut trouver quelques problèmes et l'inspection visuelle peut en trouver d'autres, mais parfois le bruit d'un moteur révèle questions que vous ne pouvez pas trouver de toute autre manière.




Voici le code que vous utilisez pour effectuer une FFT:

matplotlib.pyplot d'importation que l'importation de wavfile de pltfrom que fftimport d'importation de numpy de wavfrom que nprate, data = wav.read ('bells.wav') fft_out = fft (données)% matplotlib inlineplt.plot (données, np. abs (fft_out)) plt.show ()

Dans ce cas, vous commencez par la lecture dans le fichier audio et l'extraction du données à partir de cela. La taux informations ne sont pas important parce que vous ne devez pas savoir à quelle vitesse pour jouer les données, vous devez simplement savoir quelles valeurs le son contient. Les valeurs sonores sont constitués de fréquence (la tonalité du son) et l'amplitude (comment fort pour jouer).

La prochaine étape est d'effectuer la FFT en appelant fft () avec données. Cette analyse particulière est une simplification d'un processus beaucoup plus vaste. Le point est que la sortie affiche les fréquences plus forte détectés au fil du temps.

image0.jpg

» » » » Exécution d'une transformée de Fourier rapide (FFT) sur un fichier sonore