13
$\begingroup$

Reading some papers about visual odometry, many use inverse depth. Is it only the mathematical inverse of the depth (meaning 1/d) or does it represent something else. And what are the advantages of using it?

$\endgroup$
11
$\begingroup$

Features like the sun and clouds and other things that are very far off would have a distance estimate of inf. This can cause a lot of problems. To get around it, the inverse of the distance is estimated. All of the infs become zeros which tend to cause fewer problems.

$\endgroup$
  • 1
    $\begingroup$ donot quite understand, if I'm using a kinect device, the output values for invalid area are internally set to 0, either because of too near or too far or reflection or disparity. Does that have sth. to do with inverse depth? $\endgroup$ – zhangxaochen May 17 '16 at 13:54
  • $\begingroup$ @zhangxaochen Inverse depth parametrization is used widely in Monocular SLAM and it helps in estimating the depth of the 3D point. Kinect gives 3D information or depth of the point. I don't think there will be any big need in using inverse depth in Kinect. $\endgroup$ – nbsrujan Sep 25 at 5:53
8
$\begingroup$

The inverse depth parameterisation represents a landmark's distance, d, from the camera exactly as it says, as proportional to 1/d within the estimation algorithm. The rational behind the approach is that, filtering approaches such as the extended Kalman filter (EKF) make an assumption that the error associated with features is Gaussian.

In a visual odometry setting the depth of a landmark is estimated by tracking the associated features over some series of frames and then using the induced parallax. However for distant features (relative to the displacement of the camera) the resultant parallax will be small, and importantly the error distribution associated with the depth is highly peaked close to the minimum depth with a long tail (i.e. it is not well modelled via a Gaussian distribution). To see an example should refer to Fig. 7 in Civera et al.'s paper (mentioned by @freakpatrol), or Fig. 4 of Fallon et al. ICRA 2012.

By representing the inverse depth (i.e. 1/d) this error becomes Gaussian. Furthermore it permits representing very distant points e.g. points at infinity.

The important aspect of the representation used is Civera's paper is explained in Section II B of his paper (see Equation (3)). Here, a landmark is represented relative to the pose (position and orientation) of the first camera from which it is seen. This pose is capture in the first five parameters of Eq (3), whereas the sixth parameter, $\rho_{i}$, represents the inverse depth. Eq (4) provides an expression for recovering the world position of the point (i.e. this where the inverse depth gets converted to depth as $1/\rho_{i}$)

$\endgroup$
3
$\begingroup$

Davison's paper introducing the method is easy enough to understand:

Inverse Depth Parametrization for Monocular SLAM by Javier Civera, Andrew J. Davison, and J. M. Martınez Montiel DOI: 10.1109/TRO.2008.2003276

$\endgroup$
  • 3
    $\begingroup$ Be sure to add some kind of brief summary to your answer. This doesn't really answer the user's question, it just links to a paper, and that paper may not be available at that link later! $\endgroup$ – Brian Lynch Nov 4 '15 at 5:47
  • $\begingroup$ Also, it's a good idea to mention the title of the paper, and ideally a DOI, since that means that it will be easier to find in the future, if that specific URL dies. $\endgroup$ – Mark Booth Nov 4 '15 at 10:52
0
$\begingroup$

In addition to the reasons mentioned in other answers about the numerical conditioning of inverse depth, a major reason for this term to appear in specifically visual odometry literature is in the way that depths are computed from stereo vision: After rectification, 3D information is inferred from the distance in X between where a point appears in the two cameras' images.

Depth, $Z$, is then computed from disparity, $d$, as $Z=\frac{fB}{d}$, where $f$ and $B$ are focal length (in pixels) and camera baseline (in meters) respectively. So working in the space of inverse depths puts you also in the space of disparities, the quantity directly being estimated, and it becomes easier to work with distributions or errors in that quantity.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.