1. 程式人生 > >【OpenCV】 DLT 演算法 (Direct linear transformation)

【OpenCV】 DLT 演算法 (Direct linear transformation)

Intro

from wikipedia:

Direct linear transformation (DLT) is an algorithm which solves a set of variables from a set of similarity relations:

xkAyk  for  k=1,...,Nx_k \propto A y_k \; for \; k = 1, ..., N

where xkx_k and yky_k are known vectors,

\propto denotes equality up to an unknown scalar multiplication, and AA is a matrix(or linear transformation) which contains the unknown to be solved.

This type of relation appears frequently in projective geometry. Practical examples include the relation between 3D points in a scene and their projection onto the image plane of a pinhole camera, and homographies.

DLT 主要用來解決兩組相似分佈的變數的對應關係, 一般求解的是比例關係, 確定了係數還可以變為等式關係. 係數矩陣 AA就是要求解的變數. 這個常用在投影幾何中, 比如 3D 物點和 2D像點之間的對應關係, 或者 Homographies.

求解的就是這個 linear transformation, 特點就是直接求, 不繞彎子, directly.

Ref