fsgg / app.py
lostspace003's picture
Upload 2 files
53fb454 verified
raw
history blame contribute delete
960 Bytes
import gradio as gr
from transformers import pipeline
from PIL import Image
# 1. Initialize the pipeline
pipe = pipeline("image-classification", model="dima806/fairface_age_image_detection")
# 2. Define the prediction function
def predict_age(input_img):
# The pipeline can take a PIL image directly
results = pipe(input_img)
# Format the results for Gradio's Label component
# Returns a dictionary like {"20-29": 0.85, "30-39": 0.10, ...}
return {result['label']: result['score'] for result in results}
# 3. Build the Gradio Interface
demo = gr.Interface(
fn=predict_age,
inputs=gr.Image(type="pil", label="Upload an image"),
outputs=gr.Label(num_top_classes=3, label="Predicted Age Range"),
title="FairFace Age Detection",
description="Upload a photo to estimate the age range of the person in the image."
)
# 4. Launch the app
if __name__ == "__main__":
demo.launch(share=True)