virtex-redcaps / app.py
zamborg's picture
updated code
4dab50d
raw
history blame
No virus
1.94 kB
import streamlit as st
import io
# st.title("Image Captioning Demo from Redcaps")
# st.sidebar.markdown(
# """
# Image Captioning Model from VirTex trained on Redcaps
# """
# )
# with st.spinner("Loading Model"):
# from model import *
# sample_images = glob.glob("./samples/*.jpg")
# download_files()
# virtexModel = VirTexModel()
# imageLoader = ImageLoader()
# random_image = get_rand_img(sample_images)
# st.sidebar.title("Select a sample image")
# sample_image = st.sidebar.selectbox(
# "",
# sample_images
# )
# if st.sidebar.button("Random Sample Image"):
# random_image = get_rand_img(sample_images)
# sample_image = None
# uploaded_image = None
# with st.sidebar.form("file-uploader-form", clear_on_submit=True):
# uploaded_file = st.file_uploader("Choose a file")
# submitted = st.form_submit_button("Submit")
# if uploaded_file is not None and submitted:
# uploaded_image = Image.open(io.BytesIO(uploaded_file.get_values()))
# if uploaded_image is None and submitted:
# st.write("Please select a file to upload")
# else:
# image_file = sample_image if sample_image is not None else random_image
# image = uploaded_image if uploaded_image is not None else Image.open()
# image_dict = imageLoader.transform(image)
# show.image(st.image(image_dict["image"]), "Target Image")
# with st.spinner("Generating Caption"):
# subreddit, caption = virtexModel.predict(image_dict)
# st.header("Predicted Caption:\n\n")
# st.subheader(f"Subreddit: {subreddit}\n")
# st.subheader(f"Caption: {caption}\n")
# image.close()
from model import *
download_files()
sample_images = get_samples()
v, il = VirTexModel(), ImageLoader()
for s in sample_images:
subreddit, caption = v.predict(il.load(s))
print("=====================")
print(subreddit)
print(caption)