Hi have seen a lot of tutorials how to do simple image stitching using two photos and that is no problem.
But what to do when I want to make a panorama from 4-6 images or more?
I have code that takes in list of image files(the images are in order from the first image in the sequence to the last). Then for each image I compute the SIFT feature descriptors . But then I am stuck, for two images I would set up a matcher using FLANN kd-tree and find matches between the images and calculate the Homography. Similar to this tutorial http://docs.opencv.org/trunk/doc/py_tutorials/py_feature2d/py_feature_homography/py_feature_homography.html#py-feature-homography
But in stead of showing the lines between feature points at the end I have used this https://stackoverflow.com/a/20355545/622194 function to make a panorama from 2 images. But I am not sure what to do when I want to add the third and the fourth image to the panorama.
EDIT:
From the answers I have tried to implement my image stitching script to calculate a homography matrix between images that are next to each other in the image sequence. So if I have I1 I2 I3 and I4 I now have H_12, H_23 and H_34. Then I start by stitching I1 and I2 using H_12. Then I want to find cumulative homography to stitch I3 to the current panorama. I fing H_13 = H_12*H_23 and stitch the image 3 to the current panorama but here I get very apparent gap in my panorama image and when next image is stitched it is even bigger gap and the images is very stretched.
Can anyone tell me if I am using right approach for this or can someone spot the error or see what I am doing wrong.
Step by step, assuming you want to stitch four images I0
, I1
, I2
, I3
, your goal is to compute homographies H_0
, H_1
, H_2
, H_3
;
H_01
, H_02
, H_03
, H_12
, H_13
, H_23
where homography H_01
warps image I0
into I1
, etc...I1
which position will remain fixed i.e H_1
= IdentityI1
based on maximum number of
consistent matches e.g. I3
H_3
= H_1 * inv(H_13)
= inv(H_13)
= H_31
I1
or I3
e.g I2
matching I3
H_2
= H_3
* H_23
I0
See section 4 of this seminal paper Automatic Panoramic Image Stitching using Invariant Features for an in depth explanation.