build_graph/data/epic.py [131:161]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
            clip.update({'frames':frames, 'uid': uid})
            clips.append(clip)
        return clips

    def sample(self, imgs):
        
        if len(imgs)>self.clip_len:
            if self.split=='train': # random sample
                offset = np.random.randint(0, len(imgs)-self.clip_len)
                indices = slice(offset, offset+self.clip_len)
            elif self.split=='val': # center crop
                offset = len(imgs)//2 - self.clip_len//2
                indices = slice(offset, offset+self.clip_len)
        else:
            indices = slice(0, len(imgs))

        return indices

    def __getitem__(self, index):

        entry = self.data[index]
        frame_sample = self.sample(entry['frames'])
        frames = [self.load_image(f) for f in entry['frames'][frame_sample]]
        frames = self.clip_transform(frames) # (T, 3, 224, 224)
        frames = frames.permute(1, 0, 2, 3)
        instance = {'frames':frames, 'verb':entry['verb'], 'noun':entry['noun']}

        return instance

    def __len__(self):
        return len(self.data)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



build_graph/data/gtea.py [140:170]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
            clip.update({'frames':frames, 'uid': uid})
            clips.append(clip)
        return clips

    def sample(self, imgs):
        
        if len(imgs)>self.clip_len:
            if self.split=='train': # random sample
                offset = np.random.randint(0, len(imgs)-self.clip_len)
                indices = slice(offset, offset+self.clip_len)
            elif self.split=='val': # center crop
                offset = len(imgs)//2 - self.clip_len//2
                indices = slice(offset, offset+self.clip_len)
        else:
            indices = slice(0, len(imgs))

        return indices

    def __getitem__(self, index):

        entry = self.data[index]
        frame_sample = self.sample(entry['frames'])
        frames = [self.load_image(f) for f in entry['frames'][frame_sample]]
        frames = self.clip_transform(frames) # (T, 3, 224, 224)
        frames = frames.permute(1, 0, 2, 3)
        instance = {'frames':frames, 'verb':entry['verb'], 'noun':entry['noun']}

        return instance

    def __len__(self):
        return len(self.data)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



