Example #1
0
 def _contruct_ilang_model(self): 
     self.ilang_model   = ModelRigidSSD('RigidSSD')
     self.graph         = ProbabilisticGraphicalModel(['target','source','transformation']) 
     self.graph.set_nodes_given(['target','source'],True) 
     self.graph.set_node_value('source',self.source.get_data())
     self.graph.set_node_value('target',self.target.get_data())
     self.graph.set_node_value('transformation',numpy.zeros((1,6)))
     self.graph.add_dependence(self.ilang_model,{'target':'target','source':'source','transformation':'transformation'}) 
     self.sampler       = Sampler(self.graph) 
Example #2
0
    def __make_graph(self):
        self.ilang_model = SSD_ilang()
        # The following is an alternative use of ilang models: define the log_p and gradient functions here in order to have access to
        # the local variables.
        self.ilang_model.log_conditional_probability_transformation = self.__P
        self.ilang_model.log_conditional_probability_gradient_transformation = self.__G

        self.ilang_graph = ProbabilisticGraphicalModel(
            ['source', 'target', 'transformation', 'sigma'])
        self.ilang_graph.set_nodes_given(['sigma', 'source', 'target'], True)
        self.ilang_graph.add_dependence(
            self.ilang_model, {
                'source': 'source',
                'target': 'target',
                'sigma': 'sigma',
                'transformation': 'transformation'
            })
        self.ilang_sampler = Sampler(self.ilang_graph)
Example #3
0
 def __make_graph(self):
     self.ilang_graph = ProbabilisticGraphicalModel()
     for i in range(len(self.__images)):
         self.ilang_graph.add_node('im_%d' % i)
         self.ilang_graph.set_nodes_given([
             'im_%d' % i,
         ], True)
     for i in range(len(self.__images) - 1):
         self.ilang_graph.add_nodes(['sigma_%d' % i, 'T_%d' % i])
         self.ilang_graph.set_nodes_given([
             'sigma_%d' % i,
         ], True)
         model = SSD_ilang('SSD_%d' % i)
         self.ilang_graph.add_dependence(
             model, {
                 'sigma': 'sigma_%d' % i,
                 'transformation': 'T_%d' % i,
                 'source': 'im_%d' % i,
                 'target': 'im_%d' % (i + 1)
             })
     self.ilang_sampler = Sampler(self.ilang_graph)