kusumakar commited on
Commit
ff7c5de
·
1 Parent(s): 6e23f4d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -8
app.py CHANGED
@@ -1,3 +1,4 @@
 
1
  import torch
2
  import numpy as np
3
  from PIL import Image
@@ -9,6 +10,7 @@ model = VisionEncoderDecoderModel.from_pretrained("nlpconnect/vit-gpt2-image-cap
9
  extractor = ViTFeatureExtractor.from_pretrained("nlpconnect/vit-gpt2-image-captioning")
10
  tokeniser = AutoTokenizer.from_pretrained("nlpconnect/vit-gpt2-image-captioning")
11
 
 
12
  def generate_captions(image):
13
  generated_caption = tokeniser.decode(model.generate(extractor(image, return_tensors="pt").pixel_values.to("cpu"))[0])
14
  sentence = generated_caption
@@ -21,7 +23,7 @@ model_name = "gpt2"
21
  tokenizer_2 = GPT2Tokenizer.from_pretrained(model_name)
22
  model_2 = GPT2LMHeadModel.from_pretrained(model_name)
23
 
24
- # Define the Streamlit app
25
  def generate_paragraph(prompt):
26
  # Tokenize the prompt
27
  input_ids = tokenizer_2.encode(prompt, return_tensors="pt")
@@ -33,14 +35,14 @@ def generate_paragraph(prompt):
33
  paragraph = tokenizer_2.decode(output[0], skip_special_tokens=True)
34
  return paragraph.capitalize()
35
 
36
- # Streamlit app
37
  def main():
38
  # Set Streamlit app title and description
39
- st.title("Paragraph Generation From Context of an Image")
40
- st.subheader("Upload the Image to generate a paragraph.")
41
 
42
  # create file uploader
43
- uploaded_file = st.file_uploader("Choose an image...", type=["jpg", "jpeg", "png"])
44
 
45
  # check if file has been uploaded
46
  if uploaded_file is not None:
@@ -49,13 +51,12 @@ def main():
49
 
50
  # context as prompt
51
  prompt = generate_captions(image)
52
- st.write("The Context is:", prompt)
53
 
54
  # display the image
55
  st.image(uploaded_file)
56
-
57
- generated_paragraph = generate_paragraph(prompt)
58
 
 
 
59
  st.write(generated_paragraph)
60
 
61
  if __name__ == "__main__":
 
1
+ #load all necessary libraries, Don't forget to check the system requirements or dependencies
2
  import torch
3
  import numpy as np
4
  from PIL import Image
 
10
  extractor = ViTFeatureExtractor.from_pretrained("nlpconnect/vit-gpt2-image-captioning")
11
  tokeniser = AutoTokenizer.from_pretrained("nlpconnect/vit-gpt2-image-captioning")
12
 
13
+ # define the function
14
  def generate_captions(image):
15
  generated_caption = tokeniser.decode(model.generate(extractor(image, return_tensors="pt").pixel_values.to("cpu"))[0])
16
  sentence = generated_caption
 
23
  tokenizer_2 = GPT2Tokenizer.from_pretrained(model_name)
24
  model_2 = GPT2LMHeadModel.from_pretrained(model_name)
25
 
26
+ # Define the Function
27
  def generate_paragraph(prompt):
28
  # Tokenize the prompt
29
  input_ids = tokenizer_2.encode(prompt, return_tensors="pt")
 
35
  paragraph = tokenizer_2.decode(output[0], skip_special_tokens=True)
36
  return paragraph.capitalize()
37
 
38
+ # Define the streamlit App
39
  def main():
40
  # Set Streamlit app title and description
41
+ st.title("Have a Picture! Don't Know how to Describe?. Here's Some Help")
42
+ st.subheader("Upload the Picture to get Catchy Description.")
43
 
44
  # create file uploader
45
+ uploaded_file = st.file_uploader("Drag and Drop or Upload the picture", type=["jpg", "jpeg", "png"])
46
 
47
  # check if file has been uploaded
48
  if uploaded_file is not None:
 
51
 
52
  # context as prompt
53
  prompt = generate_captions(image)
 
54
 
55
  # display the image
56
  st.image(uploaded_file)
 
 
57
 
58
+ # generate and display the description
59
+ generated_paragraph = generate_paragraph(prompt)
60
  st.write(generated_paragraph)
61
 
62
  if __name__ == "__main__":