omar87 commited on
Commit
20347ea
·
1 Parent(s): d377e81

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -9
app.py CHANGED
@@ -1,15 +1,8 @@
1
- import cv2
2
  import numpy as np
3
  from skimage.metrics import structural_similarity as ssim
4
  import gradio as gr
5
 
6
  # Function to calculate SSIM between two images
7
- def calculate_similarity(img1, img2):
8
- img1 = cv2.cvtColor(img1, cv2.COLOR_RGB2GRAY)
9
- img2 = cv2.cvtColor(img2, cv2.COLOR_RGB2GRAY)
10
- return ssim(img1, img2)
11
-
12
- # Function to compute similarity scores for all images
13
  def calculate_similarity(img1, img2):
14
  if len(img1.shape) == 2:
15
  img1 = cv2.cvtColor(img1, cv2.COLOR_GRAY2RGB)
@@ -17,12 +10,19 @@ def calculate_similarity(img1, img2):
17
  img2 = cv2.cvtColor(img2, cv2.COLOR_GRAY2RGB)
18
  return ssim(img1, img2)
19
 
 
 
 
 
 
 
 
20
 
21
  # Function to handle the Gradio interface
22
  def image_similarity(target_image, image_list):
23
  target_image = target_image.astype(np.uint8)
24
  image_list = [image.astype(np.uint8) for image in image_list]
25
- scores = calculate_similarity(target_image, image_list)
26
  results = list(zip(image_list, scores))
27
  results.sort(key=lambda x: x[1], reverse=True) # Sort by similarity score
28
  return [str(result) for result in results]
@@ -40,4 +40,4 @@ iface = gr.Interface(
40
  )
41
 
42
  # Launch the interface
43
- iface.launch()
 
 
1
  import numpy as np
2
  from skimage.metrics import structural_similarity as ssim
3
  import gradio as gr
4
 
5
  # Function to calculate SSIM between two images
 
 
 
 
 
 
6
  def calculate_similarity(img1, img2):
7
  if len(img1.shape) == 2:
8
  img1 = cv2.cvtColor(img1, cv2.COLOR_GRAY2RGB)
 
10
  img2 = cv2.cvtColor(img2, cv2.COLOR_GRAY2RGB)
11
  return ssim(img1, img2)
12
 
13
+ # Function to compute similarity scores for all images
14
+ def compute_similarity(target_image, image_list):
15
+ scores = []
16
+ for image in image_list:
17
+ similarity_score = calculate_similarity(target_image, image)
18
+ scores.append(similarity_score)
19
+ return scores
20
 
21
  # Function to handle the Gradio interface
22
  def image_similarity(target_image, image_list):
23
  target_image = target_image.astype(np.uint8)
24
  image_list = [image.astype(np.uint8) for image in image_list]
25
+ scores = compute_similarity(target_image, image_list)
26
  results = list(zip(image_list, scores))
27
  results.sort(key=lambda x: x[1], reverse=True) # Sort by similarity score
28
  return [str(result) for result in results]
 
40
  )
41
 
42
  # Launch the interface
43
+ iface.launch()