Update app.py
Browse files
app.py
CHANGED
@@ -1,25 +1,19 @@
|
|
1 |
-
from huggingface_hub import from_pretrained_fastai
|
2 |
import gradio as gr
|
3 |
-
from fastai.vision.all import *
|
4 |
from icevision.all import *
|
5 |
-
from icevision.models.checkpoint import *
|
6 |
import PIL
|
7 |
|
8 |
-
|
9 |
model = models.torchvision.faster_rcnn.model(backbone=models.torchvision.faster_rcnn.backbones.resnet50_fpn,
|
10 |
-
num_classes=
|
11 |
-
|
12 |
-
state_dict = torch.load(checkpoint_path, map_location=torch.device('cpu'))
|
13 |
model.load_state_dict(state_dict)
|
14 |
|
15 |
-
infer_tfms = tfms.A.Adapter([*tfms.A.resize_and_pad(
|
16 |
-
|
17 |
-
# Definimos una funci贸n que se encarga de llevar a cabo las predicciones
|
18 |
def predict(img):
|
19 |
-
img =
|
20 |
-
pred_dict
|
21 |
-
return pred_dict[
|
22 |
-
|
23 |
# Creamos la interfaz y la lanzamos.
|
24 |
-
gr.Interface(fn=predict, inputs=gr.inputs.Image(shape=(128, 128)), outputs=
|
25 |
-
examples=['00004.jpg','00083.jpg', '00119.jpg']).launch(share=False)
|
|
|
|
|
1 |
import gradio as gr
|
|
|
2 |
from icevision.all import *
|
|
|
3 |
import PIL
|
4 |
|
5 |
+
class_map = ClassMap(['kangaroo'])
|
6 |
model = models.torchvision.faster_rcnn.model(backbone=models.torchvision.faster_rcnn.backbones.resnet50_fpn,
|
7 |
+
num_classes=len(class_map))
|
8 |
+
state_dict = torch.load('fasterRCNNKangaroo.pth')
|
|
|
9 |
model.load_state_dict(state_dict)
|
10 |
|
11 |
+
infer_tfms = tfms.A.Adapter([*tfms.A.resize_and_pad(size),tfms.A.Normalize()])
|
12 |
+
size = 384
|
|
|
13 |
def predict(img):
|
14 |
+
img = PILImage.create(img)
|
15 |
+
pred_dict = models.torchvision.faster_rcnn.end2end_detect(img, infer_tfms, model.to("cpu"), class_map=class_map, detection_threshold=0.5)
|
16 |
+
return pred_dict['img']
|
17 |
+
|
18 |
# Creamos la interfaz y la lanzamos.
|
19 |
+
gr.Interface(fn=predict, inputs=gr.inputs.Image(shape=(128, 128)), outputs=gr.outputs.Image(),examples=['00004.jpg','00083.jpg', '00119.jpg']).launch(share=False)
|
|