Image Stitching for NVIDIA Jetson - User Guide - Controlling the Stitcher
Image Stitching for NVIDIA®Jetson™ |
---|
Before Starting |
Image Stitching Basics |
Overview |
Getting Started |
User Guide |
Resources |
Examples |
Spherical Video |
Performance |
Contact Us |
This page provides an explanation of the workflow used when working with the stitcher. As well as a basic description of the parameters required when building a cudastitcher pipeline.
Workflow parameters
When using the stitcher, parameter acquirement and selection is a crucial step in order to get the expected output. These parameters can be obtained from scripts provided within the stitcher itself. These parameters are:
Homography List
- This parameter defines the transformations between two images. It is specified with the option
homography-list
and is set as a JSON formatted string, the JSON is constructed manually based on the individual homographies produced with the homography estimation tool.
- Read the Homography estimation guide on how to calculate the homography between to images.
- Then visit the Homography list guide to better understand its format and how to construct it based on individual homographies.
Blending Width
- This parameter sets the amount of pixels to be blended between two images. It can be set with the
border-width
option. This guide provides more information on the topic.
Additional parameters
- If you are using the stitcher as well as the cuda-undistort element, there are more parameters to be obtained, information about those and how to set them can be found in the cuda undistort wiki
Workflow overview
Here are presented the basic steps and execution order that needs to be followed in order to configure the stitcher properly and acquire the parameters for its usage.
- Know your input sources (N)
- Apply distortion correction to the inputs (only if necessary), see this guide for more details
- Run the calibration tool for each source that requires it
- input: Multiple images of a calibration pattern
- output: Camera matrix and distortion parameters
- Save the camera matrix and distortion parameters for each camera, since they will be required to build the pipelines
- Repeat until every input has been corrected
- Run the calibration tool for each source that requires it
- Calculate all (N-1) homographies between pairs of adjacent images, see this guide for more details
- Run the homography estimation tool for each image (target) and its reference (fixed)
- input: Two still images from adjacent sources with overlap and a JSON config file
- output: Homography matrix that describes the transformation between input sources
- Save the homography matrices; they will be required in the next steps
- Repeat until every image has been a target once
- Run the homography estimation tool for each image (target) and its reference (fixed)
- Construct homographies list JSON file
- This step is done manually, see this guide for more details
- Set the blending width, see this guide for more details
- Build and launch the stitcher pipelines
Workflow diagram
The following diagram provides a visual representation of the workflow described in the previous section, as well as the auxiliary tools required, even with the cuda undistort element.