def get_training_tuple_tensors()

in src/similarity/index.py [0:0]


    def get_training_tuple_tensors(self, i) :
    
        n = len(Zappos50kIndex.CATEGORIES_LABELS)+1
        img1_tensors = torch.empty(n, 3, 224, 224, dtype=torch.float)
        img2_tensors = torch.empty(n, 3, 224, 224, dtype=torch.float)
        labels_tensors = torch.empty(n, dtype=torch.float)
        
        img1 = self.get(i)
        (c1, sc1) = Zappos50kIndex.get_categorization(img1)
        
        img1_tensor = Zappos50kIndex.getImageTensor(self.data_dir+img1, Zappos50kIndex.TRANSFORMATIONS)
        
        img1_tensors[0,:,:,:] = img1_tensor
        img2_tensors[0,:,:,:] = Zappos50kIndex.getImageTensor(self.data_dir+img1, Zappos50kIndex.TRANSFORMATIONS)
        labels_tensors[0] = Zappos50kIndex.WEIGHT_SAME_IMG
        
        k = 1
        for (c,sc) in Zappos50kIndex.CATEGORIES_LABELS :
            
            r = self.get_rand_id(c,sc) 
            
            lw = Zappos50kIndex.WEIGHT_DIFF_IMG
            if (c1 == c) :
                lw = lw - Zappos50kIndex.PARAM_SAME_CATEGORY_WEIGHTING
                
                if (sc1 == sc):
                    while(r == i):
                        r = self.get_rand_id(c,sc)
                
            if (sc1 == sc) :
                lw = lw - Zappos50kIndex.PARAM_SAME_SUBCATEGORY_WEIGHTING
                
            img2 = self.get(r)
            
            img1_tensors[k,:,:,:] = img1_tensor
            img2_tensors[k,:,:,:] = Zappos50kIndex.getImageTensor(self.data_dir+img2, Zappos50kIndex.TRANSFORMATIONS)
            labels_tensors[k] = lw
            k+=1
            
        return {'img1':img1_tensors, 'img2':img2_tensors, 'labels':labels_tensors}