The stretch correlation algorithm is an area based solution to the stereo problem, matching discrete blocks in the left image to blocks in the right. However, focusing the matching process on information rich areas of the image (those containing non-horizontal edges) improves the robustness of the approach.
Most area based correlation techniques assume front-o-parallel surfaces. However, failing to account for the surface rotations caused by changing views can compromise `on-edge' based correlation. The stretch correlation technique models these rotations by warping the right image blocks using horizontal stretching and compressing, thus improving the stability of the correlation process. This in turn improves the accuracy of the resulting disparity estimates over rigid correlation.
The stretching process takes an pixel block and performs first order interpolation in the horizontal direction to produce an block. M is varied between 3 N and , which is consistent with enforcing a cyclopean disparity gradient limit of 1.0 along the epi-polar, a cue usually only directly applied in feature-based algorithms [ 13 ] . A disparity gradient constraint of 1.0 is enforced at a block level by the algorithm and only blocks with local neighbourhood support are retained. This global constraint can throw away some signal as well as the noise, but it is crucial to the SC algorithm as the correlation score alone is insufficient to ensure correct matches. A post-processing stage matches the block correspondences to previously extracted Canny edges [ 5 ] to provide sub-pixel disparity measurements. Although the SC algorithm uses feature descriptions in the form of Canny edges, the disparity estimates are stored in the co-ordinate frame of the left image. This representation simplifies the integration of the SC algorithm within a temporal loop.
There are two factors that can introduce inaccuracies into the disparity measurements recovered using a stereo matching algorithm. (a) Location error; inaccuracy in the determination of the exact location of regions or features. For the SC algorithm the location accuracy is determined by the performance of the edge detection which we estimate to be approximately 0.1 pixels. (b) Mismatching; incorrect matching between regions or features in the two images. The mismatch rate of the algorithm has been shown to be directly proportional to the size of the search area, [ 11 ]. In this analysis, Thacker et. al. state that for a feature based matching algorithm the probability of an incorrect match is given by;
where is the probability of mismatching a pair of features when neither feature has its correct match detected in the other image, is the probability mismatch when one feature has had its correct match detected and is the probability of mismatch when both features have had their correct matches found in the other image. Each of , and are proportional to the mean number of candidate matches and thus is proportional to the area searched during matching.
Tony Lacey