HOME

TheInfoList



OR:

In the field of computer vision, any two images of the same planar surface in space are related by a homography (assuming a pinhole camera model). This has many practical applications, such as
image rectification Image rectification is a transformation process used to project images onto a common image plane. This process has several degrees of freedom and there are many strategies for transforming images to the common plane. Image rectification is used in c ...
, image registration, or camera motion—rotation and translation—between two images. Once camera resectioning has been done from an estimated homography matrix, this information may be used for navigation, or to insert models of 3D objects into an image or video, so that they are rendered with the correct perspective and appear to have been part of the original scene (see Augmented reality).


3D plane to plane equation

We have two cameras ''a'' and ''b'', looking at points P_i in a plane. Passing from the projection ^bp_i=\left(^bu_i;^bv_i;1\right) of P_i in ''b'' to the projection ^ap_i=\left(^au_i;^av_i;1\right) of P_i in ''a'': : ^ap_i = \fracK_a \cdot H_ \cdot K_b^ \cdot ^bp_i where ^az_i and ^bz_i are the z coordinates of P in each camera frame and where the homography matrix H_ is given by : H_ = R - \frac. R is the rotation matrix by which ''b'' is rotated in relation to ''a''; ''t'' is the translation vector from ''a'' to ''b''; ''n'' and ''d'' are the normal vector of the plane and the distance from origin to the plane respectively. ''K''''a'' and ''K''''b'' are the cameras' intrinsic parameter matrices. The figure shows camera ''b'' looking at the plane at distance ''d''. Note: From above figure, assuming n^T P_i + d = 0 as plane model, n^T P_i is the projection of vector P_i along n, and equal to -d. So t = t \cdot 1 = t \left(-\frac\right). And we have H_ P_i = R P_i + t where H_ = R - \frac. This formula is only valid if camera ''b'' has no rotation and no translation. In the general case where R_a,R_b and t_a,t_b are the respective rotations and translations of camera ''a'' and ''b'', R=R_a R_b^T and the homography matrix H_ becomes : H_ = R_a R_b^T - \frac where ''d'' is the distance of the camera ''b'' to the plane. The homography matrix can only be computed between images taken from the same camera shot at different angles. It doesn't matter what is present in the images. The matrix contains a warped form of the images.


Affine homography

When the image region in which the homography is computed is small or the image has been acquired with a large focal length, an ''affine homography'' is a more appropriate model of image displacements. An affine homography is a special type of a general homography whose last row is fixed to : h_=h_=0, \; h_=1.


See also

* Direct linear transformation * Epipolar geometry * Feature (computer vision) * Fundamental matrix (computer vision) * Pose (computer vision) *
Photogrammetry Photogrammetry is the science and technology of obtaining reliable information about physical objects and the environment through the process of recording, measuring and interpreting photographic images and patterns of electromagnetic radiant ima ...


References

*{{cite journal , author=O. Chum and T. Pajdla and P. Sturm , title=The Geometric Error for Homographies , journal=Computer Vision and Image Understanding , volume=97 , pages=86–102 , year=2005 , doi=10.1016/j.cviu.2004.03.004 , issue=1, url=http://perception.inrialpes.fr/Publications/2005/CPS05/ChumPajdlaSturm-cviu05.pdf


Toolboxes


homest
is a GPL C/ C++ library for robust, non-linear (based on the Levenberg–Marquardt algorithm) homography estimation from matched point pairs (Manolis Lourakis). *
OpenCV OpenCV (''Open Source Computer Vision Library'') is a library of programming functions mainly aimed at real-time computer vision. Originally developed by Intel, it was later supported by Willow Garage then Itseez (which was later acquired by I ...
is a complete (''open and free'') computer vision software library that has many routines related to homography estimation
cvFindHomography
and re-projection

.


External links

* Serge Belongie & David Kriegman (2007
Explanation of Homography Estimation
from Department of Computer Science and Engineering, University of California, San Diego. * A. Criminisi, I. Reid & A. Zisserman (1997
"A Plane Measuring Device"
§3 Computing the Plane to Plane Homography, from Visual Geometry Group, Department of Engineering Science,
University of Oxford The University of Oxford is a collegiate research university in Oxford, England. There is evidence of teaching as early as 1096, making it the oldest university in the English-speaking world and the world's second-oldest university in contin ...
. * Elan Dubrofsky (2009
Homography Estimation
Master's thesis, from Department of Computer Science, University of British Columbia. * Richard Hartley & Andrew Zisserman (2004
Multiple View Geometry
from Visual Geometry Group, Oxford. Includes Matlabbr>Functions
for calculating a homography and the fundamental matrix (computer vision).
GIMP Tutorial – using the Perspective Tool
by Billy Kerr on
YouTube YouTube is a global online video sharing and social media platform headquartered in San Bruno, California. It was launched on February 14, 2005, by Steve Chen, Chad Hurley, and Jawed Karim. It is owned by Google, and is the second most ...
. Shows how to do a perspective transform using GIMP. * Allan Jepson (2010
Planar Homographies
from Department of Computer Science, University of Toronto. Includes 2D homography from four pairs of corresponding points, mosaics in image processing, removing perspective distortion in computer vision, rendering textures in computer graphics, and computing planar shadows.
Plane transfer homography
Course notes from CSE576 at
University of Washington The University of Washington (UW, simply Washington, or informally U-Dub) is a public research university in Seattle, Washington. Founded in 1861, Washington is one of the oldest universities on the West Coast; it was established in Seat ...
in
Seattle Seattle ( ) is a port, seaport city on the West Coast of the United States. It is the county seat, seat of King County, Washington, King County, Washington (state), Washington. With a 2020 population of 737,015, it is the largest city in bo ...
. * Etienne Vincent & Robert Laganiere (2000
Detecting Planar Homographies in an Image Pair
from School of Information Technology and Engineering, University of Ottawa. Describes an algorithm for detecting planes in images, uses random sample consensus ( RANSAC) method, describes heuristics and iteration. Geometry in computer vision Functions and mappings