Timing

Tables over all the steps in the stitching pipeline to see where most execution time is spent. This is of course different from system to system and from browser to browser, still it is interesting to see the performance difference.

Stitch

Because the javascript is single threaded, execution and page rendering are done in the same execution thread, which means that while the RANSAC or matching code is executing the browser will not be redrawing the page. It will lock up, and interfere with the user interface. Even if I redraw the page within the for loop (of RANSAC or the matching) it will not be updated until the loop terminates. I have created a test where I force the page to be updated dynamically but every time this occurrence we lose abut 200ms (from the matching or ransac execution). And to implement this inside a loop wold not be very nice. A solution to this could be webworkers.

Processed images (time in ms)
Matching and RANSAC times in ms

2 Stitch

Stitch the two example images together to one and the same image