Search code examples
imageopencvpanoramasrotational-matricesimage-stitching

Attaching multiple image panorama to form complete panorama


I am using opencv stitcher code. In stitcher.cpp, there is leavebiggestcomponent function, in which largest set having images belonging to a panorama is obtained and all other images are rejected. I have changed the code and able to obtain fewer smaller sets along with the largest set. Now for merging these smallers sets with largest one, I have to find the relative rotation of each images in smaller sets with respect to center image of largest set.

Suppose I have 6 images, Two sets are obtained . Set1 (1,2,3,4) and Set2(5,6) I know rotation of 1,2,3,4 wrt 3(center of set1) and I know rotation of 6 wrt 5. I am using gyroscope, so I have rotation of 5 wrt to 3 as well

So, R of 6 wrt 3, R = R[6 wrt 5] * R[5 wrt 1]

Is it correct?

Output enter image description here The panorama in the center is largest set. While that one left corner are from small set, I used the above equation and the output is wrong


Solution

  • SO here is the solution R of 6 wrt 3, R = R[5 wrt 1] * R[6 wrt 5]

    This will give good result if your gyro data is reliable.Although results are not perfect always, depending on the focal length calculated from stitching algo and phone sensor data