Spaces:
Runtime error
Runtime error
joonhyun.jeong
commited on
Commit
·
668bc57
1
Parent(s):
6bb2c3b
open proxydet
Browse files
app.py
CHANGED
@@ -1,9 +1,12 @@
|
|
1 |
import torch
|
2 |
import cv2
|
|
|
3 |
import gradio as gr
|
4 |
import numpy as np
|
5 |
from transformers import OwlViTProcessor, OwlViTForObjectDetection
|
6 |
|
|
|
|
|
7 |
|
8 |
# Use GPU if available
|
9 |
if torch.cuda.is_available():
|
@@ -48,29 +51,31 @@ def query_image(img, text_queries, score_threshold):
|
|
48 |
)
|
49 |
return img
|
50 |
|
|
|
|
|
51 |
|
52 |
-
description = """
|
53 |
-
Gradio demo for <a href="https://huggingface.co/docs/transformers/main/en/model_doc/owlvit">OWL-ViT</a>,
|
54 |
-
introduced in <a href="https://arxiv.org/abs/2205.06230">Simple Open-Vocabulary Object Detection
|
55 |
-
with Vision Transformers</a>.
|
56 |
-
\n\nYou can use OWL-ViT to query images with text descriptions of any object.
|
57 |
-
To use it, simply upload an image and enter comma separated text descriptions of objects you want to query the image for. You
|
58 |
-
can also use the score threshold slider to set a threshold to filter out low probability predictions.
|
59 |
-
\n\nOWL-ViT is trained on text templates,
|
60 |
-
hence you can get better predictions by querying the image with text templates used in training the original model: *"photo of a star-spangled banner"*,
|
61 |
-
*"image of a shoe"*. Refer to the <a href="https://arxiv.org/abs/2103.00020">CLIP</a> paper to see the full list of text templates used to augment the training data.
|
62 |
-
\n\n<a href="https://colab.research.google.com/github/huggingface/notebooks/blob/main/examples/zeroshot_object_detection_with_owlvit.ipynb">Colab demo</a>
|
63 |
-
"""
|
64 |
-
demo = gr.Interface(
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
)
|
76 |
-
demo.launch()
|
|
|
1 |
import torch
|
2 |
import cv2
|
3 |
+
import os
|
4 |
import gradio as gr
|
5 |
import numpy as np
|
6 |
from transformers import OwlViTProcessor, OwlViTForObjectDetection
|
7 |
|
8 |
+
def setup():
|
9 |
+
os.system("python3 -m pip install 'git+https://github.com/facebookresearch/detectron2.git'")
|
10 |
|
11 |
# Use GPU if available
|
12 |
if torch.cuda.is_available():
|
|
|
51 |
)
|
52 |
return img
|
53 |
|
54 |
+
if __name__ == "__main__":
|
55 |
+
setup()
|
56 |
|
57 |
+
description = """
|
58 |
+
Gradio demo for <a href="https://huggingface.co/docs/transformers/main/en/model_doc/owlvit">OWL-ViT</a>,
|
59 |
+
introduced in <a href="https://arxiv.org/abs/2205.06230">Simple Open-Vocabulary Object Detection
|
60 |
+
with Vision Transformers</a>.
|
61 |
+
\n\nYou can use OWL-ViT to query images with text descriptions of any object.
|
62 |
+
To use it, simply upload an image and enter comma separated text descriptions of objects you want to query the image for. You
|
63 |
+
can also use the score threshold slider to set a threshold to filter out low probability predictions.
|
64 |
+
\n\nOWL-ViT is trained on text templates,
|
65 |
+
hence you can get better predictions by querying the image with text templates used in training the original model: *"photo of a star-spangled banner"*,
|
66 |
+
*"image of a shoe"*. Refer to the <a href="https://arxiv.org/abs/2103.00020">CLIP</a> paper to see the full list of text templates used to augment the training data.
|
67 |
+
\n\n<a href="https://colab.research.google.com/github/huggingface/notebooks/blob/main/examples/zeroshot_object_detection_with_owlvit.ipynb">Colab demo</a>
|
68 |
+
"""
|
69 |
+
demo = gr.Interface(
|
70 |
+
query_image,
|
71 |
+
inputs=[gr.Image(), "text", gr.Slider(0, 1, value=0.1)],
|
72 |
+
outputs="image",
|
73 |
+
title="Zero-Shot Object Detection with OWL-ViT",
|
74 |
+
description=description,
|
75 |
+
examples=[
|
76 |
+
["assets/astronaut.png", "human face, rocket, star-spangled banner, nasa badge", 0.11],
|
77 |
+
["assets/coffee.png", "coffee mug, spoon, plate", 0.1],
|
78 |
+
["assets/butterflies.jpeg", "orange butterfly", 0.3],
|
79 |
+
],
|
80 |
+
)
|
81 |
+
demo.launch()
|