def sample_model_bg(modelnames, bgnames, n_ex_per_model, n_ex, rand=0): """ Samples a list of models and backgrounds for building the dataset. The models will be repeated 'n_ex_per_model' times. modelnames: list of model names bgnames: list of background filenames n_ex_per_model: number of examples per model n_ex: total number of examples modellist: list of 'n_ex' models bglist: list of 'n_ex' background names """ # Make model list modellist = [m for m in flatten(zip(*([modelnames] * n_ex_per_model)))] # Make background list rand = tools.init_rand(rand) bgrand = rand.randint(0, n_bg, n_ex) bglist = [bgnames[r] for r in bgrand] # Make category list # Model root directory model_path = os.path.join(gt.RESOURCE_PATH, "objs") # Get the model info that's contained in the scripts sys.path.append(model_path) model_categories = __import__("model_categories").MODEL_CATEGORIES # Assemble category info in dict with {modelname: category, ...} categories = [] for categ, names in model_categories.iteritems(): categories.extend([(name, categ) for name in names]) categorydict = dict(categories) # The actual list categorylist = [categorydict[model] for model in modellist] return modellist, bglist, categorylist
def __init__(self, image, renderer=None, rand=0): # Initialize a random object self.rand = tools.init_rand(rand) # Initial/null values self.image = image self.state0 = None self.state = None self.score = None self.states = [] self.proposals = [] self._store_dtype = np.dtype([("score", ("f8", 1)), ("proposal_score", ("f8", 1)), ("fwdprob", ("f8", 1)), ("bakprob", ("f8", 1)), ("flip", ("f8", 1)), ("accepted", ("b", 1))]) self.store_info = None if renderer is None: # Create a renderer object self.renderer = Renderer() else: # Use the input renderer object self.renderer = renderer self.true_features = self.get_features(self.image) # Initialize proposal mechanism self.init_proposer(rand=rand) # Initialize the sampler self.init_state() # Parameters self.param = { "llik_sigma": 200., }
def __init__(self, image, renderer=None, rand=0): # Initialize a random object self.rand = tools.init_rand(rand) # Initial/null values self.image = image self.state0 = None self.state = None self.score = None self.states = [] self.proposals = [] self._store_dtype = np.dtype([ ("score", ("f8", 1)), ("proposal_score", ("f8", 1)), ("fwdprob", ("f8", 1)), ("bakprob", ("f8", 1)), ("flip", ("f8", 1)), ("accepted", ("b", 1))]) self.store_info = None if renderer is None: # Create a renderer object self.renderer = Renderer() else: # Use the input renderer object self.renderer = renderer self.true_features = self.get_features(self.image) # Initialize proposal mechanism self.init_proposer(rand=rand) # Initialize the sampler self.init_state() # Parameters self.param = {"llik_sigma": 200.,}
def __init__(self, rand=0): self.rand = tools.init_rand(rand) self.init_state_info()