fix: glz图像bug修复
This commit is contained in:
@@ -3,8 +3,8 @@
|
|||||||
|
|
||||||
#define IMAGE_H (MT9V03X_H)
|
#define IMAGE_H (MT9V03X_H)
|
||||||
#define IMAGE_W (MT9V03X_W)
|
#define IMAGE_W (MT9V03X_W)
|
||||||
#define BEGINH_L (55)
|
#define BEGINH_L (61)
|
||||||
#define BEGINH_R (55)
|
#define BEGINH_R (61)
|
||||||
#define BEGINW_L (-18)
|
#define BEGINW_L (-18)
|
||||||
#define BEGINW_R (-12)
|
#define BEGINW_R (-12)
|
||||||
#define PT_MAXLEN (75)
|
#define PT_MAXLEN (75)
|
||||||
|
|||||||
@@ -23,6 +23,6 @@ enum state_type_e {
|
|||||||
extern enum state_type_e state_type;
|
extern enum state_type_e state_type;
|
||||||
|
|
||||||
#define CROSS_AIM (0.49f)
|
#define CROSS_AIM (0.49f)
|
||||||
#define COMMON_AIM (0.31f)
|
#define COMMON_AIM (0.25f)
|
||||||
|
|
||||||
#endif /* STATE_H_ */
|
#endif /* STATE_H_ */
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
float (*mid_track)[2];
|
float (*mid_track)[2];
|
||||||
int32_t mid_track_count;
|
int32_t mid_track_count;
|
||||||
float dx;
|
float pure_angle;
|
||||||
float dx_near;
|
float dx_near;
|
||||||
float (*rpts)[2];
|
float (*rpts)[2];
|
||||||
int rpts_num;
|
int rpts_num;
|
||||||
@@ -107,10 +107,10 @@ void MidLineTrack()
|
|||||||
int aim_idx_near = clip(round(0.09 / RESAMPLEDIST), 0, rptsn_num - 1);
|
int aim_idx_near = clip(round(0.09 / RESAMPLEDIST), 0, rptsn_num - 1);
|
||||||
|
|
||||||
// 计算远锚点偏差值
|
// 计算远锚点偏差值
|
||||||
dx = rptsn[aim_idx][1] - cx;
|
float dx = rptsn[aim_idx][1] - cx;
|
||||||
// float dy = cy - rptsn[aim_idx][0] + 0.2 * PIXPERMETER;
|
float dy = cy - rptsn[aim_idx][0] + 0.2 * PIXPERMETER;
|
||||||
// float dn = sqrt(dx * dx + dy * dy);
|
float dn = sqrt(dx * dx + dy * dy);
|
||||||
// float error = -atan2f(dx, dy) * 180 / PI;
|
float error = -atan2f(dx, dy) * 180 / PI;
|
||||||
|
|
||||||
// 计算近锚点偏差值
|
// 计算近锚点偏差值
|
||||||
dx_near = rptsn[aim_idx_near][1] - cx;
|
dx_near = rptsn[aim_idx_near][1] - cx;
|
||||||
@@ -121,6 +121,6 @@ void MidLineTrack()
|
|||||||
// //考虑近点
|
// //考虑近点
|
||||||
// near_angle = -atanf(PIXPERMETER * 2 * 0.2 * dx_near / dn_near / dn_near) / PI * 180 ;
|
// near_angle = -atanf(PIXPERMETER * 2 * 0.2 * dx_near / dn_near / dn_near) / PI * 180 ;
|
||||||
// //考虑远点
|
// //考虑远点
|
||||||
// pure_angle = -atanf(PIXPERMETER * 2 * 0.2 * dx/ dn / dn) / PI * 180 ;
|
pure_angle = -atanf(PIXPERMETER * 2 * 0.2 * dx/ dn / dn) / PI * 180 ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
#define TRACKING
|
#define TRACKING
|
||||||
|
|
||||||
extern float (*mid_track)[2];
|
extern float (*mid_track)[2];
|
||||||
extern float dx;
|
extern float pure_angle;
|
||||||
extern float dx_near;
|
extern float dx_near;
|
||||||
|
|
||||||
void tracking(void);
|
void tracking(void);
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ void jj_param_eeprom_init(void)
|
|||||||
PARAM_REG(imgax_Ki, &data4, EFLOAT, 1, "im_I:"); // 注冊
|
PARAM_REG(imgax_Ki, &data4, EFLOAT, 1, "im_I:"); // 注冊
|
||||||
PARAM_REG(imgax_Kd, &data5, EFLOAT, 1, "im_D:");
|
PARAM_REG(imgax_Kd, &data5, EFLOAT, 1, "im_D:");
|
||||||
PARAM_REG(other , &data6, EFLOAT, 1, "add:");
|
PARAM_REG(other , &data6, EFLOAT, 1, "add:");
|
||||||
PARAM_REG(delta_x , &dx, EFLOAT, 2, "far:");
|
PARAM_REG(delta_x , &pure_angle, EFLOAT, 2, "far:");
|
||||||
PARAM_REG(delta_y , &dx_near, EFLOAT, 0, "near:");
|
PARAM_REG(delta_y , &dx_near, EFLOAT, 0, "near:");
|
||||||
jj_param_read(); // 注冊
|
jj_param_read(); // 注冊
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ int main(void)
|
|||||||
while (1) {
|
while (1) {
|
||||||
Page_Run();
|
Page_Run();
|
||||||
by_buzzer_run();
|
by_buzzer_run();
|
||||||
tiny_frame_param[0].f32 = dx;
|
tiny_frame_param[0].f32 = pure_angle;
|
||||||
tiny_frame_param[1].f32 = dx_near;
|
tiny_frame_param[1].f32 = dx_near;
|
||||||
system_delay_ms(10);
|
system_delay_ms(10);
|
||||||
if (mt9v03x_finish_flag) {
|
if (mt9v03x_finish_flag) {
|
||||||
|
|||||||
Reference in New Issue
Block a user