-
Notifications
You must be signed in to change notification settings - Fork 128
Open
Description
Hi!
flatness and elevation thresholds are updated iteratively. Therefore, they are set to zeros:
elevation_thr = {0, 0, 0, 0}; // threshold of elevation for each ring using in GLE. Those values are updated adaptively.
flatness_thr = {0, 0, 0, 0}; // threshold of flatness for each ring using in GLE. Those values are updated adaptively.
In the estimateGround
member function, you compare the ground_elevation
and ground_flatness
variables with those thresholds using the concentric_idx
:
if (concentric_idx < params_.num_rings_of_interest)
{
is_not_elevated = ground_elevation < params_.elevation_thr[concentric_idx];
is_flat = ground_flatness < params_.flatness_thr[concentric_idx];
}
I have two observations:
- Since the z-axis is upward, the ground_elevation for ground planes should be always negative. Therefore, is_not_elevated is always True. On the other hand, if the least significant eigenvalue of a plane ground_flatness is positive, the is_flat is always False.
- concentric_idx is increaded under the ring and sector loops. Then, the threshold arrays should have more than 4 values.
Metadata
Metadata
Assignees
Labels
No labels