|
from transformers import AutoFeatureExtractor, ResNetForImageClassification |
|
import torch |
|
|
|
|
|
|
|
|
|
|
|
feature_extractor = AutoFeatureExtractor.from_pretrained("microsoft/resnet-50") |
|
model = ResNetForImageClassification.from_pretrained("microsoft/resnet-50") |
|
|
|
import gradio as gr |
|
def segment(image): |
|
inputs = feature_extractor(image, return_tensors="pt") |
|
|
|
with torch.no_grad(): |
|
logits = model(**inputs).logits |
|
probs = torch.nn.Softmax(dim=1)(logits) |
|
labels = [(prob, model.config.id2label[idx]) for idx, prob in enumerate(probs)] |
|
print(labels) |
|
|
|
|
|
predicted_label = logits.argmax(-1).item() |
|
return model.config.id2label[predicted_label] |
|
|
|
gr.Interface(fn=segment, inputs="image", outputs="text").launch() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|