From: <bru...@us...> - 2008-09-01 21:43:03
|
Revision: 877 http://panotools.svn.sourceforge.net/panotools/?rev=877&view=rev Author: brunopostle Date: 2008-09-01 21:43:11 +0000 (Mon, 01 Sep 2008) Log Message: ----------- Rules to stitch the projects. Unfortunately the output filename can't be known until after the .pto file is generated, so these are dummy targets. Modified Paths: -------------- trunk/Panotools-Script/bin/panostart Modified: trunk/Panotools-Script/bin/panostart =================================================================== --- trunk/Panotools-Script/bin/panostart 2008-09-01 21:39:42 UTC (rev 876) +++ trunk/Panotools-Script/bin/panostart 2008-09-01 21:43:11 UTC (rev 877) @@ -49,12 +49,15 @@ my $rule_ptos = new File::Pto::Mk::Rule; -$rule_ptos->Targets ('ptos'); +$rule_ptos->Targets ('pto'); my $rule_mks = new File::Pto::Mk::Rule; -$rule_mks->Targets ('mks'); +$rule_mks->Targets ('mk'); +my $rule_imgs = new File::Pto::Mk::Rule; +$rule_imgs->Targets ('images'); my @rules_pto; my @rules_mk; +my @rules_img; for my $group (@{$groups}) { my $a = $group->[0]; @@ -66,6 +69,7 @@ $rule_ptos->Prerequisites ("$stub.pto"); $rule_mks->Prerequisites ("$stub.pto.mk"); + $rule_imgs->Prerequisites ("$stub"); my $rule_pto = new File::Pto::Mk::Rule; $rule_pto->Targets ("$stub.pto"); @@ -85,15 +89,28 @@ $rule_mk->Command ('pto2mk', '-o', "$stub.pto.mk", '-p', $stub, "$stub.pto"); push @rules_mk, $rule_mk; + + my $rule_img = new File::Pto::Mk::Rule; + $rule_img->Targets ("$stub"); + $rule_img->Prerequisites ("$stub.pto", "$stub.pto.mk", @{$group}); + $rule_img->Command ('make', '-e', '-f', "$stub.pto.mk", 'all', 'clean'); + + push @rules_img, $rule_img; } +my $rule_all = new File::Pto::Mk::Rule; +$rule_all->Targets ('all'); +$rule_all->Prerequisites ('images'); + open MAKE, ">", $path_makefile or die "cannot write-open $path_makefile"; -print MAKE "all : mks\n\n"; +print MAKE $rule_all->Assemble; print MAKE $rule_ptos->Assemble; print MAKE $rule_mks->Assemble; +print MAKE $rule_imgs->Assemble; print MAKE map {$_->Assemble} @rules_pto; print MAKE map {$_->Assemble} @rules_mk; +print MAKE map {$_->Assemble} @rules_img; close MAKE; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bru...@us...> - 2008-09-06 11:38:04
|
Revision: 879 http://panotools.svn.sourceforge.net/panotools/?rev=879&view=rev Author: brunopostle Date: 2008-09-06 11:38:14 +0000 (Sat, 06 Sep 2008) Log Message: ----------- Typo ;-) Modified Paths: -------------- trunk/Panotools-Script/bin/panostart Modified: trunk/Panotools-Script/bin/panostart =================================================================== --- trunk/Panotools-Script/bin/panostart 2008-09-06 11:34:40 UTC (rev 878) +++ trunk/Panotools-Script/bin/panostart 2008-09-06 11:38:14 UTC (rev 879) @@ -19,7 +19,7 @@ 'f|projection=i' => \$projection, 'v|fov=s' => \$deg_fov, 'k|selection=s' => \$crop_s, - 'l|locquatious' => \$verbose, + 'l|loquacious' => \$verbose, 'h|help' => \$help); pod2usage (-verbose => 2) if $help; @@ -191,7 +191,7 @@ -v | --fov Horizontal field of view in degrees -k | --selection Crop selection boundary, eg -459,2459,-57,2861 -h | --help Outputs help documentation. - -l | --locquatious Verbose output listing targets and numbers of images. + -l | --loquacious Verbose output listing targets and numbers of images. =head1 DESCRIPTION This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bru...@us...> - 2008-09-15 23:05:44
|
Revision: 887 http://panotools.svn.sourceforge.net/panotools/?rev=887&view=rev Author: brunopostle Date: 2008-09-15 23:05:54 +0000 (Mon, 15 Sep 2008) Log Message: ----------- Add some comments to the generated Makefile Modified Paths: -------------- trunk/Panotools-Script/bin/panostart Modified: trunk/Panotools-Script/bin/panostart =================================================================== --- trunk/Panotools-Script/bin/panostart 2008-09-09 21:10:32 UTC (rev 886) +++ trunk/Panotools-Script/bin/panostart 2008-09-15 23:05:54 UTC (rev 887) @@ -5,6 +5,7 @@ use Image::ExifTool; use Getopt::Long; use Pod::Usage; +use Panotools::Script; my $path_makefile; my $d_inc = 15; @@ -14,6 +15,8 @@ my $help = 0; my $verbose = 0; +my @argv_save = @ARGV; + GetOptions ('o|output=s' => \$path_makefile, 't|time=s' => \$d_inc, 'f|projection=i' => \$projection, @@ -143,6 +146,8 @@ open MAKE, ">", $path_makefile or die "cannot write-open $path_makefile"; +print MAKE "# Created by Panotools::Script $Panotools::Script::VERSION\n"; +print MAKE "# $0 ". join (' ', @argv_save). "\n\n"; print MAKE $rule_phony->Assemble; print MAKE $rule_all->Assemble; print MAKE $rule_ptos->Assemble; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bru...@us...> - 2008-10-09 22:42:29
|
Revision: 905 http://panotools.svn.sourceforge.net/panotools/?rev=905&view=rev Author: brunopostle Date: 2008-10-09 22:42:22 +0000 (Thu, 09 Oct 2008) Log Message: ----------- Some rules for creating qtvr and conformal versions of equirectanguars Modified Paths: -------------- trunk/Panotools-Script/bin/panostart Modified: trunk/Panotools-Script/bin/panostart =================================================================== --- trunk/Panotools-Script/bin/panostart 2008-10-06 22:53:22 UTC (rev 904) +++ trunk/Panotools-Script/bin/panostart 2008-10-09 22:42:22 UTC (rev 905) @@ -67,6 +67,8 @@ my @rules_ldr_blended; my @rules_ldr_stacked_blended; my @rules_hdr_blended; +my @rules_ldr_blended_equirect; +my @rules_ldr_stacked_blended_equirect; for my $group (@{$groups}) { @@ -128,6 +130,23 @@ push @rules_ldr_stacked_blended, $rule_ldr_stacked_blended; + my $rule_ldr_blended_equirect = new File::Pto::Mk::Rule; + $rule_ldr_blended_equirect->Targets ("$stub.mov", "$stub-sky.jpg", "$stub-planet.jpg", "$stub-mercator.jpg"); + $rule_ldr_blended_equirect->Prerequisites ("$stub.pto", "$stub.pto.mk", "$stub.tif"); + $rule_ldr_blended_equirect->Command ('make', '-e', '-f', '$(HUGINDATADIR)/Makefile.equirect.mk', + 'equirect_all', 'equirect_clean', "PTO=$stub.pto", 'FUSED_SUFFIX='); + + push @rules_ldr_blended_equirect, $rule_ldr_blended_equirect; + + my $stub_f = $stub .'_fused'; + my $rule_ldr_stacked_blended_equirect = new File::Pto::Mk::Rule; + $rule_ldr_stacked_blended_equirect->Targets ("$stub_f.mov", "$stub_f-sky.jpg", "$stub_f-planet.jpg", "$stub_f-mercator.jpg"); + $rule_ldr_stacked_blended_equirect->Prerequisites ("$stub.pto", "$stub.pto.mk", "$stub_f.tif"); + $rule_ldr_stacked_blended_equirect->Command ('make', '-e', '-f', '$(HUGINDATADIR)/Makefile.equirect.mk', + 'equirect_all', 'equirect_clean', "PTO=$stub.pto", 'FUSED_SUFFIX=_fused'); + + push @rules_ldr_stacked_blended_equirect, $rule_ldr_stacked_blended_equirect; + my $rule_hdr_blended = new File::Pto::Mk::Rule; $rule_hdr_blended->Targets ($stub ."_hdr.exr"); $rule_hdr_blended->Prerequisites ("$stub.pto", "$stub.pto.mk", @{$group}); @@ -154,11 +173,14 @@ print MAKE $rule_mks->Assemble; print MAKE $rule_imgs->Assemble; print MAKE "MAKE_EXTRA_ARGS=clean\n"; +print MAKE "HUGINDATADIR=/usr/share/hugin\n"; print MAKE "AP_EXTRA_ARGS=--clean\n\n"; print MAKE map {$_->Assemble} @rules_pto; print MAKE map {$_->Assemble} @rules_mk; print MAKE map {$_->Assemble} @rules_ldr_blended; print MAKE map {$_->Assemble} @rules_ldr_stacked_blended; +print MAKE map {$_->Assemble} @rules_ldr_blended_equirect; +print MAKE map {$_->Assemble} @rules_ldr_stacked_blended_equirect; print MAKE map {$_->Assemble} @rules_hdr_blended; close MAKE; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <bru...@us...> - 2009-11-04 22:40:11
|
Revision: 1128 http://panotools.svn.sourceforge.net/panotools/?rev=1128&view=rev Author: brunopostle Date: 2009-11-04 22:39:59 +0000 (Wed, 04 Nov 2009) Log Message: ----------- Rearrange panostart rules for HDR and 'blended then fused' output Modified Paths: -------------- trunk/Panotools-Script/bin/panostart Modified: trunk/Panotools-Script/bin/panostart =================================================================== --- trunk/Panotools-Script/bin/panostart 2009-11-04 21:14:54 UTC (rev 1127) +++ trunk/Panotools-Script/bin/panostart 2009-11-04 22:39:59 UTC (rev 1128) @@ -36,23 +36,33 @@ my $rule_phony = new Panotools::Makefile::Rule; $rule_phony->Targets ('.PHONY'); -$rule_phony->Prerequisites (qw/all images pto mk/); +$rule_phony->Prerequisites (qw/all images pto mk qtvr hdr/); my $rule_all = new Panotools::Makefile::Rule; $rule_all->Targets ('all'); $rule_all->Prerequisites ('images'); +# some phony targets, prerequisites will be populated later + my $rule_ptos = new Panotools::Makefile::Rule; $rule_ptos->Targets ('pto'); + my $rule_mks = new Panotools::Makefile::Rule; $rule_mks->Targets ('mk'); + my $rule_imgs = new Panotools::Makefile::Rule; $rule_imgs->Targets ('images'); + my $rule_movs = new Panotools::Makefile::Rule; $rule_movs->Targets ('qtvr'); -push @makefile, $rule_phony, $rule_all, $rule_ptos, $rule_mks, $rule_imgs, $rule_movs; +my $rule_hdrs = new Panotools::Makefile::Rule; +$rule_hdrs->Targets ('hdr'); +push @makefile, $rule_phony, $rule_all, $rule_ptos, $rule_mks, $rule_imgs, $rule_movs, $rule_hdrs; + +# some variable definitions + my $make_extra_args = new Panotools::Makefile::Variable ('MAKE_EXTRA_ARGS', 'shell'); $make_extra_args->Values ('clean'); @@ -62,16 +72,16 @@ my $ap_extra_args = new Panotools::Makefile::Variable ('AP_EXTRA_ARGS', 'shell'); $ap_extra_args->Values ('--clean'); -push @makefile, $make_extra_args, $hugindatadir, $ap_extra_args; +my $pto2mk = new Panotools::Makefile::Variable ('PTO2MK', 'shell'); +$pto2mk->Values ('pto2mk'); -my @rules_pto; -my @rules_mk; -my @rules_ldr_blended; -my @rules_ldr_stacked_blended; -my @rules_hdr_blended; -my @rules_ldr_blended_equirect; -my @rules_ldr_stacked_blended_equirect; +my $matchnshift = new Panotools::Makefile::Variable ('MATCHNSHIFT', 'shell'); +$matchnshift->Values ('match-n-shift'); +push @makefile, $make_extra_args, $hugindatadir, $ap_extra_args, $pto2mk, $matchnshift; + +# split the list of photos into likely panoramas + my $all_photos = new Panotools::Photos (@ARGV); for my $photo_set ($all_photos->SplitInterval ($d_inc)) @@ -79,85 +89,93 @@ next if scalar $photo_set->Paths == 1; my $stub = $photo_set->Stub; + my $stub_fused = $stub .'_fused'; + my $stub_blended_fused = $stub .'_blended_fused'; - $rule_ptos->Prerequisites ("$stub.pto"); - $rule_mks->Prerequisites ("$stub.pto.mk"); + # decide if set is a normal 'seam blended' panorama or a bracketed 'blended and exposure fused' panorama if ($nostacks or $photo_set->Bracketed == 0) { - $rule_imgs->Prerequisites ($stub .".tif"); - $rule_movs->Prerequisites ($stub .".mov"); - print STDERR $stub .".tif: ". scalar $photo_set->Paths ." images\n" if $verbose; + $rule_imgs->Prerequisites ("$stub.tif"); + $rule_movs->Prerequisites ("$stub.mov"); + print STDERR "$stub.tif: ". scalar $photo_set->Paths ." images\n" if $verbose; } else { - $rule_imgs->Prerequisites ($stub ."_fused.tif"); - $rule_movs->Prerequisites ($stub ."_fused.mov"); - print STDERR $stub ."_fused.tif: ". scalar $photo_set->Paths ." images\n" if $verbose; + $rule_imgs->Prerequisites ("$stub_fused.tif"); + $rule_movs->Prerequisites ("$stub_fused.mov"); + $rule_hdrs->Prerequisites ($stub ."_hdr.exr"); + print STDERR "$stub_fused.tif: ". scalar $photo_set->Paths ." images\n" if $verbose; } + # rules for pto project files and .pto.mk files + + $rule_ptos->Prerequisites ("$stub.pto"); + $rule_mks->Prerequisites ("$stub.pto.mk"); + my $rule_pto = new Panotools::Makefile::Rule; $rule_pto->Targets ("$stub.pto"); $rule_pto->Prerequisites ($photo_set->Paths); - my @command = ('match-n-shift'); + + my @command = ('$(MATCHNSHIFT)'); push @command, ('--stacks') unless $nostacks; push @command, ('--align', '$(AP_EXTRA_ARGS)', '--output', "$stub.pto"); push @command, ('--projection', $projection) if defined $projection; push @command, ('--fov', $deg_fov) if defined $deg_fov; push @command, ('--selection', $crop_s) if defined $crop_s; + $rule_pto->Command (@command, $photo_set->Paths); + push @makefile, $rule_pto; - push @rules_pto, $rule_pto; - my $rule_mk = new Panotools::Makefile::Rule; $rule_mk->Targets ("$stub.pto.mk"); $rule_mk->Prerequisites ("$stub.pto"); - $rule_mk->Command ('pto2mk', '-o', "$stub.pto.mk", '-p', $stub, "$stub.pto"); + $rule_mk->Command ('$(PTO2MK)', '-o', "$stub.pto.mk", '-p', $stub, "$stub.pto"); + push @makefile, $rule_mk; - push @rules_mk, $rule_mk; + # rules for all possible output images my $rule_ldr_blended = new Panotools::Makefile::Rule; $rule_ldr_blended->Targets ("$stub.tif"); $rule_ldr_blended->Prerequisites ("$stub.pto", "$stub.pto.mk", $photo_set->Paths); $rule_ldr_blended->Command ('$(MAKE)', '-e', '-f', "$stub.pto.mk", "$stub.tif", '$(MAKE_EXTRA_ARGS)'); + push @makefile, $rule_ldr_blended; - push @rules_ldr_blended, $rule_ldr_blended; - - my $stub_f = $stub .'_fused'; my $rule_ldr_stacked_blended = new Panotools::Makefile::Rule; - $rule_ldr_stacked_blended->Targets ("$stub_f.tif"); + $rule_ldr_stacked_blended->Targets ("$stub_fused.tif"); $rule_ldr_stacked_blended->Prerequisites ("$stub.pto", "$stub.pto.mk", $photo_set->Paths); - $rule_ldr_stacked_blended->Command ('$(MAKE)', '-e', '-f', "$stub.pto.mk", "$stub_f.tif", '$(MAKE_EXTRA_ARGS)'); + $rule_ldr_stacked_blended->Command ('$(MAKE)', '-e', '-f', "$stub.pto.mk", "$stub_fused.tif", '$(MAKE_EXTRA_ARGS)'); + push @makefile, $rule_ldr_stacked_blended; - push @rules_ldr_stacked_blended, $rule_ldr_stacked_blended; + my $rule_ldr_exposure_layers_fused = new Panotools::Makefile::Rule; + $rule_ldr_exposure_layers_fused->Targets ("$stub_blended_fused.tif"); + $rule_ldr_exposure_layers_fused->Prerequisites ("$stub.pto", "$stub.pto.mk", $photo_set->Paths); + $rule_ldr_exposure_layers_fused->Command ('$(MAKE)', '-e', '-f', "$stub.pto.mk", "$stub_blended_fused.tif", '$(MAKE_EXTRA_ARGS)'); + push @makefile, $rule_ldr_exposure_layers_fused; + my $rule_hdr_blended = new Panotools::Makefile::Rule; + $rule_hdr_blended->Targets ($stub ."_hdr.exr"); + $rule_hdr_blended->Prerequisites ("$stub.pto", "$stub.pto.mk", $photo_set->Paths); + $rule_hdr_blended->Command ('$(MAKE)', '-e', '-f', "$stub.pto.mk", $stub ."_hdr.exr", '$(MAKE_EXTRA_ARGS)'); + push @makefile, $rule_hdr_blended; + + # rules for secondary output (QTVR, little planets etc...) + my $rule_ldr_blended_equirect = new Panotools::Makefile::Rule; $rule_ldr_blended_equirect->Targets ("$stub.mov", "$stub-sky.jpg", "$stub-planet.jpg", "$stub-mercator.jpg"); $rule_ldr_blended_equirect->Prerequisites ("$stub.pto", "$stub.pto.mk", "$stub.tif"); $rule_ldr_blended_equirect->Command ('$(MAKE)', '-e', '-f', '$(HUGINDATADIR)/Makefile.equirect.mk', 'equirect_all', 'equirect_clean', "PTO=$stub.pto", 'FUSED_SUFFIX='); + push @makefile, $rule_ldr_blended_equirect; - push @rules_ldr_blended_equirect, $rule_ldr_blended_equirect; - my $rule_ldr_stacked_blended_equirect = new Panotools::Makefile::Rule; - $rule_ldr_stacked_blended_equirect->Targets ("$stub_f.mov", "$stub_f-sky.jpg", "$stub_f-planet.jpg", "$stub_f-mercator.jpg"); - $rule_ldr_stacked_blended_equirect->Prerequisites ("$stub.pto", "$stub.pto.mk", "$stub_f.tif"); + $rule_ldr_stacked_blended_equirect->Targets ("$stub_fused.mov", "$stub_fused-sky.jpg", "$stub_fused-planet.jpg", "$stub_fused-mercator.jpg"); + $rule_ldr_stacked_blended_equirect->Prerequisites ("$stub.pto", "$stub.pto.mk", "$stub_fused.tif"); $rule_ldr_stacked_blended_equirect->Command ('$(MAKE)', '-e', '-f', '$(HUGINDATADIR)/Makefile.equirect.mk', 'equirect_all', 'equirect_clean', "PTO=$stub.pto", 'FUSED_SUFFIX=_fused'); - - push @rules_ldr_stacked_blended_equirect, $rule_ldr_stacked_blended_equirect; - - my $rule_hdr_blended = new Panotools::Makefile::Rule; - $rule_hdr_blended->Targets ($stub ."_hdr.exr"); - $rule_hdr_blended->Prerequisites ("$stub.pto", "$stub.pto.mk", $photo_set->Paths); - $rule_hdr_blended->Command ('$(MAKE)', '-e', '-f', "$stub.pto.mk", $stub ."_hdr.exr", '$(MAKE_EXTRA_ARGS)'); - - push @rules_hdr_blended, $rule_hdr_blended; + push @makefile, $rule_ldr_stacked_blended_equirect; } -push @makefile, @rules_pto, @rules_mk, @rules_ldr_blended, @rules_ldr_stacked_blended, - @rules_ldr_blended_equirect, @rules_ldr_stacked_blended_equirect, @rules_hdr_blended; - my $rule_self = new Panotools::Makefile::Rule; $rule_self->Targets ($path_makefile); $rule_self->Prerequisites (@ARGV); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |