Spaces:
Runtime error
Runtime error
chidojawbreaker
commited on
Commit
•
d4f9e6d
1
Parent(s):
466b688
Upload app.py
Browse files
app.py
ADDED
@@ -0,0 +1,55 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import gradio as gr
|
2 |
+
import numpy as np
|
3 |
+
import joblib
|
4 |
+
import librosa
|
5 |
+
from sklearn.preprocessing import StandardScaler
|
6 |
+
|
7 |
+
model = joblib.load('UTI.pkl')
|
8 |
+
|
9 |
+
def predictor(audio_filename):
|
10 |
+
y, sr = librosa.load(audio_filename, mono=True, duration=5)
|
11 |
+
|
12 |
+
chroma_stft = np.mean(librosa.feature.chroma_stft(y=y, sr=sr))
|
13 |
+
rmse = np.mean(librosa.feature.rms(y=y))
|
14 |
+
spec_cent = np.mean(librosa.feature.spectral_centroid(y=y, sr=sr))
|
15 |
+
spec_bw = np.mean(librosa.feature.spectral_bandwidth(y=y, sr=sr))
|
16 |
+
rolloff = np.mean(librosa.feature.spectral_rolloff(y=y, sr=sr))
|
17 |
+
zcr = np.mean(librosa.feature.zero_crossing_rate(y))
|
18 |
+
mfcc = librosa.feature.mfcc(y=y, sr=sr)
|
19 |
+
v = []
|
20 |
+
for e in mfcc:
|
21 |
+
v.append(np.mean(e))
|
22 |
+
mfcc1 = v[0]
|
23 |
+
mfcc2 = v[1]
|
24 |
+
mfcc3 = v[2]
|
25 |
+
mfcc4 = v[3]
|
26 |
+
mfcc5 = v[4]
|
27 |
+
mfcc6 = v[5]
|
28 |
+
mfcc7 = v[6]
|
29 |
+
mfcc8 = v[7]
|
30 |
+
mfcc9 = v[8]
|
31 |
+
mfcc10 = v[9]
|
32 |
+
mfcc11 = v[10]
|
33 |
+
mfcc12 = v[11]
|
34 |
+
mfcc13 = v[12]
|
35 |
+
mfcc14 = v[13]
|
36 |
+
mfcc15 = v[14]
|
37 |
+
mfcc16 = v[15]
|
38 |
+
mfcc17 = v[16]
|
39 |
+
mfcc18 = v[17]
|
40 |
+
mfcc19 = v[18]
|
41 |
+
mfcc20 = v[19]
|
42 |
+
|
43 |
+
features = np.array([[chroma_stft,rmse,spec_cent,spec_bw,rolloff,zcr,mfcc1,mfcc2,mfcc3,mfcc4,mfcc5,mfcc6,mfcc7,mfcc8,mfcc9,mfcc10,mfcc11,mfcc12,mfcc13,mfcc14,mfcc15,mfcc16,mfcc17,mfcc18,mfcc19,mfcc20]])
|
44 |
+
|
45 |
+
prediction = model.predict(StandardScaler().fit_transform(features))
|
46 |
+
|
47 |
+
if prediction[0] == 0:
|
48 |
+
result = 'Normal'
|
49 |
+
else:
|
50 |
+
result = 'Infected'
|
51 |
+
return result
|
52 |
+
|
53 |
+
outputs = gr.outputs.Textbox()
|
54 |
+
app = gr.Interface(fn=predictor, inputs='text', outputs=outputs,description="UTI Prediction Model")
|
55 |
+
app.launch()
|