Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| from PIL import Image | |
| import numpy as np | |
| from seg_llm_function import chat_seg_model | |
| from llm_function import chat_claude , prompt | |
| def final_func(img1 , img2) : | |
| llm_resp = chat_claude(prompt , img1 , img2) | |
| seg_resp = chat_seg_model(img1 , img2) | |
| return llm_resp , seg_resp | |
| # def process_image(image1 , image2): | |
| # # Convert the input to a PIL Image object if it's not already | |
| # if isinstance(image, str): | |
| # image = Image.open(image) | |
| # # Resize the image to fit within a 400x400 pixel box while maintaining aspect ratio | |
| # max_size = 400 | |
| # width, height = image.size | |
| # new_width = min(width, max_size) | |
| # new_height = int(max_size * height / width) | |
| # image = image.resize((new_width, new_height)) | |
| # # Convert the image back to a numpy array for Gradio output | |
| # return np.array(image) | |
| from ultralytics import YOLO | |
| # 1. Load a YOLOv8 segmentation model (pre-trained weights) | |
| model = YOLO("best.pt") | |
| def display_image(img1 , img2) : | |
| # if isinstance(img1 , img2 , str) : | |
| image1 = Image.open(img1) | |
| # if isinstance(img2 , str) : | |
| image2 = Image.open(img2) | |
| return image1 , image2 | |
| gr.Interface( | |
| fn=final_func, | |
| inputs=[gr.Image(type="filepath" , interactive = True), gr.Image(type="filepath" , interactive = True)], | |
| # outputs=[gr.Image(), gr.Image()], | |
| # outputs = ["text" , "text"] , | |
| outputs = [gr.Markdown(label = "##VLM" , show_copy_button = True, container = True , height = 300) , gr.Markdown(label = "##SEG-VLM" , show_copy_button = True , container = True , height = 300)], | |
| title="Blueprint Comparison : VLM & SEG-VLM", | |
| description="Upload two construstion blueprints to know differences between them." , | |
| flagging_mode = "never", | |
| fill_width = True , | |
| submit_btn = "Compare", | |
| show_progress = "full", | |
| theme = "soft", | |
| analytics_enabled = True | |
| ).launch(pwa = True , share = True) | |