Difference between revisions of "Hugin Batch Processor"

From PanoTools.org Wiki
Jump to navigation Jump to search
(updated ptbatchergui-mac download url)
(13 intermediate revisions by 3 users not shown)
Line 3: Line 3:
  
 
'''Hugin Batch Processor''' consists of a list of projects. Projects in the list are ordered in sequential order. By default, the list is reinstated every time you open the application. What is more, entire queue of projects can be saved and reopened later using buttons Clear Batch, Open Batch, Save Batch.
 
'''Hugin Batch Processor''' consists of a list of projects. Projects in the list are ordered in sequential order. By default, the list is reinstated every time you open the application. What is more, entire queue of projects can be saved and reopened later using buttons Clear Batch, Open Batch, Save Batch.
 
There are 2 interfaces to the queue: '''PTBatcher''' provides a command line interface and '''PTBatcherGUI''' provides a graphical user interface.
 
  
 
= Installation on Mac OS X =
 
= Installation on Mac OS X =
At least on Mac OS X you have to download and install the BatchProcessor separately. You will find it at the [http://sourceforge.net/projects/hugin/files/hugin/ Sourceforge page] inside the folder for the latest version, e.g. [http://sourceforge.net/projects/hugin/files/hugin/hugin-2011.0/ptbatchergui-mac-2011.0.0.dmg/download ptbatchergui-mac-2011.0.0.dmg]. Just copy the app into the same folder as hugin and run it.
+
Versions before the 2011.2.0 series required you to separately download and install the BatchProcessor. You will find the 2011.0.0 and older versions at the [http://sourceforge.net/projects/hugin/files/hugin/ Sourceforge page] inside the folder for the latest version, e.g. [http://sourceforge.net/projects/hugin/files/hugin/hugin-2011.0/ptbatchergui-mac-2011.0.0.dmg/download ptbatchergui-mac-2011.0.0.dmg]. Just copy the app into the same folder as hugin and run it.
 +
The compressed disk image (DMGs) versions as of 2011.2.0 and newer contain Hugin, PTBatcherGui and calibrate_lens_gui all in one dmg.
  
 
= Usage =
 
= Usage =
Just create several project files (do everything and just skip the export step), load them in the batch processor and start the process. This way you can run several large project unattended. The output filename will be the same as the projects name (xyz.pto -> xyz.tif) in the same folder.
 
  
At least on Mac OS X there are some minor things to pay attention to:
+
Just create several project files (do everything and just skip the export step), load them in the batch processor and start the process. This way you can run several large projects unattended. The output file name will be the same as the name of the corresponding project file (xyz.pto -> xyz.tif) and is saved in the same folder.
  
You should only add the project files you want to process by using the "add project" (see below) or the menu "File - Add Project". Be aware that you will not be able to delete or deactivate a single project from the list - you will have to clean up the whole list using the menu "File - Clean List". If you want to process all projects inside a folder, just use the "folder search" (see below). Apart from this, all works fine.  
+
At least on Mac OS X there are some minor issues to pay attention to (This should be fixed in 2011.1, rev. 43043d2742e4):
 +
* You should only add the project files you want to process by using the "add project" (see below) or the menu "File - Add Project". Be aware that you will not be able to delete or deactivate a single project from the list - you will have to clean up the whole list using the menu "File - Clean List".<br>If you want to process all projects inside a folder, just use the "folder search" (see below).  
 +
* Some older entries in PTBatcherGUI's list view (those with status "File missing") may not be removable by clicking the 'minus' symbol or the "Remove complete" button.<br>To remove those just close PTBatcherGui, open it again and immediately select one of the missing pto files and start deleting them using the 'minus' symbol. As an alternative, use the button "Remove completed"  on the right side which will remove all completed projects in one go.
 +
 
 +
 
 +
Apart from this, all works fine.
  
 
= Flag options =
 
= Flag options =
Line 21: Line 24:
  
 
* '''parallel execution''': Execute stitching of projects in the list parallel rather than in sequential order. Check this only if you are certain your computer is up for the task of stitching multiple projects at the same time.
 
* '''parallel execution''': Execute stitching of projects in the list parallel rather than in sequential order. Check this only if you are certain your computer is up for the task of stitching multiple projects at the same time.
* '''delete .pto files''': After stitching of each projects ends, Batch Processor will delete the project file of the currently processed project. Be careful, deleted files are lost!
 
 
* '''overwrite always''': Always(for each project) overwrite output filename if it exists. Otherwise, you will get a dialog box whether you want to overwrite files or not.
 
* '''overwrite always''': Always(for each project) overwrite output filename if it exists. Otherwise, you will get a dialog box whether you want to overwrite files or not.
 
* '''Shutdown when done''': Turn off computer when batch process ends.
 
* '''Shutdown when done''': Turn off computer when batch process ends.
 +
* '''Remove finished projects''': If checked successful finished projects will be automatic removed from the queue. Otherwise the items remains in the queue and the user is responsible for the queue management.
 +
* '''Automatic stitch after assistant''': If checked successful detected projects (projects in the assistant queue) will be added the stitching queue and will therefore automatically stitched.
  
 
= Functions =
 
= Functions =
Line 58: Line 62:
 
With File->Search directory for...->Projects you can search recursively in the given folder for (existing) project files and appends them to (stitching) queue.
 
With File->Search directory for...->Projects you can search recursively in the given folder for (existing) project files and appends them to (stitching) queue.
  
=== New project files ===
+
=== Image sets (create project files) ===
  
First select a folder in which should be searched. After pressing start is searches for image files in the folder (and optionally its sub folders). It uses the information stored in the EXIF data to decide which images could belong to a panorama. This works only in one folder level, it does not match images in different folders. (It uses camera maker, camera model, focal length, image size and date/time for this decision.)  
+
First select a folder in which PTBatcherGui should search for image sets. After pressing start it will search for image files in the folder (and optionally its sub folders). It uses the information stored in the EXIF data to decide which images could belong to a an image set forming a panorama. This works only in one folder level, it does not match images in different folders. (The algorithm uses camera maker, camera model, focal length, image size and date/time for this decision.)  
  
After the search has finished it shows a list of the found panoramas. With '''Send selected panoramas to queue''' the project files are created and send to the assistant queue. You can deselect individual panoramas from this processing step by untick the panorama.
+
After the search has finished it shows a list of the found panoramas. With '''Send selected panoramas to queue''' the project files are created and sent to the assistant queue. You can deselect individual panoramas from this processing step by untick the panorama.
  
 
The project files are named with the selected name scheme
 
The project files are named with the selected name scheme
Line 68: Line 72:
 
* First file - last file.pto: The project files will by named by the first and last image of the panorama.
 
* First file - last file.pto: The project files will by named by the first and last image of the panorama.
 
* Foldername.pto: In this case the project file is named like the containing folder.
 
* Foldername.pto: In this case the project file is named like the containing folder.
 +
* Template from preferences: This will use the template defined in the [[Hugin_Preferences|preferences]] of Hugin.
 
Existing project files will not be overwritten, instead it appends an increasing number.
 
Existing project files will not be overwritten, instead it appends an increasing number.
  
If the images are shoot with auto bracketing it tries to generate the appropriate stacks. In this case check that you default control point generator setting is one which works with stacks (check [[Hugin_Preferences#Control_Point_Detectors|Preferences in Hugin]] and [[Hugin Parameters for Control Point Detectors dialog|control point detector parameters]]).
+
If the images are shot with auto bracketing it tries to generate the appropriate stacks. In this case check that your default control point generator setting is such that it works with stacks (check [[Hugin_Preferences#Control_Point_Detectors|Preferences in Hugin]] and [[Hugin Parameters for Control Point Detectors dialog|control point detector parameters]]).
If you shoot from a tripod then you can select also '''Create links'''. This will link the positions of all images of one stack. If you deselect this option, it will create the stacks but will not link the positions of the images (e.g. when shooting free hand).
+
 
 +
On the options tab you can fine-tune the algorithm:
 +
* '''Minimum number of images''': This is the minimal number of images a sequence of consecutive images must have to be detected as panorama.
 +
* '''Maximum time difference''': The maximal time between 2 images to be detected as consecutive/related images.
 +
* '''Create links''': Select this option, if you shoot from a tripod. This will link the positions of all images of one stack. If you deselect this option, it will create the stacks but will not link the positions of the images (e.g. when shooting free hand).
 +
* '''Load distortion data''': Try to automatic load distortion data from lens database. Otherwise the distortion values are initialized to zero and will be calculated by the optimizer.
 +
* '''Load vignetting data''': Try to automatic load vignetting data from lens database. Otherwise the distortion values are initialized to zero and are calculated by the optimizer.
 +
 
 +
If you set the tickmark '''Automatic stitch after assistant''', PTBatcherGui will first run the assistant on all found panoramas, thereby creating the complete project files, and then stitch all created projects.
  
 
= Command line switches =
 
= Command line switches =
  
== PTBatcherGUI ==
+
To add a project to the (stitching) queue use
 +
    PTBatcherGUI project.pto output_prefix
 +
 
 +
on Mac OS X use
 +
    open PTBatcherGui.app --args project.pto output_prefix
  
To add a project to the (stitching) queue use
 
  
    PTBatcherGUI project.pto output_prefix
 
  
 
You can also add several projects
 
You can also add several projects
 +
    PTBatcherGUI project1.pto prefix1 project2.pto prefix2
 +
 +
on Mac OS X use
 +
    open PTBatcherGui.app --args project1.pto prefix1 project2.pto prefix2
  
    PTBatcherGUI project1.pto prefix1 project2.pto prefix2
 
  
 
The prefix is optionally. If you don't provide a prefix, the filename (without extension) of the project file is used as prefix.
 
The prefix is optionally. If you don't provide a prefix, the filename (without extension) of the project file is used as prefix.
 +
  
 
You can also add a project to the assistant queue.
 
You can also add a project to the assistant queue.
  
 
     PTBatcherGUI --assistant project.pto
 
     PTBatcherGUI --assistant project.pto
 +
 +
and on Mac OS X
 +
    open PTBatcherGui.app --args --assistant project.pto
  
 
Some of the above described options can be accessed also by command line switches:
 
Some of the above described options can be accessed also by command line switches:
  
*  /h, --help           show this help message
+
<code> /h, --help </code>          show this help message
*  /b, --batch           run batch immediately
+
<code> /b, --batch </code>          run batch immediately
*  /p, --parallel       run batch projects in parallel
+
<code> /p, --parallel </code>      run batch projects in parallel
*  /d, --delete         delete *.pto files after stitching
+
<code> /d, --delete </code>        delete *.pto files after stitching
*  /o, --overwrite       overwrite previous files without asking
+
<code> /o, --overwrite </code>      overwrite previous files without asking
*  /s, --shutdown       shutdown computer after batch is complete
+
<code> /s, --shutdown </code>      shutdown computer after batch is complete
*  /v, --verbose         show verbose output when processing projects
+
<code>/v, --verbose </code>        show verbose output when processing projects
  
 
Please keep in mind that only one instance of PTBatcherGUI can run at one time. Starting PTBatcherGUI a second time with command line switches will influence the already running instance and not start a second instance with own options.
 
Please keep in mind that only one instance of PTBatcherGUI can run at one time. Starting PTBatcherGUI a second time with command line switches will influence the already running instance and not start a second instance with own options.
 
== PTBatcher ==
 
 
PTBatcher provide a very similar interface like the GUI version. It works with the same list as the GUI version.
 
Attention: Only the short name of the switches are recognized.
 
 
*  -a file        add project to queue. Unless -o option is present, the default prefix is appointed.
 
*  -o              output prefix (together with -a option)
 
*  -l              list all projects in batch queue
 
*  -c              clear all projects from batch queue
 
*  -x id          remove project with specified id
 
*  -r              reset all projects to waiting status
 
*  -b              start batch process
 
*  -p              use parallel processing (together with -b option)
 
*  -d              delete .pto files when complete (together with -b option)
 
*  -s              shutdown computer when complete (together with -b option)
 
*  -v              verbose mode
 
*  -h              print this
 
 
 
  
 
[[Category:Software:Hugin]]
 
[[Category:Software:Hugin]]

Revision as of 08:43, 1 May 2014

Batch Processor is a component of hugin that provides functionality to stitch multiple projects in a batch queue. Its goal is to make stitching of multiple projects faster. The process of stitching multiple projects is simplified using a queue of projects. User can add/edit/delete projects in the queue. The Batch Processor can also queue the creation of the final project. In this case it runs the same steps as in the Hugin Assistant tab.

Hugin Batch Processor consists of a list of projects. Projects in the list are ordered in sequential order. By default, the list is reinstated every time you open the application. What is more, entire queue of projects can be saved and reopened later using buttons Clear Batch, Open Batch, Save Batch.

Installation on Mac OS X

Versions before the 2011.2.0 series required you to separately download and install the BatchProcessor. You will find the 2011.0.0 and older versions at the Sourceforge page inside the folder for the latest version, e.g. ptbatchergui-mac-2011.0.0.dmg. Just copy the app into the same folder as hugin and run it. The compressed disk image (DMGs) versions as of 2011.2.0 and newer contain Hugin, PTBatcherGui and calibrate_lens_gui all in one dmg.

Usage

Just create several project files (do everything and just skip the export step), load them in the batch processor and start the process. This way you can run several large projects unattended. The output file name will be the same as the name of the corresponding project file (xyz.pto -> xyz.tif) and is saved in the same folder.

At least on Mac OS X there are some minor issues to pay attention to (This should be fixed in 2011.1, rev. 43043d2742e4):

  • You should only add the project files you want to process by using the "add project" (see below) or the menu "File - Add Project". Be aware that you will not be able to delete or deactivate a single project from the list - you will have to clean up the whole list using the menu "File - Clean List".
    If you want to process all projects inside a folder, just use the "folder search" (see below).
  • Some older entries in PTBatcherGUI's list view (those with status "File missing") may not be removable by clicking the 'minus' symbol or the "Remove complete" button.
    To remove those just close PTBatcherGui, open it again and immediately select one of the missing pto files and start deleting them using the 'minus' symbol. As an alternative, use the button "Remove completed" on the right side which will remove all completed projects in one go.


Apart from this, all works fine.

Flag options

Batch process is also influenced by the following check boxes:

  • parallel execution: Execute stitching of projects in the list parallel rather than in sequential order. Check this only if you are certain your computer is up for the task of stitching multiple projects at the same time.
  • overwrite always: Always(for each project) overwrite output filename if it exists. Otherwise, you will get a dialog box whether you want to overwrite files or not.
  • Shutdown when done: Turn off computer when batch process ends.
  • Remove finished projects: If checked successful finished projects will be automatic removed from the queue. Otherwise the items remains in the queue and the user is responsible for the queue management.
  • Automatic stitch after assistant: If checked successful detected projects (projects in the assistant queue) will be added the stitching queue and will therefore automatically stitched.

Functions

Queue management

The management of the queue can done by the appropriate menu items or by the corresponding toolbar buttons.

  • Add project files to queue
  • Remove project file from queue (you need to select the project file in the list)
  • The complete queue list can be saved and loaded from disc (The current active list is automatically saved at the end. You don't need to save it explicitly.)
  • The complete list can be cleared.

Item management

The single items in the queue can be modified by the buttons on the right side of the window

  • Remove complete will remove all items form the queue which were successfully finished.
  • Change prefix will change the output prefix. This is only possible if the item is in the stitching queue. It does not work for items in the assistant queue.
  • Reset project/Reset all resets the status of the selected project/all projects to default value. This allows to execute the stitching again.
  • Edit with Hugin opens the selected in Hugin to modify it.
  • The order of the items can be change with Move project up and Move project down
  • You can also add an arbitrary command to the queue with Add application.

Executing queue

The queue can be started, paused/resumed and stopped with the toolbar buttons. You can also skip one project.

Automation

PTBatcherGUI provides some more features for automation. This can be accessed by File->Search directory for.

Existing project files

With File->Search directory for...->Projects you can search recursively in the given folder for (existing) project files and appends them to (stitching) queue.

Image sets (create project files)

First select a folder in which PTBatcherGui should search for image sets. After pressing start it will search for image files in the folder (and optionally its sub folders). It uses the information stored in the EXIF data to decide which images could belong to a an image set forming a panorama. This works only in one folder level, it does not match images in different folders. (The algorithm uses camera maker, camera model, focal length, image size and date/time for this decision.)

After the search has finished it shows a list of the found panoramas. With Send selected panoramas to queue the project files are created and sent to the assistant queue. You can deselect individual panoramas from this processing step by untick the panorama.

The project files are named with the selected name scheme

  • PanoramaXX.pto: This will generate project files: panorama0.pto, panorama1.pto,...
  • First file - last file.pto: The project files will by named by the first and last image of the panorama.
  • Foldername.pto: In this case the project file is named like the containing folder.
  • Template from preferences: This will use the template defined in the preferences of Hugin.

Existing project files will not be overwritten, instead it appends an increasing number.

If the images are shot with auto bracketing it tries to generate the appropriate stacks. In this case check that your default control point generator setting is such that it works with stacks (check Preferences in Hugin and control point detector parameters).

On the options tab you can fine-tune the algorithm:

  • Minimum number of images: This is the minimal number of images a sequence of consecutive images must have to be detected as panorama.
  • Maximum time difference: The maximal time between 2 images to be detected as consecutive/related images.
  • Create links: Select this option, if you shoot from a tripod. This will link the positions of all images of one stack. If you deselect this option, it will create the stacks but will not link the positions of the images (e.g. when shooting free hand).
  • Load distortion data: Try to automatic load distortion data from lens database. Otherwise the distortion values are initialized to zero and will be calculated by the optimizer.
  • Load vignetting data: Try to automatic load vignetting data from lens database. Otherwise the distortion values are initialized to zero and are calculated by the optimizer.

If you set the tickmark Automatic stitch after assistant, PTBatcherGui will first run the assistant on all found panoramas, thereby creating the complete project files, and then stitch all created projects.

Command line switches

To add a project to the (stitching) queue use

   PTBatcherGUI project.pto output_prefix

on Mac OS X use

   open PTBatcherGui.app --args project.pto output_prefix


You can also add several projects

   PTBatcherGUI project1.pto prefix1 project2.pto prefix2

on Mac OS X use

   open PTBatcherGui.app --args project1.pto prefix1 project2.pto prefix2


The prefix is optionally. If you don't provide a prefix, the filename (without extension) of the project file is used as prefix.


You can also add a project to the assistant queue.

   PTBatcherGUI --assistant project.pto

and on Mac OS X

   open PTBatcherGui.app --args --assistant project.pto

Some of the above described options can be accessed also by command line switches:

  • /h, --help show this help message
  • /b, --batch run batch immediately
  • /p, --parallel run batch projects in parallel
  • /d, --delete delete *.pto files after stitching
  • /o, --overwrite overwrite previous files without asking
  • /s, --shutdown shutdown computer after batch is complete
  • /v, --verbose show verbose output when processing projects

Please keep in mind that only one instance of PTBatcherGUI can run at one time. Starting PTBatcherGUI a second time with command line switches will influence the already running instance and not start a second instance with own options.