def __init__(self, DEBUG, list_of_demonstrations, featfile, trialname): # self.list_of_demonstrations = parser.generate_list_of_videos(constants.PATH_TO_DATA + constants.CONFIG_FILE) self.list_of_demonstrations = list_of_demonstrations self.data_X = {} self.data_X_size = {} self.data_N = {} self.file = None self.featfile = featfile self.metrics_picklefile = None self.change_pts = None self.change_pts_Z = None self.change_pts_W = None self.list_of_cp = [] self.map_cp2frm = {} self.map_cp2demonstrations = {} self.map_cp_level1 = {} self.map_cp_level2 = {} self.map_level1_cp = {} self.map_level2_cp = {} self.map_cp2milestones = {} self.map_cp2surgemes = {} self.map_cp2surgemetransitions = {} self.l2_cluster_matrices = {} self.map_frm2surgeme = parser.get_all_frame2surgeme_maps(self.list_of_demonstrations) self.trial = utils.hashcode() + trialname # self.trial = trialname self.cp_surgemes = [] self.pruned_L1_clusters = [] self.pruned_L2_clusters = [] self.silhouette_scores = {} self.dunn_scores_1 = {} self.dunn_scores_2 = {} self.dunn_scores_3 = {} self.level2_dunn_1 = [] self.level2_dunn_2 = [] self.level2_dunn_3 = [] self.level2_silhoutte = [] self.label_based_scores_1 = {} self.label_based_scores_2 = {} self.gmm_objects = {} self.sr = 10
def __init__(self, DEBUG, list_of_demonstrations, fname, log, vision_mode = False, feat_fname = None): self.list_of_demonstrations = list_of_demonstrations if vision_mode and feat_fname is None: print "[Error] Please provide file with visual features" sys.exit() self.vision_mode = vision_mode self.feat_fname = feat_fname self.data_X = {} self.X_dimension = 0 self.data_X_size = 0 self.data_N = {} self.log = log self.file = None self.metrics_picklefile = constants.PATH_TO_CLUSTERING_RESULTS + fname + ".p" self.changepoints = None self.list_of_cp = [] self.map_cp2frm = {} self.map_cp2demonstrations = {} self.map_cp2cluster = {} self.map_level1_cp = {} self.map_cp2milestones = {} self.map_cp2surgemes = {} self.map_cp2surgemetransitions = {} self.map_frm2surgeme = parser.get_all_frame2surgeme_maps(self.list_of_demonstrations) self.trial = utils.hashcode() + fname # self.trial = fname self.cp_surgemes = [] self.pruned_L1_clusters = [] self.silhouette_score_global = None self.silhouette_score_weighted = None self.dunn_scores_1 = {} self.dunn_scores_2 = {} self.dunn_scores_3 = {} self.label_based_scores_1 = {} self.sr = constants.SR # Components for Mixture model at each level if self.vision_mode: self.n_components_cp = constants.N_COMPONENTS_CP_Z self.n_components_L1 = constants.N_COMPONENTS_L1_Z self.temporal_window = constants.TEMPORAL_WINDOW_Z self.representativeness = constants.PRUNING_FACTOR_Z self.ALPHA_CP = constants.ALPHA_Z_CP if (constants.TASK_NAME in ["000", "010", "011", "100"]): self.ALPHA_CP = constants.ALPHA_W_CP else: self.n_components_cp = constants.N_COMPONENTS_CP_W self.n_components_L1 = constants.N_COMPONENTS_L1_W self.temporal_window = constants.TEMPORAL_WINDOW_W self.representativeness = constants.PRUNING_FACTOR_W self.ALPHA_CP = constants.ALPHA_W_CP self.ALPHA_L1 = 0.4 self.fit_GMM = False self.fit_DPGMM = True assert self.fit_DPGMM or self.fit_GMM == True
def __init__(self, DEBUG, list_of_demonstrations, featfile, trialname): self.list_of_demonstrations = list_of_demonstrations self.data_X = {} self.data_W = {} self.data_Z = {} self.data_X_size = {} self.data_N = {} self.file = None self.featfile = featfile self.metrics_picklefile = None self.change_pts = None self.change_pts_Z = None self.change_pts_W = None self.list_of_cp = [] self.map_cp2frm = {} self.map_cp2demonstrations = {} self.map_cp2level1 = {} self.map_level12cp = {} self.map_cp2milestones = {} self.map_cp2surgemes = {} self.map_cp2surgemetransitions = {} self.l2_cluster_matrices = {} self.map_frm2surgeme = parser.get_all_frame2surgeme_maps(self.list_of_demonstrations) self.trial = utils.hashcode() + trialname self.cp_surgemes = [] self.pruned_L1_clusters = [] self.pruned_L2_clusters = [] self.silhouette_scores_global = {} self.silhouette_scores_weighted = {} self.dunn_scores_1 = {} self.dunn_scores_2 = {} self.dunn_scores_3 = {} self.level2_dunn_1 = [] self.level2_dunn_2 = [] self.level2_dunn_3 = [] self.level2_silhoutte_global = [] self.level2_silhoutte_weighted = [] self.label_based_scores_1 = {} self.label_based_scores_2 = {} self.sr = constants.SR self.representativeness = constants.PRUNING_FACTOR_ZW # Components for Mixture model at each level self.n_components_cp = constants.N_COMPONENTS_CP self.n_components_L1 = constants.N_COMPONENTS_L1 self.n_components_L2 = constants.N_COMPONENTS_L2 self.temporal_window = constants.TEMPORAL_WINDOW_ZW self.fit_GMM = False self.fit_DPGMM = True assert self.fit_DPGMM or self.fit_GMM == True