Closed ruffsl closed 4 years ago
There seems to be an issue with enabling the use_rgbd_sensor_base_tf_functor
parameter:
Looks like the legacy code base has a few magic numbers:
Doubling such thresholds only seems to result in further run time errors with other magic numbers:
Not sure of what was intended by only exiting hard when a magic threshold is exceed. @atrevor ?
I was wondering if Alex can verify my patch?
I thought the code was trying to make sure the normal vector of the plane is pointing towards the same direction as the vector from origin to a point on the plane (i.e. they form an acute angle). In that case, maybe set vp
as centroid4f_base
instead of -centroid4f_base
might be sufficient?
Nevertheless, if we calculate d
, the distance from origin to the plane correctly, and if the normal vector is pointing toward the plane, d will be negative. So maybe flipping the entire thing is enough?
Also, the original code makes sense because if a plane's boundary point is not on the plane -- it won't make sense -- and something terrible must have happened -- time to crash.
With https://github.com/CogRob/omnimapper/pull/29 , looks like this is working now.
Revert prior work around in favor of enabling the
use_rgbd_sensor_base_tf_functor
parameter.