In my case as input I have such data structures: original image (RGB pixels), objects (squares) with lines crossing points in pixels (x,y) on Image Plane.

I have image like this

In my particular case the Image Plane has 3 quadrilaterals - projections of real world squares, which, as we know, have same size, lying on the same plane, with same rotation relative to the plane they are lying on, and are not situated on same line on plane.

question my is How to get homography matrix in such case? any papers \ algorithms \ formulas?