26 namespace perception {
34 const double cam_coord_pre[3],
35 const double cam_coord_pre_pre[3],
float *yaw_rate,
55 min_distance_to_update_calibration_in_meter =
57 min_distance_to_update_calibration_in_meter =
59 min_required_straight_driving_distance_in_meter =
77 static const int kMaxNrHistoryFrames = 1000;
90 bool Process(
const EgoLane &lane,
const float &velocity,
91 const float &yaw_rate,
const float &time_diff);
110 x >= 0 && x < image_width_ && y >= 0 && y < image_height_;
111 return (is_in_image);
114 bool IsTravelingStraight(
const float &vehicle_yaw_changed)
const {
115 float abs_yaw =
static_cast<float>(fabs(vehicle_yaw_changed));
116 return abs_yaw < params_.max_allowed_yaw_angle_in_radian;
123 bool SelectTwoPointsFromLineForVanishingPoint(
const LaneLine &line,
126 bool GetIntersectionFromTwoLineSegments(
const float line_seg_l[4],
127 const float line_seg_r[4],
134 bool GetPitchFromVanishingPoint(
const VanishingPoint &vp,
float *pitch)
const;
136 bool AddPitchToHistogram(
float pitch);
139 int image_width_ = 0;
140 int image_height_ = 0;
141 float k_mat_[9] = {0};
142 float pitch_cur_ = 0.0f;
143 float pitch_estimation_ = 0.0f;
144 float vanishing_row_ = 0.0f;
145 float accumulated_straight_driving_in_meter_ = 0.0f;
149 std::deque<VanishingPoint> vp_buffer_;
float max_allowed_yaw_angle_in_radian
Definition: lane_based_calibrator.h:46
float min_required_straight_driving_distance_in_meter
Definition: lane_based_calibrator.h:48
float get_pitch_estimation() const
Definition: lane_based_calibrator.h:93
HistogramEstimatorParams hist_estimator_params
Definition: lane_based_calibrator.h:50
int IRound(int a)
Definition: i_basic.h:197
Definition: lane_struct_for_calib.h:51
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
~LaneBasedCalibrator()
Definition: lane_based_calibrator.h:81
void GetYawVelocityInfo(const float &time_diff, const double cam_coord_cur[3], const double cam_coord_pre[3], const double cam_coord_pre_pre[3], float *yaw_rate, float *velocity)
float get_vanishing_row() const
Definition: lane_based_calibrator.h:99
void operator=(const CalibratorParams ¶ms)
Definition: lane_based_calibrator.h:52
Definition: histogram_estimator.h:78
float sampling_lane_point_rate
Definition: lane_based_calibrator.h:45
const float kVelocityDefault
Definition: lane_based_calibrator.h:30
Definition: lane_struct_for_calib.h:31
Definition: lane_based_calibrator.h:38
Definition: histogram_estimator.h:29
Eigen::Vector2f Vector2f
Definition: base_map_fwd.h:30
const float kTimeDiffDefault
Definition: lane_based_calibrator.h:31
int min_nr_pts_laneline
Definition: lane_based_calibrator.h:43
Definition: lane_based_calibrator.h:66
Definition: lane_struct_for_calib.h:26
const float kYawRateDefault
Definition: lane_based_calibrator.h:29
LaneBasedCalibrator()
Definition: lane_based_calibrator.h:79
Definition: lane_based_calibrator.h:75
float min_distance_to_update_calibration_in_meter
Definition: lane_based_calibrator.h:47
CalibratorParams()
Definition: lane_based_calibrator.h:39