@classmethod
    def build_from(cls, path, object_names=None, verbosity='quiet'):
        """Collect stat and feature files.
        :arg path: string
            path to statistics file, containing feature file names
        """
        db = ObjectDB(object_names=object_names)
        # Parse stat file
        with open(path, 'r') as f:
            frames = [Frame.from_line(l) for l in f.readlines()
                      if not l.isspace()]
        # Parse data files for each frames
        skipped = 0
        for f in frames:
            try:
                for obj_feat in f.read_features(os.path.dirname(path)):
                    db.add_feats(obj_feat)
                db.add_frame(f)
            except IOError as e:
                skipped += 1
                if verbosity is 'verbose':
                    print("Skipping file %s (%s)" % (f.filename, e.strerror))
            except WrongNumberOfFeatures:
                skipped += 1
                if verbosity is 'verbose':
                    print("Skipping file %s (wrong number of features)"
                          % f.filename)
        if skipped > 0 and verbosity is not 'silent':
            print("Skipped %d files." % skipped)
        for feat in FEATURES:
            if verbosity is not 'silent':
                print("Grouping histograms by frame for %s features..." % feat)
            db._compute_histos_matrix_by_frame(feat)
        return db
dataset/ETHPy150Open omangin/multimodal/multimodal/db/models/objects.py/ObjectDB.build_from/original