def load_model(modelfile, cameras, fnumber, visualize=False): if visualize: ex = Experiment() ex.execute('loadmodel %s' % modelfile) ex.execute('loadconfig') else: ex = DummyExperiment() ex.model, ex.tasks = YAMLParser(modelfile).experiment # situate cameras on a side of the laser for camera in cameras: if ex.model[camera[0]].pose.T.y < \ ex.model[ex.model.active_laser].pose.T.y: ex.model[camera[0]].negative_side = True else: ex.model[camera[0]].negative_side = False # disable unspecified cameras for camera in ex.model.cameras: if not camera in [c[0] for c in cameras]: ex.model[camera].active = False # load lens lookup tables lut = [] for camera in cameras: lut.append(LensLUT(camera[1], fnumber)) return ex, lut