- Estimate Fundamental Matrix F
- Use SVD decomposition to get F
- Ensure rank of 2 by forcing the Diagonal matrix of F to 0
- Estimate epipolar Correspondences
- For every point p, find l' = Fp
- For every y in a range, find (x',y) that fits the line equation l'
- Considering patches around (x,y) in I1 and (x,y') in I2 and find the dissimilarity
- Patch around (x,y') with minimum dissimilarity is corresponding point for (x,y)
- Calculate Essential Matrix
- E = K2T * F * K1
- Estimate 3D points using Triagulation
- Estimate 4 possible camera matrices (M) using E
- Estimate 3D locations using M
- Correct configuration of camera matrix M has depth of all 3D locations > 0
- Disparity Map Generation
- For every pixel (x,y), corresponding pixel will be (x+d,y). Calculate dissimalrity scores for all possible d
- Find the least dissimilar patch to (x,y)
- Depth = ((c1 - c2)*f)./disparity_map
c1 - center of left camera
c2 - center of right camera
f - focal length
- For every pixel (x,y), consider a patch of size windowSize x windowSize
- Corresponding pixel for (x,y) will be (x+d,y). Calculate dissimalrity scores of patches (x+d,y) w.r.t (x,y) for all possible d
- Find the least dissimilar patch to (x,y)
Disparity Map | Depth Map |
---|---|
Cox, Hingorani, Rao, Maggs, A Maximum Likelihood Stereo Algorithm
Disparity Map | Depth Map |
---|---|