| import os |
| import gradio as gr |
|
|
| def get_openai_key(): |
| return os.getenv("OPENAI_API_KEY","") |
|
|
| def process_image(openai_api_key,image_src): |
| print(openai_api_key) |
| print(image_src) |
| |
| custom_output = f''' |
| <h2>Image->Text:</h2> |
| ''' |
| return custom_output |
|
|
| openai_api_key = gr.Textbox(value=get_openai_key(),label="OpenAI API Key",type="password") |
| image_input = gr.inputs.Image(type='filepath', label="Input Image") |
|
|
| title_with_logo = \ |
| f'Understanding Image with Text' |
|
|
| extra_title = r'\n\n' |
|
|
| interface = gr.Interface( |
| fn=lambda openai_api_key,image, options: process_image(openai_api_key,image), |
| inputs=[openai_api_key, |
| image_input, |
| gr.CheckboxGroup( |
| label="Options", |
| choices=["Image Generation", "Semantic Segment"], |
| ), |
| ], |
| outputs=gr.outputs.HTML(), |
| title=title_with_logo, |
| description=extra_title +""" |
| Image.txt. This code support image to text transformation. Then the generated text can do retrieval, question answering et al to conduct zero-shot. |
| \n Github: https://github.com/showlab/Image2Paragraph |
| \n Twitter: https://twitter.com/awinyimgprocess/status/1646225454599372800?s=46&t=HvOe9T2n35iFuCHP5aIHpQ |
| \n For online demo, we use smallest model to speed up. For better result, look for github for using large models. |
| \n Ttext2image model is controlnet, which used canny edge as reference. |
| \n To speed up, we generate image with small size 384, run the code local for high-quality sample. |
| """ |
| ) |
|
|
| |
| interface.launch() |
|
|
|
|