drFarid commited on
Commit
617dc9e
·
verified ·
1 Parent(s): 23e915a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +2 -15
app.py CHANGED
@@ -1,10 +1,8 @@
1
  import gradio as gr
2
  import torch
3
- import torch.nn as nn
4
  from torchvision import transforms, models
5
  from PIL import Image
6
 
7
- # Define the model class
8
  class CustomEfficientNet(nn.Module):
9
  def __init__(self, num_classes, num_layers, neurons_per_layer):
10
  super(CustomEfficientNet, self).__init__()
@@ -29,7 +27,6 @@ class CustomEfficientNet(nn.Module):
29
  x = self.custom_classifier(x)
30
  return x
31
 
32
- # Function to create and load the model
33
  def create_model(num_classes, num_layers, neurons_per_layer):
34
  model = CustomEfficientNet(num_classes, num_layers, neurons_per_layer)
35
  return model
@@ -64,7 +61,6 @@ class_names = ['Coeur 1', 'Coeur 10', 'Coeur 2', 'Coeur 3', 'Coeur 4', 'Coeur 5'
64
  'Trefle Roi', 'Trefle Valet', 'carreau 1', 'carreau 10', 'carreau 2', 'carreau 3', 'carreau 4', 'carreau 5',
65
  'carreau 6', 'carreau 7', 'carreau 8', 'carreau 9', 'carreau Dame', 'carreau Roi', 'carreau Valet']
66
 
67
- # Define the prediction function
68
  def predict(image):
69
  image = transform(image).unsqueeze(0)
70
  with torch.no_grad():
@@ -72,21 +68,12 @@ def predict(image):
72
  _, predicted = torch.max(outputs, 1)
73
  return class_names[predicted[0]]
74
 
75
- # Example images
76
- examples = [
77
- ['trefledame.JPG'],
78
- ['coeurroi.jpg'],
79
- ['coeur3.jpg']
80
- ]
81
-
82
  # Create the Gradio interface
83
  iface = gr.Interface(
84
  fn=predict,
85
  inputs=gr.Image(type="pil"),
86
  outputs="label",
87
- description="Upload an image to classify",
88
- examples=examples
89
  )
90
 
91
- # Launch the interface
92
- iface.launch()
 
1
  import gradio as gr
2
  import torch
 
3
  from torchvision import transforms, models
4
  from PIL import Image
5
 
 
6
  class CustomEfficientNet(nn.Module):
7
  def __init__(self, num_classes, num_layers, neurons_per_layer):
8
  super(CustomEfficientNet, self).__init__()
 
27
  x = self.custom_classifier(x)
28
  return x
29
 
 
30
  def create_model(num_classes, num_layers, neurons_per_layer):
31
  model = CustomEfficientNet(num_classes, num_layers, neurons_per_layer)
32
  return model
 
61
  'Trefle Roi', 'Trefle Valet', 'carreau 1', 'carreau 10', 'carreau 2', 'carreau 3', 'carreau 4', 'carreau 5',
62
  'carreau 6', 'carreau 7', 'carreau 8', 'carreau 9', 'carreau Dame', 'carreau Roi', 'carreau Valet']
63
 
 
64
  def predict(image):
65
  image = transform(image).unsqueeze(0)
66
  with torch.no_grad():
 
68
  _, predicted = torch.max(outputs, 1)
69
  return class_names[predicted[0]]
70
 
 
 
 
 
 
 
 
71
  # Create the Gradio interface
72
  iface = gr.Interface(
73
  fn=predict,
74
  inputs=gr.Image(type="pil"),
75
  outputs="label",
76
+ description="Upload an image to classify"
 
77
  )
78
 
79
+ iface.launch()