Spaces:
Runtime error
Runtime error
Commit
·
589a61e
0
Parent(s):
Duplicate from hlydecker/MegaDetector_v5
Browse filesCo-authored-by: Henry Lydecker <[email protected]>
- .gitattributes +28 -0
- README.md +14 -0
- app.py +36 -0
- data/BrushtailPossum.jpg +0 -0
- data/Macropod.jpg +0 -0
- data/README.md +3 -0
- data/cat.jpg +0 -0
- data/koala2.jpg +0 -0
- data/truck.png +3 -0
- model_weights/README.md +3 -0
- model_weights/md_v5a.0.0.pt +3 -0
- model_weights/md_v5b.0.0.pt +3 -0
- requirements.txt +11 -0
.gitattributes
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
*.7z filter=lfs diff=lfs merge=lfs -text
|
2 |
+
*.arrow filter=lfs diff=lfs merge=lfs -text
|
3 |
+
*.bin filter=lfs diff=lfs merge=lfs -text
|
4 |
+
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
5 |
+
*.ftz filter=lfs diff=lfs merge=lfs -text
|
6 |
+
*.gz filter=lfs diff=lfs merge=lfs -text
|
7 |
+
*.h5 filter=lfs diff=lfs merge=lfs -text
|
8 |
+
*.joblib filter=lfs diff=lfs merge=lfs -text
|
9 |
+
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
10 |
+
*.model filter=lfs diff=lfs merge=lfs -text
|
11 |
+
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
12 |
+
*.onnx filter=lfs diff=lfs merge=lfs -text
|
13 |
+
*.ot filter=lfs diff=lfs merge=lfs -text
|
14 |
+
*.parquet filter=lfs diff=lfs merge=lfs -text
|
15 |
+
*.pb filter=lfs diff=lfs merge=lfs -text
|
16 |
+
*.pt filter=lfs diff=lfs merge=lfs -text
|
17 |
+
*.pth filter=lfs diff=lfs merge=lfs -text
|
18 |
+
*.rar filter=lfs diff=lfs merge=lfs -text
|
19 |
+
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
20 |
+
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
21 |
+
*.tflite filter=lfs diff=lfs merge=lfs -text
|
22 |
+
*.tgz filter=lfs diff=lfs merge=lfs -text
|
23 |
+
*.wasm filter=lfs diff=lfs merge=lfs -text
|
24 |
+
*.xz filter=lfs diff=lfs merge=lfs -text
|
25 |
+
*.zip filter=lfs diff=lfs merge=lfs -text
|
26 |
+
*.zstandard filter=lfs diff=lfs merge=lfs -text
|
27 |
+
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
28 |
+
data/truck.png filter=lfs diff=lfs merge=lfs -text
|
README.md
ADDED
@@ -0,0 +1,14 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
title: MegaDetector V5
|
3 |
+
emoji: 📊
|
4 |
+
colorFrom: purple
|
5 |
+
colorTo: green
|
6 |
+
sdk: gradio
|
7 |
+
sdk_version: 3.0.19
|
8 |
+
app_file: app.py
|
9 |
+
pinned: false
|
10 |
+
license: mit
|
11 |
+
duplicated_from: hlydecker/MegaDetector_v5
|
12 |
+
---
|
13 |
+
|
14 |
+
Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
|
app.py
ADDED
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# MegaDetector v5 Demo
|
2 |
+
import gradio as gr
|
3 |
+
import torch
|
4 |
+
import torchvision
|
5 |
+
import numpy as np
|
6 |
+
from PIL import Image
|
7 |
+
|
8 |
+
# Load MegaDetector v5a model
|
9 |
+
# TODO: Allow user selectable model?
|
10 |
+
# models = ["model_weights/md_v5a.0.0.pt","model_weights/md_v5b.0.0.pt"]
|
11 |
+
model = torch.hub.load('ultralytics/yolov5:v6.2', 'custom', "model_weights/md_v5a.0.0.pt")
|
12 |
+
|
13 |
+
def yolo(im, size=640):
|
14 |
+
g = (size / max(im.size)) # gain
|
15 |
+
im = im.resize((int(x * g) for x in im.size), Image.ANTIALIAS) # resize
|
16 |
+
|
17 |
+
model = torch.hub.load('ultralytics/yolov5:v6.2', 'custom', "model_weights/md_v5a.0.0.pt")
|
18 |
+
|
19 |
+
results = model(im) # inference
|
20 |
+
results.render() # updates results.imgs with boxes and labels
|
21 |
+
return Image.fromarray(results.imgs[0])
|
22 |
+
|
23 |
+
#image = gr.inputs.Image(type="pil", label="Input Image")
|
24 |
+
#chosen_model = gr.inputs.Dropdown(choices = models, value = "model_weights/md_v5a.0.0.pt",type = "value", label="Model Weight")
|
25 |
+
#size = 640
|
26 |
+
|
27 |
+
#inputs = [image, chosen_model, size]
|
28 |
+
inputs = gr.inputs.Image(type="pil", label="Input Image")
|
29 |
+
outputs = gr.outputs.Image(type="pil", label="Output Image")
|
30 |
+
|
31 |
+
title = "MegaDetector v5"
|
32 |
+
description = "Detect and identify animals, people and vehicles in camera trap images using MegaDetector v5a"
|
33 |
+
article = "<p style='text-align: center'>This app makes predictions using a YOLOv5x6 model that was trained to detect animals, humans, and vehicles in camera trap images; find out more about the project on <a href='https://github.com/microsoft/CameraTraps'>GitHub</a>. This app was built by Henry Lydecker but really depends on code and models developed by <a href='http://ecologize.org/'>Ecologize</a> and <a href='http://aka.ms/aiforearth'>Microsoft AI for Earth</a>. Find out more about the YOLO model from the original creator, <a href='https://pjreddie.com/darknet/yolo/'>Joseph Redmon</a>. YOLOv5 is a family of compound-scaled object detection models trained on the COCO dataset and developed by Ultralytics, and includes simple functionality for Test Time Augmentation (TTA), model ensembling, hyperparameter evolution, and export to ONNX, CoreML and TFLite. <a href='https://github.com/ultralytics/yolov5'>Source code</a> | <a href='https://pytorch.org/hub/ultralytics_yolov5'>PyTorch Hub</a></p>"
|
34 |
+
|
35 |
+
examples = [['data/Macropod.jpg'], ['data/koala2.jpg'],['data/cat.jpg'],['data/BrushtailPossum.jpg']]
|
36 |
+
gr.Interface(yolo, inputs, outputs, title=title, description=description, article=article, examples=examples, theme="huggingface").launch(enable_queue=True)
|
data/BrushtailPossum.jpg
ADDED
![]() |
data/Macropod.jpg
ADDED
![]() |
data/README.md
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
# Data
|
2 |
+
|
3 |
+
Example images go here.
|
data/cat.jpg
ADDED
![]() |
data/koala2.jpg
ADDED
![]() |
data/truck.png
ADDED
![]() |
Git LFS Details
|
model_weights/README.md
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
# Model Weights folder
|
2 |
+
|
3 |
+
Model weights should go here, if they aren't available on some sort of hub somewhere.
|
model_weights/md_v5a.0.0.pt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:94e88fe97c8050f2e3d0cc4cb4f64729d639d74312dcbe2f74f8eecd3b01b276
|
3 |
+
size 280766885
|
model_weights/md_v5b.0.0.pt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:c7026a704c3e0566a199e38a09363200f0f39fb8f804190fd15c8a60ab3beabd
|
3 |
+
size 280766885
|
requirements.txt
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# pip install -r requirements.txt
|
2 |
+
|
3 |
+
# Requirements for are you wearing a mask
|
4 |
+
# A YOLOv5 powered face mask decector Gradio application
|
5 |
+
|
6 |
+
gradio
|
7 |
+
torch
|
8 |
+
torchvision
|
9 |
+
numpy
|
10 |
+
opencv-python
|
11 |
+
seaborn
|