File size: 3,183 Bytes
8505abe
 
 
d88e26b
8505abe
 
 
 
 
 
 
 
 
 
 
 
 
 
 
d88e26b
8505abe
75dfb26
8505abe
75dfb26
8505abe
75dfb26
8505abe
75dfb26
8505abe
75dfb26
8505abe
75dfb26
8505abe
75dfb26
1ea5b3e
528a948
8505abe
 
8f0c9ff
8505abe
7a7ddbe
8505abe
 
d78ce39
 
 
 
 
8505abe
 
 
 
 
 
 
 
 
 
 
 
 
1d71423
8505abe
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
import os
import gradio as gr
from PIL import Image
from app_predict import main

os.system('wget https://github.com/FanChiMao/Competition-2022-Pytorch-Orchid_Classification/releases/download/v0.0/beit_1.pth -P experiments/pretrained_models')
os.system('wget https://github.com/FanChiMao/Competition-2022-Pytorch-Orchid_Classification/releases/download/v0.0/convnext.pth -P experiments/pretrained_models')
os.system('wget https://github.com/FanChiMao/Competition-2022-Pytorch-Orchid_Classification/releases/download/v0.0/dmnfnet.pth -P experiments/pretrained_models')
os.system('wget https://github.com/FanChiMao/Competition-2022-Pytorch-Orchid_Classification/releases/download/v0.0/ecaresnet_50.pth -P experiments/pretrained_models')
os.system('wget https://github.com/FanChiMao/Competition-2022-Pytorch-Orchid_Classification/releases/download/v0.0/efficient.pth -P experiments/pretrained_models')
os.system('wget https://github.com/FanChiMao/Competition-2022-Pytorch-Orchid_Classification/releases/download/v0.0/regnet.pth -P experiments/pretrained_models')
os.system('wget https://github.com/FanChiMao/Competition-2022-Pytorch-Orchid_Classification/releases/download/v0.0/swin.pth -P experiments/pretrained_models')
os.system('wget https://github.com/FanChiMao/Competition-2022-Pytorch-Orchid_Classification/releases/download/v0.0/vit.pth -P experiments/pretrained_models')

def inference(img, model):
    os.system('mkdir test')
    img.save("test/1.png", "PNG")
    
    if model == 'Swin transformer':
        predict = main('swin')
    elif model == 'BEiT':
        predict = main('beit')
    elif model == 'NFNet':
        predict = main('dmnfnet')
    elif model == 'ECA-Resnet':
        predict = main('ecaresnet_50')
    elif model == 'EfficientNet':
        predict = main('efficient')
    elif model == 'Regnet':
        predict = main('regnet')
    elif model == 'ViT':
        predict = main('vit')
    elif model == 'ConvNext':
        predict = main('convnext') 
    print(predict )   
    return predict 


title = "[AICUP 2022] Orchid Image Classification (single image quick demo)"
description = ""
article = "<p style='text-align: center'><a href='https://github.com/FanChiMao/Competition-2022-Pytorch-Orchid_Classification' target='_blank'>Orchid image classification</a> | <a href='https://github.com/FanChiMao/Competition-2022-Pytorch-Orchid_Classification' target='_blank'>Github Repo</a></p> <center><img src='https://visitor-badge.glitch.me/badge?page_id=2022aicuphg' alt='visitor badge'></center>"

examples = [
['figures/1.jpg', 'ConvNext'], 
['figures/2.jpg', 'ConvNext'],
['figures/3.jpg', 'ConvNext'],
['figures/4.jpg', 'ConvNext'],
['figures/5.jpg', 'ConvNext'],
]
gr.Interface(
    inference,
    [gr.inputs.Image(type="pil", label="Input"), gr.inputs.Dropdown(choices=[
    'Swin transformer', 
    'BEiT',
    'NFNet',
    'ECA-Resnet',
    'EfficientNet',
    'Regnet',
    'ViT',
    'ConvNext'
    ], type="value", default='Swin transformer', label="model")],
    outputs="label",
    title=title,
    description=description,
    article=article,
    allow_flagging=False,
    allow_screenshot=False,
    examples=examples
).launch(debug=True)