Example #1
0
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
Example #2
0
 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.,
     }
Example #3
0
 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.,}
Example #4
0
 def __init__(self, rand=0):
     self.rand = tools.init_rand(rand)
     self.init_state_info()
Example #5
0
 def __init__(self, rand=0):
     self.rand = tools.init_rand(rand)
     self.init_state_info()