def __init__()

in ttw/data_loader.py [0:0]


    def __init__(self, data_dir, resnet_features, fasttext_features, textrecog_features, n_components=100, pca=False):
        self.feature_loaders = dict()
        self.num_tokens = None
        self.map = Map(data_dir, neighborhoods)
        if fasttext_features or textrecog_features:
            self.textfeatures = dict()
            for n in neighborhoods:
                self.textfeatures[n] = json.load(open(os.path.join(data_dir, n, "text.json")))
            self.textrecog_dict = TextrecogDict(self.textfeatures)

        if fasttext_features:
            self.feature_loaders['fasttext'] = FasttextFeatures(self.textfeatures,
                                                                os.path.join(data_dir, 'wiki.en.bin'),
                                                                pca=pca,
                                                                n_components=n_components)
        if resnet_features:
            self.feature_loaders['resnet'] = ResnetFeatures(os.path.join(data_dir, 'resnetfeat.json'),
                                                            pca=pca,
                                                            n_components=n_components)
        if textrecog_features:
            self.feature_loaders['textrecog'] = TextrecogFeatures(self.textfeatures, self.textrecog_dict)
            self.num_tokens = len(self.textrecog_dict)

        assert (len(self.feature_loaders) > 0)

        self.data = {'target': list()}
        for k in self.feature_loaders.keys():
            self.data[k] = list()

        for n in neighborhoods:
            for x, tmp in enumerate(self.map.coord_to_landmarks[n]):
                for y, ls in enumerate(tmp):
                    target = [0] * 10
                    for k in self.feature_loaders.keys():
                        self.data[k].append(self.feature_loaders[k].get(n, [x, y, 0]))
                    if len(ls) > 0:
                        for l in ls:
                            target[l - 1] = 1
                    else:
                        target[self.map.landmark_dict.encode('Empty') - 1] = 1
                    self.data['target'].append(target)