File size: 810 Bytes
046ef1f
a31b235
4179e9c
a31b235
046ef1f
a31b235
 
046ef1f
a31b235
 
 
 
 
 
 
 
 
 
046ef1f
 
 
 
 
 
a31b235
046ef1f
 
a31b235
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import streamlit as st
import torch
from PIL import Image
from lavis.models import load_model_and_preprocess

device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model, vis_processors, _ = load_model_and_preprocess(name="blip_caption", model_type="base_coco", is_eval=True, device=device)


def generate_caption(raw_image):
    raw_image = raw_image.convert('RGB')
    image = vis_processors["eval"](raw_image).unsqueeze(0).to(device)
    return model.generate({"image": image})[0]


st.title("EcomGenius")

file_name = st.file_uploader("Upload a Image")

if file_name is not None:
    col1, col2 = st.columns(2)

    image = Image.open(file_name)
    col1.image(image, use_column_width=True)
    caption = generate_caption(image)

    col2.header("Probabilities")
    col2.subheader(caption)