Spaces:
Sleeping
Sleeping
import streamlit as st | |
from transformers import pipeline | |
from PIL import Image | |
# Load the image-to-text model pipeline | |
def load_pipeline(): | |
return pipeline("image-to-text", model="nlpconnect/vit-gpt2-image-captioning") | |
pipe = load_pipeline() | |
# Streamlit app title | |
st.title("🖼️ Image Caption Generator using AI") | |
st.write("Upload an image, and the model will generate a descriptive caption.") | |
# File upload section | |
uploaded_file = st.file_uploader("Choose an image...", type=["jpg", "jpeg", "png"]) | |
if uploaded_file: | |
# Display the uploaded image | |
image = Image.open(uploaded_file) | |
st.image(image, caption='Uploaded Image', use_column_width=True) | |
# Generate a caption for the image | |
st.write("Generating caption...") | |
caption = pipe(image) | |
# Display the generated caption | |
if caption: | |
st.subheader("Generated Caption:") | |
st.write(caption[0]['generated_text']) | |
else: | |
st.write("Couldn't generate a caption. Please try a different image.") | |
# Footer information | |
st.markdown("---") | |
st.write("Created with 🤗 Transformers and Streamlit") | |