File size: 1,235 Bytes
f20d83d
 
 
 
25e2b85
f20d83d
 
25e2b85
 
 
 
 
 
 
 
 
 
 
f20d83d
 
 
25e2b85
 
f20d83d
 
 
25e2b85
 
f20d83d
25e2b85
f20d83d
 
25e2b85
f20d83d
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
from fastai.vision.all import *
import gradio as gr

learn = load_learner('export.pkl')
learn2 = load_learner('export_cancer_type.pkl')

categories = ('Benign', 'Malignant')
categories2 = (
"Actinic Keratosis",
"Basal Cell Carcinoma",
"Dermatofibroma",
"Melanoma",
"Nevus",
"Pigmented Benign Keratosis",
"Seborrheic Keratosis",
"Squamous Cell Carcinoma",
"Vascular Lesion",
)

def classify_image(img):
    pred,idx,probs = learn.predict(img)
    pred2,idx2,probs2 = learn2.predict(img)
    return dict(zip(categories, map(float,probs))), dict(zip(categories2, map(float,probs2)))

image = gr.inputs.Image(shape=(192,192))
label = gr.outputs.Label()
label2 = gr.outputs.Label()
examples = ['Benign1.jpg','Benign2.jpg','Benign3.jpg', 'Malignant1.jpg', 'Malignant2.jpg', 'Malignant3.jpg', "melanoma.jpg", "actinic keratosis.jpg", "squamous cell carcinoma.jpg"]
title = 'Skin Cancer Predictor'
description = 'This app predicts 1) whether skin cancer is benign or malignant and 2) what type of skin cancer it is. For reference only.'
article = "Author: <a href=\"https://huggingface.co/archietram\">Archie Tram</a>. "

intf = gr.Interface(fn=classify_image, inputs=image, outputs=[label,label2], examples=examples)
intf.launch(inline=False)