Spaces:
Sleeping
Sleeping
Moritz Langer
commited on
Commit
•
93df725
1
Parent(s):
2fd875f
git push
Browse files
app.py
CHANGED
@@ -1,9 +1,246 @@
|
|
|
|
1 |
import gradio as gr
|
|
|
|
|
|
|
2 |
|
3 |
-
def greet(name):
|
4 |
-
return "Hello " + name + "!!"
|
5 |
|
6 |
-
|
7 |
-
iface.launch()
|
8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from fastai.vision.widgets import *
|
2 |
import gradio as gr
|
3 |
+
import numpy as np
|
4 |
+
from operator import itemgetter
|
5 |
+
from fastai.vision.all import *
|
6 |
|
|
|
|
|
7 |
|
8 |
+
learn = load_learner("./plants_10_epochs.pkl")
|
|
|
9 |
|
10 |
+
categories = ('Salvia officinalis',
|
11 |
+
'Allium sativum',
|
12 |
+
'Coriandrum sativum',
|
13 |
+
'Myrica gale',
|
14 |
+
'Curcuma longa',
|
15 |
+
'Xylopia aethiopica',
|
16 |
+
'Thymus vulgaris',
|
17 |
+
'Tamarindus indica',
|
18 |
+
'Artemisia pallens',
|
19 |
+
'Lavandula latifolia',
|
20 |
+
'Porophyllum ruderale',
|
21 |
+
'Achillea millefolium',
|
22 |
+
'Tagetes minuta',
|
23 |
+
'Citrus aurantifolia',
|
24 |
+
'Mentha longifolia',
|
25 |
+
'Dictamnus albus',
|
26 |
+
'Cuminum cyminum',
|
27 |
+
'Rosa centifolia',
|
28 |
+
'Pelargonium graveolens',
|
29 |
+
'Rumex acetosa',
|
30 |
+
'Rosa spinossima',
|
31 |
+
'Lavandula stoechas',
|
32 |
+
'Crocus sativus',
|
33 |
+
'Rosmarinus officinalis',
|
34 |
+
'Agastache foeniculum',
|
35 |
+
'Nigella sativa',
|
36 |
+
'Rosa rugosa',
|
37 |
+
'Trigonella caerulea',
|
38 |
+
'Herbs and Spices.',
|
39 |
+
'Capparis spinosa',
|
40 |
+
'Piper longum',
|
41 |
+
'Lippia graveolens',
|
42 |
+
'Helichrysum italicum',
|
43 |
+
'Illicium verum',
|
44 |
+
'Mentha aquatica',
|
45 |
+
'Carum carvi',
|
46 |
+
'Angelica atropurpurea',
|
47 |
+
'Schmeil-Fitschen, Flora von Deutschland',
|
48 |
+
'Agastache mexicana',
|
49 |
+
'Kräuter und Gewürze.',
|
50 |
+
'Aloysia citrodora',
|
51 |
+
'Amomum subulatum',
|
52 |
+
'Rungia klossii',
|
53 |
+
'Dysphania ambrosioides',
|
54 |
+
'Rosa damascena',
|
55 |
+
'Filipendula ulmaria',
|
56 |
+
'Teucrium scorodonia',
|
57 |
+
'Rosa multiflora',
|
58 |
+
'Pimpinella anisum',
|
59 |
+
'Piper cubeba',
|
60 |
+
'Myristica fragrans',
|
61 |
+
'Origanum majorana',
|
62 |
+
'Rosa eglanteria',
|
63 |
+
'Acorus gramineus',
|
64 |
+
'Thymus serpyllum',
|
65 |
+
'Solanum lycopersicum',
|
66 |
+
'Kaempferia galanga',
|
67 |
+
'Monarda citriodora',
|
68 |
+
'Sesamum indicum',
|
69 |
+
'Betonica officinalis',
|
70 |
+
'Mentha sativa',
|
71 |
+
'Artemisia vulgaris',
|
72 |
+
'Melissa officinalis',
|
73 |
+
'Cinnamomum cassia',
|
74 |
+
'Origanum vulgare',
|
75 |
+
'Cryptotaenia japonica',
|
76 |
+
'Glechoma hederacea',
|
77 |
+
'Stachys affinis',
|
78 |
+
'Tasmannia lanceolata',
|
79 |
+
'Hyptis suaveolens',
|
80 |
+
'Nigella damascena',
|
81 |
+
'Tsuga canadensis',
|
82 |
+
'Teucrium chamaedrys',
|
83 |
+
'Solanum melongena',
|
84 |
+
'Cymbopogon citratus',
|
85 |
+
'Vanilla tahitensis',
|
86 |
+
'Satureja montana',
|
87 |
+
'Cananga odorata',
|
88 |
+
'Allium cepa',
|
89 |
+
'Eruca sativa',
|
90 |
+
'Solidago odora',
|
91 |
+
'Nasturtium officinale',
|
92 |
+
'Anthriscus cerefolium',
|
93 |
+
'Cymbopogon flexuosus',
|
94 |
+
'Vanilla planifolia',
|
95 |
+
'Matricaria chamomilla',
|
96 |
+
'Apium graveolens',
|
97 |
+
'Taraxacum officinale',
|
98 |
+
'Chrysanthemum vulgare',
|
99 |
+
'Salvia sclarea',
|
100 |
+
'Oxalis acetosella',
|
101 |
+
'Allium scorodoprasum',
|
102 |
+
'Elettaria cardamomum',
|
103 |
+
'Dianthus caryophyllus',
|
104 |
+
'Allium porrum',
|
105 |
+
'Allium schoenoprasum',
|
106 |
+
'Syzygium aromaticum',
|
107 |
+
'Lepidium latifolium',
|
108 |
+
'Curcuma amada',
|
109 |
+
'Plectranthus amboinicus',
|
110 |
+
'Monarda fistulosa',
|
111 |
+
'Salvia elegans',
|
112 |
+
'Hedeoma pulegioides',
|
113 |
+
'Levisticum officinale',
|
114 |
+
'Monodora myristica',
|
115 |
+
'Thymbra capitata',
|
116 |
+
'Smilax regelii',
|
117 |
+
'Rhus coriaria',
|
118 |
+
'Laserpitium siler',
|
119 |
+
'Trigonella foenum-graecum',
|
120 |
+
'Calendula officinalis',
|
121 |
+
'Zanthoxylum acanthopodium',
|
122 |
+
'Syzygium polyanthum',
|
123 |
+
'Filipendula vulgaris',
|
124 |
+
'Capsicum baccatum',
|
125 |
+
'Picea glauca',
|
126 |
+
'Eryngium foetidum',
|
127 |
+
'Piper nigrum',
|
128 |
+
'Bergera koenigii',
|
129 |
+
'Gaultheria procumbens',
|
130 |
+
'Myrrhis odorata',
|
131 |
+
'Foeniculum vulgare',
|
132 |
+
'Citrus hystrix',
|
133 |
+
'Mentha rotundifolia',
|
134 |
+
'Pastinaca sativa',
|
135 |
+
'Capsicum frutescens',
|
136 |
+
'Vetiveria zizanioides',
|
137 |
+
'Mentha pulegium',
|
138 |
+
'Alpinia galanga',
|
139 |
+
'Allium fistulosum',
|
140 |
+
'Sinapis alba',
|
141 |
+
'Salvia pratensis',
|
142 |
+
'Limnophila aromatica',
|
143 |
+
'Myrtus communis',
|
144 |
+
'Rosa canina',
|
145 |
+
'Cunila origanoides',
|
146 |
+
'Zingiber officinale',
|
147 |
+
'Mentha suaveolens',
|
148 |
+
'Boronia megastigma',
|
149 |
+
'Portulaca sativa',
|
150 |
+
'Perilla frutescens',
|
151 |
+
'Nepeta cataria',
|
152 |
+
'Smallanthus sonchifolia',
|
153 |
+
'Elsholtzia ciliata',
|
154 |
+
'Pimpinella saxifraga',
|
155 |
+
'Cochlearia officinalis',
|
156 |
+
'Allium ursinum',
|
157 |
+
'Symphytum officinale',
|
158 |
+
'Capsicum annuum var. acuminatum',
|
159 |
+
'Mentha arvensis',
|
160 |
+
'Borago officinalis',
|
161 |
+
'Sanguisorba officinalis',
|
162 |
+
'Origanum dictamnus',
|
163 |
+
'Agastache rugosa',
|
164 |
+
'Piper auritum',
|
165 |
+
'Armoracia lapathifolia',
|
166 |
+
'Aframomum melegueta',
|
167 |
+
'Meum athamanticum',
|
168 |
+
'Humulus lupulus',
|
169 |
+
'Thymus mastichina',
|
170 |
+
'Monarda didyma',
|
171 |
+
'Picea mariana',
|
172 |
+
'Satureja hortensis',
|
173 |
+
'Alliaria petiolata',
|
174 |
+
'Chrysanthemum balsamita',
|
175 |
+
'Hyssopus officinalis',
|
176 |
+
'Ocimum viride',
|
177 |
+
'Anethum graveolens',
|
178 |
+
'Valeriana officinalis',
|
179 |
+
'Anthemis nobilis',
|
180 |
+
'Artemisia dracunculus',
|
181 |
+
'Origanum syriacum',
|
182 |
+
'Smilax aristolochiifolia',
|
183 |
+
'Ferula asafoetida',
|
184 |
+
'Marrubium vulgare',
|
185 |
+
'Bixa orellana',
|
186 |
+
'Eutrema japonica',
|
187 |
+
'Cinnamomum verum',
|
188 |
+
'Pimpinella major',
|
189 |
+
'Achillea decolorans',
|
190 |
+
'Schinus molle',
|
191 |
+
'Hierochloe odorata',
|
192 |
+
'Viola odorata',
|
193 |
+
'Aniba rosaeodora',
|
194 |
+
'Zanthoxylum piperitum',
|
195 |
+
'Capsicum chinense',
|
196 |
+
'Galium verum',
|
197 |
+
'Allium tuberosum',
|
198 |
+
'Schinus terebinthifolius',
|
199 |
+
'Rosa gallica',
|
200 |
+
'Laurus nobilis',
|
201 |
+
'Acorus calamus',
|
202 |
+
'Rumex scutatus',
|
203 |
+
'Capsicum annuum',
|
204 |
+
'Capsicum pubescens',
|
205 |
+
'Mentha spicata',
|
206 |
+
'Mentha nemorosa',
|
207 |
+
'Lepidium sativum',
|
208 |
+
'Oxalis violacea',
|
209 |
+
'Brassica nigra',
|
210 |
+
'Juniperus communis',
|
211 |
+
'Parkia biglobosa',
|
212 |
+
'Artemisia abrotanum',
|
213 |
+
'Dipteryx odorata',
|
214 |
+
'Sassafras albidum',
|
215 |
+
'Tropaeolum majus',
|
216 |
+
'Lavandula angustifolia',
|
217 |
+
'Acinos alpinus',
|
218 |
+
'Artemisia absinthium',
|
219 |
+
'Angelica archangelica',
|
220 |
+
'Ruta graveolens',
|
221 |
+
'Bunium persicum',
|
222 |
+
'Vanilla pompona',
|
223 |
+
'Erigeron canadensis',
|
224 |
+
'Curcuma zedoaria',
|
225 |
+
'Pimenta dioica',
|
226 |
+
'Mentha citrata',
|
227 |
+
'Sanguisorba minor',
|
228 |
+
'Rosa moschata',
|
229 |
+
'Galium odoratum',
|
230 |
+
'Ocimum basilicum',
|
231 |
+
'Cannabis sativa',
|
232 |
+
'Trachyspermum ammi',
|
233 |
+
'Persicaria hydropiper')
|
234 |
|
235 |
+
def classify_image(img):
|
236 |
+
pred, idx, probs = learn.predict(img)
|
237 |
+
dict_all = dict(zip(categories, map(float,probs)))
|
238 |
+
n = 5
|
239 |
+
dict_n = dict(sorted(dict_all.items(), key=itemgetter(1), reverse=True)[:n])
|
240 |
+
return dict_n
|
241 |
+
|
242 |
+
image = gr.inputs.Image(shape=(192,192))
|
243 |
+
label=gr.outputs.Label()
|
244 |
+
|
245 |
+
intf=gr.Interface(fn=classify_image, inputs=image, outputs=label)
|
246 |
+
intf.launch(inline=False)
|