Exemplo n.º 1
0
def vanilla():
    from PIL import Image
    target_path = "..\\img\\target_diamond.png"
    target_path = "..\\img\\target_spade.png"
#     target_path = "..\\img\\target_mickey.png"
#     target_path = "..\\img\\target_heart.png"
#     target_path = "..\\img\\target_forward.png"
#     target_path = "..\\img\\target_recycle.png"
    
#     target_img = Image.open(target_path).convert('L')
    penalties = [Optimizer.penalty_name]
#     energies = ["first moments (normalized)", "XOR comparison", "secondary moments (normalized)"]
#     energies = ["XOR comparison"]
    energies = ["uncovered pixels", "distance field"]
#     energies = ["first moments (normalized)"]
#     energies = ["secondary moments (normalized)"]
#     energy_pairs = [energies, [1e-4,1,1e-4]]
    weights = [1,1]
    energy_pairs = [energies, weights]
    rendis = Renderer_dispatcher()
    rendis.target_image = Image.open(target_path)
    rendis.start()
    init_X_Y(640, 480)
    plotter = plotting.Plotter(*get_fname("..\\res"))
    optimizer = Optimizer(rendis)
    plotting.attach_plotter(optimizer, plotter)
    optimizer.set_target(target_path)
    optimizer.set_method("CMA")
#     optimizer.set_energy(["first moments (normalized)"], [1])
    optimizer.set_energy(*energy_pairs)
#     optimizer.set_energy(["XOR comparison"], [1])
    gui = Minimalistic_GUI(optimizer)
    gui.run()
Exemplo n.º 2
0
def _main():
    rendis = Renderer_dispatcher()
    #     start_new_thread(psudo_main, (rendis,))
    rendis.start()
    gui = MyGUI(rendis)
    gui.run()
    return
Exemplo n.º 3
0
def dispatcher_vanilla():
    from threading import Thread
    class Client(Thread):
        def __init__(self, dispatcher):
            Thread.__init__(self)
            self.dispatcher = dispatcher
        
        def run(self):
            from time import sleep
            print "start acq"
            renderer = self.dispatcher.acquire()
            print "got one"
            sleep(2)
            renderer = self.dispatcher.acquire()
            renderer = self.dispatcher.acquire_new(energy_terms=['eng1', 'eng2'])
            sleep(2)
            self.dispatcher.stop()
    
    dispatcher = Renderer_dispatcher()
    client = Client(dispatcher)
    client.start()
    dispatcher.run()