|
@@ -81,7 +81,7 @@ public:
|
|
|
T wheel_length_img_ratio = variable[6];
|
|
|
T wheel_width_length_ratio = variable[7];
|
|
|
// [1/3, 5/3]
|
|
|
- T limited_wheel_length_img_ratio = T(0.8) / (T(1) + ceres::exp(T(-wheel_length_img_ratio))) + T(0.75);
|
|
|
+ T limited_wheel_length_img_ratio = T(0.6) / (T(1) + ceres::exp(T(-wheel_length_img_ratio))) + T(0.9);
|
|
|
// [0.25, 0.35]
|
|
|
T limited_wheel_length_ratio = T(0.25) / (T(1) + ceres::exp(T(-wheel_width_length_ratio))) + T(0.25);
|
|
|
|
|
@@ -620,9 +620,9 @@ bool detect_wheel_ceres::Solve(Detect_result &detect_result, Loss_result &loss_r
|
|
|
double init_width=1.55;
|
|
|
double init_theta_front=0*M_PI/180.0;
|
|
|
// 车轮长图比, 比例取值1/3-5/3, 当前变量无限制
|
|
|
- double init_wheel_length_img_ratio = 0;
|
|
|
+ double init_wheel_length_img_ratio = 0.5;
|
|
|
// 车轮宽长比, 默认长为1,比例取值范围0.2-0.8, 当前变量范围无限制
|
|
|
- double init_wheel_width_length_ratio = 0;
|
|
|
+ double init_wheel_width_length_ratio = 0.5;
|
|
|
|
|
|
double variable[] = {cx, cy, init_theta, init_wheel_base, init_width, init_theta_front, init_wheel_length_img_ratio, init_wheel_width_length_ratio};
|
|
|
// printf("solve x:%.3f y: %.3f wheel:%.3f width:%.3f theta : %.3f front theta: %.3f\n", variable[0], variable[1], variable[3], variable[4], variable[2], variable[5]);
|
|
@@ -678,9 +678,9 @@ bool detect_wheel_ceres::Solve(Detect_result &detect_result, Loss_result &loss_r
|
|
|
// LOG(WARNING) <<"总loss过大 "<<loss;
|
|
|
return false;
|
|
|
}
|
|
|
- if (detect_result.width < 1.25 || detect_result.width > 2.000 || detect_result.wheel_base > 3.200 || detect_result.wheel_base < 2.200)
|
|
|
+ if (detect_result.width < 1.25 || detect_result.width > 2.000 || detect_result.wheel_base > 3.15 || detect_result.wheel_base < 2.200)
|
|
|
{
|
|
|
- error_info.append(std::string("宽度(1.25, 2.00) 轴距(2.20, 3.20): ").append(std::to_string(detect_result.width).append(", ").append(std::to_string(detect_result.wheel_base)).append("\t")));
|
|
|
+ error_info.append(std::string("宽度(1.25, 2.00) 轴距(2.20, 3.15): ").append(std::to_string(detect_result.width).append(", ").append(std::to_string(detect_result.wheel_base)).append("\t")));
|
|
|
// LOG(WARNING) <<"宽度(1.35, 2.00) 轴距(2.20, 3.30): "<<detect_result.width<<", "<<detect_result.wheel_base;
|
|
|
return false;
|
|
|
}
|