As you can expect, the most complicated bit is the code that does the actual matching of the photos. Some very smart people (not me: I’m talking about you, Andy) spent a lot of time making sure that it can stitch most panoramas automatically. When we started writing it, we set a requirement spec of stitching 95% of panoramas without the need for repair. We used a corpus of over 100 panoramas to test this. These were all random panoramas that we’d previously shot for clients, so there was quite a mix of stuff in there. However, they were all shot using a tripod or monopod, and they were all shot in portrait orientation, i.e. with the camera vertical. This is the way to get the best results, as it gives a better vertical field of view than if the camera was horizontal.
One thing that was common to all of them, however, was that they were taken by people (once again, not me) who are very used to taking panoramic photos. This means that they are probably “best case” panoramas, and it’s likely to have a lower success rate in the “real world”. There are however some simple steps that can be taken which will dramatically increase the chances of getting a perfect stitch.
(more…)