summaryrefslogtreecommitdiff
path: root/live-mogrify.py
diff options
context:
space:
mode:
Diffstat (limited to 'live-mogrify.py')
-rw-r--r--live-mogrify.py33
1 files changed, 29 insertions, 4 deletions
diff --git a/live-mogrify.py b/live-mogrify.py
index 9330161..c106045 100644
--- a/live-mogrify.py
+++ b/live-mogrify.py
@@ -156,6 +156,23 @@ def list_sequences(module):
})
return results
+def load_frame(opt, index):
+ A_path = os.path.join(opt.render_dir, "frame_{:05d}.png".format(index))
+ if not os.path.exists(A_path):
+ return None
+ A_img = Image.open(A_path).convert('RGB')
+ A = self.transform(A_img)
+ # if self.opt.which_direction == 'BtoA':
+ # input_nc = self.opt.output_nc
+ # else:
+ # input_nc = self.opt.input_nc
+
+ # if input_nc == 1: # RGB to gray
+ # tmp = A[0, ...] * 0.299 + A[1, ...] * 0.587 + A[2, ...] * 0.114
+ # A = tmp.unsqueeze(0)
+
+ return {'A': A, 'A_paths': A_path}
+
def read_sequence(path):
print("> read sequence {}".format(path))
return sorted([f for f in glob.glob(os.path.join('./sequences/', module_name, path, '*.png'))])
@@ -238,8 +255,8 @@ def process_live_input(opt, data_opt, rpc_client, model):
if data_opt.processing:
print("Already processing...")
data_opt.processing = True
- data_loader = CreateRecursiveDataLoader(opt)
- dataset = data_loader.load_data()
+ # data_loader = CreateRecursiveDataLoader(opt)
+ # dataset = data_loader.load_data()
create_render_dir(opt)
sequence = read_sequence(data_opt.sequence_name)
@@ -260,9 +277,17 @@ def process_live_input(opt, data_opt, rpc_client, model):
print("generating...")
sequence_i = 1
- for i, data in enumerate(data_loader):
+ i = 0
+ #for i, data in enumerate(data_loader):
+ while True:
+ i += 1
if i >= opt.how_many:
break
+
+ data = load_frame(opt, i)
+ if data is None:
+ break
+
if data_opt.load_checkpoint is True:
model.save_dir = os.path.join(opt.checkpoints_dir, opt.module_name, data_opt.checkpoint_name)
model.load_network(model.netG, 'G', data_opt.epoch)
@@ -368,7 +393,7 @@ def process_live_input(opt, data_opt, rpc_client, model):
if data_opt.pause:
data_opt.pause = False
break
- gevent.sleep(0)
+ gevent.sleep(data_opt.frame_delay)
data_opt.processing = False
rpc_client.send_status('processing', False)