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