masto commited on
Commit
757e4e6
1 Parent(s): 1fd8af8

garden birds common names in app

Browse files
Files changed (2) hide show
  1. app.py +5 -3
  2. gardenbirds_sorted.json +1 -0
app.py CHANGED
@@ -7,7 +7,6 @@ from torch import nn
7
  from torchvision import models
8
  from PIL import Image
9
  from torch.nn import functional as F
10
- import gradio as gr
11
 
12
  # load idx_to_class.json into dictionary
13
  with open('class_to_idx.json', 'r') as f:
@@ -15,6 +14,9 @@ with open('class_to_idx.json', 'r') as f:
15
 
16
  idx_to_class = {v: k for k, v in class_to_idx.items()}
17
 
 
 
 
18
  device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
19
 
20
  # model
@@ -39,13 +41,13 @@ def predict(inp):
39
  with torch.no_grad():
40
  prediction = torch.nn.functional.softmax(model(inp)[0], dim=0)
41
  #print(prediction)
42
- confidences = {idx_to_class[i]: float(prediction[i]) for i in range(26)}
43
  return confidences
44
 
45
  interface = gr.Interface(fn=predict,
46
  inputs=gr.Image(type="pil"),
47
  outputs=gr.Label(num_top_classes=3),
48
  title="What garden bird is this?",
49
- examples=["parus_major.jpg"])
50
 
51
  interface.launch()
 
7
  from torchvision import models
8
  from PIL import Image
9
  from torch.nn import functional as F
 
10
 
11
  # load idx_to_class.json into dictionary
12
  with open('class_to_idx.json', 'r') as f:
 
14
 
15
  idx_to_class = {v: k for k, v in class_to_idx.items()}
16
 
17
+ with open('gardenbirds_sorted.json', 'r') as f:
18
+ common_to_latin = json.load(f)
19
+
20
  device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
21
 
22
  # model
 
41
  with torch.no_grad():
42
  prediction = torch.nn.functional.softmax(model(inp)[0], dim=0)
43
  #print(prediction)
44
+ confidences = {list(gardenbirds_sorted.keys())[i]: float(prediction[i]) for i in range(26)}
45
  return confidences
46
 
47
  interface = gr.Interface(fn=predict,
48
  inputs=gr.Image(type="pil"),
49
  outputs=gr.Label(num_top_classes=3),
50
  title="What garden bird is this?",
51
+ examples=["gardenbirds/Parus major/345c506a-6ed5-4f9c-a7d3-4d0cb4af88fc.jpg"])
52
 
53
  interface.launch()
gardenbirds_sorted.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"long-tailed tit": "Aegithalos caudatus", "common kingfisher": "Alcedo atthis", "goldfinch": "Carduelis carduelis", "greenfinch": "Carduelis chloris", "wood pigeon": "Columba palumbus", "carrion crow": "Corvus corone", "blue tit": "Cyanistes caeruleus", "great spotted woodpecker": "Dendrocopos major", "robin": "Erithacus rubecula", "chaffinch": "Fringilla coelebs", "european jay": "Garrulus glandarius", "great tit": "Parus major", "house sparrow": "Passer domesticus", "coal tit": "Periparus ater", "magpie": "Pica pica", "green woodpecker": "Picus viridis", "dunnock": "Prunella modularis", "bullfinch": "Pyrrhula pyrrhula", "goldcrest": "Regulus regulus", "nuthatch": "Sitta europaea", "collared dove": "Streptopelia decaocto", "starling": "Sturnus vulgaris", "blackcap": "Sylvia atricapilla", "wren": "Troglodytes troglodytes", "redwing": "Turdus iliacus", "blackbird": "Turdus merula"}