DHEIVER commited on
Commit
a2419a7
1 Parent(s): 9698b9b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -3
app.py CHANGED
@@ -2,6 +2,7 @@ import tensorflow as tf
2
  from keras.utils import custom_object_scope
3
  import gradio as gr
4
  import numpy as np
 
5
 
6
  # Defina a camada personalizada FixedDropout
7
  class FixedDropout(tf.keras.layers.Dropout):
@@ -20,13 +21,27 @@ with custom_object_scope({'FixedDropout': FixedDropout}):
20
  # Crie uma lista de classes
21
  class_names = ["Normal", "Cataract"]
22
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
23
  # Defina a função de classificação
24
  def classify_image(inp):
25
- # Reshape a imagem de entrada para o formato esperado pelo modelo
26
- img = inp.reshape((-1, 192, 256, 3))
27
 
28
  # Faça uma previsão usando o modelo treinado
29
- prediction = loaded_model.predict(img).flatten()
30
 
31
  # Retorna a classe prevista
32
  return class_names[np.argmax(prediction)]
 
2
  from keras.utils import custom_object_scope
3
  import gradio as gr
4
  import numpy as np
5
+ from PIL import Image
6
 
7
  # Defina a camada personalizada FixedDropout
8
  class FixedDropout(tf.keras.layers.Dropout):
 
21
  # Crie uma lista de classes
22
  class_names = ["Normal", "Cataract"]
23
 
24
+ # Defina a função de pré-processamento
25
+ def preprocess_image(inp):
26
+ # Redimensione a imagem para o formato esperado pelo modelo (192x256)
27
+ img = Image.fromarray(inp)
28
+ img = img.resize((256, 192))
29
+
30
+ # Converta a imagem para um array numpy
31
+ img = np.array(img)
32
+
33
+ # Normalize a imagem (escala de 0 a 1)
34
+ img = img / 255.0
35
+
36
+ return img
37
+
38
  # Defina a função de classificação
39
  def classify_image(inp):
40
+ # Pré-processar a imagem
41
+ img = preprocess_image(inp)
42
 
43
  # Faça uma previsão usando o modelo treinado
44
+ prediction = loaded_model.predict(np.expand_dims(img, axis=0)).flatten()
45
 
46
  # Retorna a classe prevista
47
  return class_names[np.argmax(prediction)]