seayala commited on
Commit
160b238
verified
1 Parent(s): 2c9fbf7

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +35 -0
app.py ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import tensorflow as tf
3
+ import librosa
4
+ import numpy as np
5
+
6
+ # Diccionario de etiquetas
7
+ labels = ['down', 'go', 'left', 'no', 'off', 'on', 'right', 'stop', 'up', 'yes']
8
+
9
+ def classify_audio(audio_file):
10
+ # Carga el modelo
11
+ model = tf.keras.models.load_model('my_model.h5')
12
+
13
+ # Preprocesa el audio
14
+ audio, sr = librosa.load(audio_file, sr=8000) # Aseg煤rate de que la frecuencia de muestreo coincide con la del entrenamiento
15
+ mfccs = librosa.feature.mfcc(y=audio, sr=sr, n_mfcc=40) # Extrae las MFCCs
16
+ mfccs_processed = np.mean(mfccs.T,axis=0) # Calcula la media de las MFCCs
17
+ mfccs_processed = mfccs_processed.reshape(1, 40) # Redimensiona para la entrada del modelo
18
+
19
+ # Realiza la predicci贸n
20
+ prediction = model.predict(mfccs_processed)
21
+ predicted_label_index = np.argmax(prediction) # Obtiene el 铆ndice de la etiqueta predicha
22
+
23
+ # Devuelve la etiqueta predicha
24
+ predicted_label = labels[predicted_label_index]
25
+ return predicted_label
26
+
27
+ iface = gr.Interface(
28
+ fn=classify_audio,
29
+ inputs=gr.Audio(type="filepath"),
30
+ outputs="text",
31
+ title="Clasificaci贸n de audio simple",
32
+ description="Sube un archivo de audio para clasificarlo."
33
+ )
34
+
35
+ iface.launch()