KQ

pyvsim.Utils.KQ(A)[source]

This decomposition is proposed in the book “Multiple View Geometry in computer vision” by Hartley and Zisserman. It is basically a RQ decomposition (which takes a matrix \(M\) and finds a right, upper diagonal camera matrix \(K\) and a orthogonal matrix \(Q\) so that \(M = aKQ\) (\(a\) is a normalizing factor (\(R[-1,-1]\))).

This specific function has the following extra steps:

1) it defines a diagonal matrix \(D\) which, when post-multiplied by \(K\) makes its diagonal elements positive.

  1. it normalizes \(K\) by its \([-1,-1]\) element.

The use of these steps is that when the matrix \(M\) is a DLT matrix, \(K\) is a camera matrix, and \(Q\) is the orientation of the camera (its rows are the front, down and left vectors, respectively).

Parameters :

A : numpy.ndarray \((3,3)\)

A square matrix. Attention, DLT matrices need to have their last column taken away for this procedure.

Returns :

K : numpy.ndarray \((3,3)\)

The camera matrix, normalized by its \([-1,-1]\) element.

Q : numpy.ndarray \((3,3)\)

The camera orientation matrix

This Page