Spaces:
Runtime error
Runtime error
import streamlit as st | |
import requests | |
import torch | |
from io import BytesIO | |
from PIL import Image | |
from transformers import ViTImageProcessor, ViTForImageClassification | |
# Init model, transforms | |
def get_model_transformers(): | |
model = ViTForImageClassification.from_pretrained('nateraw/vit-age-classifier') | |
transforms = ViTImageProcessor.from_pretrained('nateraw/vit-age-classifier') | |
return model, transforms | |
st.title("λμ΄λ₯Ό μμΈ‘ν΄λ΄ μλ€!") | |
uploaded_file = st.file_uploader("λμ΄λ₯Ό μμΈ‘ν μ¬λμ μ΄λ―Έμ§λ₯Ό μ λ‘λνμΈμ.", type=["jpg", "jpeg", "png", 'gif', 'webp']) | |
if uploaded_file: | |
st.write(f'μ λ‘λλ νμΌ μ΄λ¦: {uploaded_file}') | |
st.image(uploaded_file, caption="Uploaded Image", use_column_width=True) | |
# Get example image from official fairface repo + read it in as an image | |
r = requests.get('https://github.com/dchen236/FairFace/blob/master/detected_faces/race_Asian_face0.jpg?raw=true') | |
im = Image.open(uploaded_file) | |
model, transforms = get_model_transformers() | |
# Transform our image and pass it through the model | |
inputs = transforms(im, return_tensors='pt') | |
output = model(**inputs) | |
# Predicted Class probabilities | |
proba = output.logits.softmax(1) | |
values, indices = torch.topk(proba, k=5) | |
result_dict = {model.config.id2label[i.item()]: v.item() for i, v in zip(indices.numpy()[0], values.detach().numpy()[0])} | |
first_result = list(result_dict.keys())[0] | |
print(f'predicted result:{result_dict}') | |
print(f'first_result: {first_result}') | |
st.header('κ²°κ³Ό') | |
st.subheader(f'μμΈ‘λ λμ΄λ {first_result} μ λλ€') | |
for key, value in result_dict.items(): | |
st.write(f'{key}: {value * 100:.2f}%') |