import gradio as gr import cv2 import numpy as np from skimage.metrics import structural_similarity as ssim from PIL import Image import io # Function to calculate SSIM between two images def calculate_ssim(img1, img2): img1_gray = img1.convert("L") img2_gray = img2.convert("L") # Resize images to a common size img1_resized = img1_gray.resize((256, 256)) img2_resized = img2_gray.resize((256, 256)) return ssim(np.array(img1_resized), np.array(img2_resized)) # Function to compare two trademarks def compare_trademarks(trademark1, trademark2): ssim_score = calculate_ssim(trademark1, trademark2) return ssim_score # Function to handle the Gradio interface def prevent_trademark_conflict(trademark1, trademark2): similarity_score = compare_trademarks(trademark1, trademark2) return similarity_score # Prepare Gradio interface iface = gr.Interface( fn=prevent_trademark_conflict, inputs=[ gr.inputs.Image(type="pil", label="Trademark Image 1"), gr.inputs.Image(type="pil", label="Trademark Image 2") ], outputs="text", title="Trademark Similarity", description="Compare two trademarks to check for similarity." ) # Launch the interface iface.launch()