A homography cannot be computed with less than 4 pairs of points. That is because with only 3 points there is a perspective ambiguity. Picture a triangle
a
b c
in image 1. In image 2 the points have been transformed to look like this
a
b c
The distance between b and c has been cut in half. Unfortunately you don't know if that is because point c got closer to your or farther from you. With a 4th point the difference becomes clear.
a d
b c
Here is a square in image 1
d
a
b c
here d and c rotated towards you
a
d
b c
and here they rotated away from you.
I don't see this requirement in the openCV documentation but if you find any resources on homography calculation you won't have to read very far before you find this requirement and a more rigorous proof of 4 points being sufficient.