AIQuest commited on
Commit
6ccb253
·
verified ·
1 Parent(s): f986583

Create an app.py

Browse files
Files changed (1) hide show
  1. app.py +54 -0
app.py ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from PIL import Image
2
+ from tensorflow.keras.preprocessing import image
3
+ import gradio as gr
4
+ import numpy as np
5
+ from tensorflow.keras import models
6
+
7
+ model = models.load_model("ButterFlyModel2.h5")
8
+
9
+ label_list = [
10
+ 'SOUTHERN DOGFACE', 'ADONIS', 'BROWN SIPROETA', 'MONARCH',
11
+ 'GREEN CELLED CATTLEHEART', 'CAIRNS BIRDWING', 'EASTERN DAPPLE WHITE',
12
+ 'RED POSTMAN', 'MANGROVE SKIPPER', 'BLACK HAIRSTREAK', 'CABBAGE WHITE',
13
+ 'RED ADMIRAL', 'PAINTED LADY', 'PAPER KITE', 'SOOTYWING', 'PINE WHITE',
14
+ 'PEACOCK', 'CHECQUERED SKIPPER', 'JULIA', 'COMMON WOOD-NYMPH', 'BLUE MORPHO',
15
+ 'CLOUDED SULPHUR', 'STRAITED QUEEN', 'ORANGE OAKLEAF', 'PURPLISH COPPER',
16
+ 'ATALA', 'IPHICLUS SISTER', 'DANAID EGGFLY', 'LARGE MARBLE',
17
+ 'PIPEVINE SWALLOW', 'BLUE SPOTTED CROW', 'RED CRACKER', 'QUESTION MARK',
18
+ 'CRIMSON PATCH', 'BANDED PEACOCK', 'SCARCE SWALLOW', 'COPPER TAIL',
19
+ 'GREAT JAY', 'INDRA SWALLOW', 'VICEROY', 'MALACHITE', 'APPOLLO',
20
+ 'TWO BARRED FLASHER', 'MOURNING CLOAK', 'TROPICAL LEAFWING', 'POPINJAY',
21
+ 'ORANGE TIP', 'GOLD BANDED', 'BECKERS WHITE', 'RED SPOTTED PURPLE',
22
+ 'MILBERTS TORTOISESHELL', 'SILVER SPOT SKIPPER', 'AMERICAN SNOOT', 'AN 88',
23
+ 'ULYSES', 'COMMON BANDED AWL', 'CRECENT', 'METALMARK', 'SLEEPY ORANGE',
24
+ 'PURPLE HAIRSTREAK', 'ELBOWED PIERROT', 'GREAT EGGFLY', 'ORCHARD SWALLOW',
25
+ 'ZEBRA LONG WING', 'WOOD SATYR', 'MESTRA', 'EASTERN PINE ELFIN',
26
+ 'EASTERN COMA', 'YELLOW SWALLOW TAIL', 'CLEOPATRA', 'GREY HAIRSTREAK',
27
+ 'BANDED ORANGE HELICONIAN', 'AFRICAN GIANT SWALLOWTAIL', 'CHESTNUTQ',
28
+ 'CLODIUS PARNASSIAN'
29
+ ]
30
+
31
+ sorted_labels = sorted(label_list)
32
+
33
+
34
+
35
+ def Classifying_Butterflies(image):
36
+ img = Image.fromarray(image)
37
+ img_array = img.resize((150,150))
38
+ img_array = np.expand_dims(img_array, axis=0)
39
+
40
+ prediction = model.predict(img_array)
41
+ max_index = np.argmax(prediction) # getting the index of the max value from the result array
42
+
43
+ return "It is "+sorted_labels[max_index]
44
+
45
+ interface = gr.Interface(
46
+ fn=Classifying_Butterflies,
47
+ inputs='image',
48
+ outputs='text',
49
+ title='Butterfly Classifier',
50
+ description='Upload an image of a butterfly and let the classifier identify it!'
51
+ )
52
+
53
+ interface.launch()
54
+