Disparity maps and depth estimation
Disparity refers to the difference in the location of an object in the images captured by the left and right eyes or cameras. This difference or disparity is caused by parallax. Our brain uses this information regarding disparity to estimate the depth of objects (that is, their distance from us). We can compute the disparity between two images by applying this principle to every pixel in the pair of images captured by a webcam. This disparity information can be used to compute the estimated depth, thus mimicking the functionality of the brains of primates.
In terms of biology, this is known as Stereoscopic Vision, which enables us to see in three dimensions. OpenCV offers a cv2.StereoBM,compute()
function that accepts the left image and the right image as an argument and returns a disparity map of the image pair. The StereoBM_create()
function initializes the stereo state. It can have a number of disparities and block sizes as arguments. By default...