The algorithm estimates an homography transform that maps matched source to destination 2D keypoints in a way that the overall reprojection error is minimized. It's often used in image registration pipelines where one image is to be aligned to a reference image by using the keypoint matches found in both images.
The estimation is robust against bad keypoint matches. It uses a RANSAC pass to keep in an inlier set with all keypoint matches whose transform results in a bounded reprojection error, specified as a parameter.
By default the estimation works with 8 degrees of freedom (8DoF). To improve the convergence time and minimize the maximum reprojection error, the algorithm allows the user to constrain the problem by reducing the degrees of freedom, or imposing ranges on them. See VPIConstrainedHomography2DConfig for more details.
For list of limitations, constraints and backends that implement the algorithm, consult reference documentation of the following functions:
Function | Description |
---|---|
vpiInitTransformEstimatorParams | Initializes the VPITransformEstimatorParams with default values for a given transform type. |
vpiCreateTransformEstimator | Creates payload for vpiSubmitTransformEstimator. |
vpiSubmitTransformEstimator | Submits a Transform Estimator operation to the stream. |
For more information, please see Transform Estimator in the "C API Reference" section of VPI - Vision Programming Interface.
Performance benchmarks will be added at a later time.