summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2018-09-24 01:53:14 +0200
committerJules Laplace <julescarbon@gmail.com>2018-09-24 01:53:14 +0200
commita533a7ce9867f5350f197ffbc73a230652938f95 (patch)
tree8fbda87c4b5204541f9539682e319b3d6a94da9c
parent9c8752432b3f5b0a9f49197d1fe869b512e44f2f (diff)
splice.pl
-rw-r--r--splice.pl90
1 files changed, 90 insertions, 0 deletions
diff --git a/splice.pl b/splice.pl
new file mode 100644
index 0000000..8189cab
--- /dev/null
+++ b/splice.pl
@@ -0,0 +1,90 @@
+#!/usr/bin/perl
+
+use Getopt::Long;
+use IO::Handle;
+
+STDERR->autoflush(1);
+STDOUT->autoflush(1);
+
+my $module = "pix2pixhd";
+my $dataset = "PLACEHOLDER";
+my $sequence = "PLACEHOLDER";
+my $folder_id = 0;
+my $start_frame = 0;
+my $end_frame = 0;
+my $endpoint = undef;
+GetOptions (
+ "module=s" => \$module,
+ "dataset=s" => \$dataset,
+ "sequence=s" => \$sequence,
+ "folder_id=i" => \$folder_id,
+ "start_frame=i" => \$start_frame,
+ "end_frame=i" => \$end_frame,
+ "endpoint=s" => \$endpoint,
+)
+or die("Error in command line arguments\n");
+
+if ($dataset eq 'PLACEHOLDER' or $sequence eq 'PLACEHOLDER' || ! -e "sequences/$sequence") {
+ print "No dataset specified\n";
+ exit(1);
+}
+
+if ($start_frame == 0 or !$end_frame == 0) {
+ print "No frames specified\n";
+ exit(1);
+}
+
+mkdir("./datasets/$dataset");
+mkdir("./datasets/$dataset/train_A");
+mkdir("./datasets/$dataset/train_B");
+mkdir("./datasets/$dataset/test_A");
+mkdir("./datasets/$dataset/test_B");
+mkdir("./sequences/$dataset");
+
+my $dataset_lines = `ls -1v sequences/$sequence/*.png`;
+my @dataset_files = split("\n", $dataset_lines);
+
+my $sequence_lines = `ls -1v sequences/$sequence/*.png`;
+my @sequence_files = split('\n', $sequence_lines);
+
+my $pwd = `pwd`;
+chomp $pwd;
+$pwd .= '/';
+print $pwd . "\n";
+
+my $i = scalar @dataset_files;
+my $last_fn = undef;
+for my $filename (@sequence_files) {
+ if ($start_frame <= $i and $i <= $end_frame) {
+ chomp $filename;
+ print($pwd . $filename);
+ system('ln', '-s', $pwd . $filename, sprintf('./datasets/$dataset/frame_%05d.png', $i));
+ if (defined $last_fn) {
+ system('ln', '-s', $pwd . $last_fn, sprintf('./datasets/$dataset/frame_%05d.png', $i));
+ system('ln', '-s', $pwd . $filename, sprintf('./datasets/$dataset/frame_%05d.png', $i));
+ }
+ $last_fn = $filename;
+ $i += 1;
+ }
+}
+
+if (defined $endpoint) {
+ print("upload to $endpoint\n");
+ system("curl",
+ "-X", "POST",
+ "-F", "folder_id=$folder_id",
+ "-F", "module=$module",
+ "-F", "name=$dataset.mov",
+ "-F", "url=https://s3.amazonaws.com/i.asdf.us/cortex/lens/data/$folder_id/$dataset.mov",
+ "-F", "dataset=$dataset",
+ "-F", "activity=splice",
+ "-F", "generated=false",
+ "-F", "processed=true",
+ "-F", "datatype=video",
+ $endpoint
+ );
+}
+
+END {
+ # chdir($parent_dir);
+}