File size: 1,086 Bytes
6784e11
9d9db66
6784e11
 
9d9db66
 
6784e11
3602b81
 
6784e11
9d9db66
 
 
 
 
 
6784e11
 
9d9db66
 
6784e11
9d9db66
 
6784e11
9d9db66
6784e11
 
 
3602b81
bba67ef
6784e11
 
 
 
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
import gradio as gr
from transformers import AutoImageProcessor, AutoModelForObjectDetection
import torch

image_processor = AutoImageProcessor.from_pretrained('hustvl/yolos-small')
model = AutoModelForObjectDetection.from_pretrained('hustvl/yolos-small')

def detect(image): 
    inputs = feature_extractor(images=image, return_tensors="pt")
    outputs = model(**inputs)

    # convert outputs to COCO API
    target_sizes = torch.tensor([image.size[::-1]])
    results = image_processor.post_process_object_detection(outputs,
                                                            threshold=0.9,
                                                            target_sizes=target_sizes)[0]
    
    # model predicts bounding boxes and corresponding COCO classes
    #logits = outputs.logits
    #bboxes = outputs.pred_boxes

    # label and the count
    counts = {}

    return results

demo = gr.Interface(
    fn=detect,
    inputs=[gr.inputs.Image(label="Input image")],
    outputs=["text"], #, gr.Label(num_top_classes=10)],
    title="Object Counts in Image"
)

demo.launch()