Batch Processing

From iPi Docs
Jump to: navigation, search
Note: Feature is available in Pro edition only.

You can try this functionality in other editions but in this case all results will be saved in restricted trial format which prohibits export of animation.


Batch Processing is a tool useful in the following cases:

  1. Many steps are required to obtain final result. For instance, the following sequence of processing steps is quite common to obtain high quality results:
    • Track Forward starting from the first frame of Region-of-Interest.
    • Refine Backward starting from the last frame of Region-of-Interest.
    • Jitter Removal with 2 as smoothing value for all body parts.
    • One more Refine Backward starting from the last frame of Region-of-Interest.
    • One more Jitter Removal with 1 as smoothing value for all body parts.
  2. Processing of many takes and/or many video files
  3. Experimenting with different processing and post-processing settings for one and the same source video. For example:
    • Tracking with various options for shoulders, spine, head and foot.
    • Jitter Removal with various values of smoothing.
    • Trying of various actor parameters like actor's height and body mass index.

In all these cases Batch Processing allows you to avoid waiting when current processing step is completed to click button(s) to start the next step. Instead of being "babysitter" for iPi Mocap Studio now you can record a set of all required actions to batch and then start them by one click.


Processing Pass (or just Pass)
Processing operation on Region-of-Interest for iPiMotion project. Currently the following passes are available:
  • Calibration (for color cameras and for depth sensors)
  • Track Forward/Backward
  • Refine Forward/Backward
  • Apply Jitter Removal
  • Apply Motion Data for Gyro Sensor
Batch Step (or just Step)
Element of batch. Consists of the following information:
Sequence of Batch Steps. Can be saved to disk, loaded from disk, executed.

Batch Creation

  1. Switch to Batch tab.
  2. If required, clear current batch by clicking New button on the top of the tab.
  3. Click Record to Batch button (or press Ctrl+Shift+B on the keyboard).
  4. Red ball should appear in the Batch tab header.
    batch creation 1-4.png
  5. Open existing iPiMotion project or create new one and save it to disk.
    Note: Batch processing works with project files on disk. Thus before adding new steps for project to batch, the project should be saved to disk.
  6. Make all required settings for interested processing pass like Region-of-Interest, current position on time-line (current frame) and other parameters specific for the processing pass. The settings should be the same as if you were going to perform the processing pass right now.
  7. Press the button which corresponds to the interested pass.
    Note: During "Recording to Batch" such buttons are highlighted with pink background color.
  8. You will be prompted on the required action: Add to Batch or Perform Now. Choose the first option if your need to add the pass to the current batch.
    batch creation 7-8.png
  9. If needed, you can change output file name for project and/or choose input project file name from available alternatives. To do it click buttons to the right of input and output fields respectively.
  10. Also you can check values of the parameters specific for the pass by clicking "i" button to the right of the pass field.
    batch creation 9-10.png
  11. Repeat steps starting from 5 or 6 for all required processing passes, Regions-of-Interest and projects.
  12. To complete "Recording to Batch" click Stop Batch Recording button on the Batch tab or press Ctrl+Shift+B on the keyboard.
  13. Optionally, you can save resulted batch to file on disk by clicking Save... button on the top of the Batch tab.
    batch creation 12-13-v2.png

Batch Editing

The following editing operations are available for batch steps:

  1. Delete step.
  2. Move step up/down in the batch sequence.
    batch edit del and move.png
  3. Change destination file name. It's required if you want to save results of different processing stages to different files or if you're experimenting with different settings thus results for alternative settings should be in separate project files.
    batch edit output.png
  4. Choose source project from the list. This list consists of all unique output file names of previous steps in the batch which have the same source project as their input. It allows to set alternative processing chains for one and the same source project.
    batch edit input.png
Note: Undo/redo functionality is available for all manipulations with batch.

Execution of Batch Processing

Batch can be executed as soon as the following conditions are valid:

  • Current batch is not empty and contains at least one uncompleted step.

To execute batch processing just click Run Batch button on the bottom of Batch tab. As a result all processing passes from batch steps will be performed one after another.

batch execution.png

Note: If required, you can break batch execution by clicking Stop button.

After batch execution, for all executed steps additional information will appear:

Status of the step after batch execution. Can be one of the following:
  • PROCESSED — processing pass completed successfully.
  • ERROR — processing pass can't be performed due to error. To get additional information about error you can click "i" button on the right of status field.
  • CANCELED — batch execution was stopped by user while this step was in processing.
Date of step execution.
Time period of step execution.

batch after execution.png

How it Works

During batch execution the following actions are performed for each batch step:

  • Loading project from file specified as "input".
  • Adjusting of Region-of-Interest to the interval specified in the batch step.
  • Moving timeline position to the frame specified in the batch step.
  • Changing parameters of the processing pass to values saved in batch step.
  • Saving project to file specified as "output".
  • Starting appropriate processing pass.
  • As soon as pass completes, saving project to file specified as "output".
  • Switching to the next batch step if exists.
Important! If you produce and save some changes in the iPiMotion project after batch creation but before batch execution and this project is used in the batch, then these changes will affect batch execution in spite of the fact that batch was created before.
Tip: Actor(s) properties are not saved in parameters of tracking passes. Thus, to experiment with different actor parameters like height, you need to save all interesting combinations to different project files and add processing steps to the batch for each of these files.