import gradio as gr import cv2 from geti_sdk.deployment import Deployment from geti_sdk.utils import show_image_with_annotation_scene #Load models deployment = Deployment.from_folder("deployments") deployment.load_inference_models(device="CPU") def resize_image(image, target_dimension): height, width = image.shape[:2] max_dimension = max(height, width) scale_factor = target_dimension / max_dimension new_width = int(width * scale_factor) new_height = int(height * scale_factor) resized_image = cv2.resize(image, (new_width, new_height)) return resized_image def infer(image): if image is None: return None, 'Error: No image provided' image = resize_image(image, 1200) image_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB) prediction = deployment.infer(image_rgb) output = show_image_with_annotation_scene(image, prediction, show_results=False) output = cv2.cvtColor(output, cv2.COLOR_BGR2RGB) return output, prediction.overview demo = gr.Interface( fn=infer, inputs="image", outputs=["image", "text"], allow_flagging='manual', flagging_dir='flagged', examples=[["eggsample1.jpg"], ["eggsample2.jpg"]] ) demo.launch()