88hours commited on
Commit
ea90de5
·
1 Parent(s): 11b9794

Load Tensor and calculate distance

Browse files
Files changed (1) hide show
  1. s4-calculate-distance.py +56 -0
s4-calculate-distance.py ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import numpy as np
2
+ from numpy.linalg import norm
3
+ import torch
4
+
5
+ url1='http://farm3.staticflickr.com/2519/4126738647_cc436c111b_z.jpg'
6
+ cap1='A motorcycle sits parked across from a herd of livestock'
7
+
8
+ url2='http://farm3.staticflickr.com/2046/2003879022_1b4b466d1d_z.jpg'
9
+ cap2='Motorcycle on platform to be worked on in garage'
10
+
11
+ url3='https://i.natgeofe.com/n/548467d8-c5f1-4551-9f58-6817a8d2c45e/NationalGeographic_2572187_3x2.jpg'
12
+ cap3='a cat laying down stretched out near a laptop'
13
+
14
+ img1 = {
15
+ 'flickr_url': url1,
16
+ 'caption': cap1,
17
+ 'image_path' : './shared_data/motorcycle_1.jpg',
18
+ 'tensor_path' : './shared_data/motorcycle_1'
19
+ }
20
+
21
+ img2 = {
22
+ 'flickr_url': url2,
23
+ 'caption': cap2,
24
+ 'image_path' : './shared_data/motorcycle_2.jpg',
25
+ 'tensor_path' : './shared_data/motorcycle_2'
26
+ }
27
+
28
+ img3 = {
29
+ 'flickr_url' : url3,
30
+ 'caption': cap3,
31
+ 'image_path' : './shared_data/cat_1.jpg',
32
+ 'tensor_path' : './shared_data/cat_1'
33
+ }
34
+
35
+ def load_tensor(path):
36
+ return torch.load(path)
37
+
38
+ def load_embeddings():
39
+ img1_tensor = load_tensor(img1['tensor_path'])
40
+ img2_tensor = load_tensor(img2['tensor_path'])
41
+ img3_tensor = load_tensor(img3['tensor_path'])
42
+ return np.array(img1_tensor), np.array(img2_tensor), np.array(img3_tensor)
43
+
44
+
45
+ def cosine_similarity(vec1, vec2):
46
+ similarity = np.dot(vec1,vec2)/(norm(vec1)*norm(vec2))
47
+ return similarity
48
+
49
+ def calculate_distance():
50
+ img1_tensor, img2_tensor, img3_tensor = load_embeddings()
51
+ similarity1 = cosine_similarity(img1_tensor, img2_tensor)
52
+ similarity2 = cosine_similarity(img1_tensor, img3_tensor)
53
+ similarity3 = cosine_similarity(img2_tensor, img3_tensor)
54
+ return similarity1, similarity2, similarity3
55
+
56
+ print(calculate_distance())