Avoid division by zero in jacobian calculation
parent
1640f172e6
commit
8df2c70866
|
@ -76,6 +76,9 @@ Point2 Cal3Fisheye::uncalibrate(const Point2& p, OptionalJacobian<2, 9> H1,
|
|||
|
||||
// Derivative for points in intrinsic coords (2 by 2)
|
||||
if (H2) {
|
||||
if (r2==0) {
|
||||
*H2 = DK;
|
||||
} else {
|
||||
const double dtd_dt =
|
||||
1 + 3 * k1_ * t2 + 5 * k2_ * t4 + 7 * k3_ * t6 + 9 * k4_ * t8;
|
||||
const double dt_dr = 1 / (1 + r2);
|
||||
|
@ -99,6 +102,7 @@ Point2 Cal3Fisheye::uncalibrate(const Point2& p, OptionalJacobian<2, 9> H1,
|
|||
|
||||
*H2 = DK * DR;
|
||||
}
|
||||
}
|
||||
|
||||
return uv;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue