Analyse vocale par python

Analyse vocale

Écrivez quelques programmes d'analyse de la parole créés dans l'expérience.

Données audio expérimentales

Les données audio de 30 taps ont été utilisées pendant 1 minute. Fréquence d'échantillonnage: 48 kHz Taille de bits: 24 bits image.png

FFT C'est le même programme que j'ai posté l'autre jour.

FFT.py


print("===== Wave2FFT_lim =====")
F = np.fft.fft(self.data)
Amp = np.abs(F/(self.frames/2))
Amp_tmp = np.abs(F/(self.frames/2))
Amp_new = Amp / Amp_tmp.max()
freq = np.fft.fftfreq(self.frames, 1/self.Fs)
fig = plt.figure()
plt.plot(freq[1:int(self.frames/2)],Amp_new[1:int(self.frames/2)])
plt.xlabel("Freq [Hz]")
plt.ylabel("Amp")
plt.title("FFT")
plt.ylim(0, 1)
fig.savefig("{}/FFT(Normalization).png ".format(self.Folder))
plt.show()
plt.close()

Résultat d'exécution Il se tient dans un cycle spécifique avec une bonne sensation. De plus, cette fois, il est normalisé pour voir s'il y a une réaction. image.png

spectrogramme

spectrogram.py


print("===== Wave2Spec =====")
fig = plt.figure()
pxx, freq, bins, t = plt.specgram(self.data[:,0], Fs = self.Fs)
plt.title("spec")
plt.xlabel("time [sec]")
plt.ylabel("Freq [Hz]")
fig.savefig("{}/Spec.png ".format(self.Folder))
plt.show()
plt.close()

Résultat d'exécution Des rayures verticales sont légèrement visibles entre 0 et 25 000 Hz, mais c'est important car la bande de basses fréquences est un peu plus sombre. image.png

STFT

STFT.py


print("===== Wave2STFT =====")
pylab.figure()
f, t, stft = sp.stft(self.data[:,0],fs=self.Fs)
plt.pcolormesh(t, f, np.abs(stft),cmap='hot')
pylab.title("STFT")
plt.xlabel("time [sec]")
plt.ylabel("Freq [Hz]")
pylab.savefig("{}/STFT.png ".format(self.Folder))
pylab.show()

Résultat d'exécution J'ai essayé de le faire avec intérêt, mais je pense que la partie importante est extraite du spectrogramme précédent. De plus, je ne peux nier le sentiment de manque d'étude, alors j'aimerais savoir ce que montre ce résultat. image.png

Sommaire

J'ai fait quelques analyses vocales cette fois, et toutes étaient visuellement faciles à comprendre et pouvaient être utilisées dans la recherche.

Recommended Posts

Analyse vocale par python
Analyse vocale par python
Analyse de données avec python 2
Analyse de données avec Python
[Python] Analyse morphologique avec MeCab
[Analyse de co-occurrence] Analyse de co-occurrence facile avec Python! [Python]
Analyse des émotions par Python (word2vec)
Analyse de squelette planaire avec Python
Analyse morphologique japonaise avec Python
Analyse des secousses musculaires avec Python
Analyse de la structure du squelette en trois dimensions avec Python
Analyse d'impédance (EIS) avec python [impedance.py]
Text mining avec Python ① Analyse morphologique
Analyse de données à partir de python (visualisation de données 1)
Analyse de régression logistique Self-made avec python
Analyse de données à partir de python (visualisation de données 2)
Analysons la voix avec Python # 1 FFT
FizzBuzz en Python3
Grattage avec Python
Statistiques avec python
Grattage avec Python
Python avec Go
Analyse de données python
Twilio avec Python
Intégrer avec Python
Jouez avec 2016-Python
AES256 avec python
Testé avec Python
python commence par ()
avec syntaxe (Python)
Bingo avec python
Zundokokiyoshi avec python
Excel avec Python
Micro-ordinateur avec Python
Cast avec python
Analyse bidimensionnelle du flux de perméation saturée-insaturée avec Python
Apprentissage automatique avec python (2) Analyse de régression simple
Programme d'analyse des contraintes FEM 2D par Python
[Analyse vocale] Trouvez une similitude croisée avec Librosa
Faisons la voix lentement avec Python
Analyse des tweets avec Python, Mecab et CaboCha
Analyse de données à partir de python (pré-traitement des données-apprentissage automatique)
Analyse de conduction thermique bidimensionnelle non stationnaire avec Python
Python: analyse morphologique simplifiée avec des expressions régulières
Communication série avec Python
Zip, décompressez avec python
Django 1.11 a démarré avec Python3.6
Jugement des nombres premiers avec Python
Python avec eclipse + PyDev.
Communication de socket avec Python
Grattage en Python (préparation)
Apprendre Python avec ChemTHEATER 03
Recherche séquentielle avec Python
Exécutez Python avec VBA
Manipuler yaml avec python
Résolvez AtCoder 167 avec python
Communication série avec python
[Python] Utiliser JSON avec Python
Analyse du panier avec Spark (1)