Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Pinoxchio
apollo
提交
5b86f159
A
apollo
项目概览
Pinoxchio
/
apollo
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
apollo
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
5b86f159
编写于
7月 14, 2017
作者:
C
Calvin Miao
浏览文件
操作
浏览文件
下载
差异文件
Added prediction conf in proto
上级
9b721513
14fde944
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
37 addition
and
22 deletion
+37
-22
modules/common/math/math_utils.cc
modules/common/math/math_utils.cc
+1
-1
modules/common/math/math_utils.h
modules/common/math/math_utils.h
+1
-1
modules/common/math/math_utils_test.cc
modules/common/math/math_utils_test.cc
+9
-9
modules/control/common/trajectory_analyzer.cc
modules/control/common/trajectory_analyzer.cc
+2
-2
modules/prediction/common/prediction_gflags.cc
modules/prediction/common/prediction_gflags.cc
+5
-0
modules/prediction/common/prediction_gflags.h
modules/prediction/common/prediction_gflags.h
+4
-0
modules/prediction/container/obstacles/BUILD
modules/prediction/container/obstacles/BUILD
+5
-3
modules/prediction/container/obstacles/obstacle.cc
modules/prediction/container/obstacles/obstacle.cc
+10
-6
未找到文件。
modules/common/math/math_utils.cc
浏览文件 @
5b86f159
...
...
@@ -65,7 +65,7 @@ double RandomDouble(const double s, const double t, unsigned int rand_seed) {
return
s
+
(
t
-
s
)
/
16383.0
*
(
rand_r
(
&
rand_seed
)
&
16383
);
}
int
double_c
ompare
(
const
double
d1
,
const
double
d2
,
const
double
epsilon
)
{
int
DoubleC
ompare
(
const
double
d1
,
const
double
d2
,
const
double
epsilon
)
{
DCHECK
(
!
std
::
isnan
(
d1
));
DCHECK
(
!
std
::
isnan
(
d2
));
...
...
modules/common/math/math_utils.h
浏览文件 @
5b86f159
...
...
@@ -152,7 +152,7 @@ T Clamp(const T value, T bound1, T bound2) {
return
value
;
}
int
double_c
ompare
(
int
DoubleC
ompare
(
const
double
d1
,
const
double
d2
,
const
double
epsilon
=
std
::
numeric_limits
<
double
>::
epsilon
());
...
...
modules/common/math/math_utils_test.cc
浏览文件 @
5b86f159
...
...
@@ -73,16 +73,16 @@ TEST(MathUtilsTest, Square) {
}
TEST
(
MathUtilsTest
,
Double
)
{
EXPECT_EQ
(
double_c
ompare
(
234.32
,
93.9
),
1
);
EXPECT_EQ
(
double_c
ompare
({
234.32
},
{
93.9
}),
1
);
EXPECT_EQ
(
double_c
ompare
(
234.32
,
93.9
,
1e-5
),
1
);
EXPECT_EQ
(
double_c
ompare
({
234.32
},
{
93.9
},
1e-5
),
1
);
EXPECT_EQ
(
DoubleC
ompare
(
234.32
,
93.9
),
1
);
EXPECT_EQ
(
DoubleC
ompare
({
234.32
},
{
93.9
}),
1
);
EXPECT_EQ
(
DoubleC
ompare
(
234.32
,
93.9
,
1e-5
),
1
);
EXPECT_EQ
(
DoubleC
ompare
({
234.32
},
{
93.9
},
1e-5
),
1
);
EXPECT_EQ
(
double_c
ompare
(
23.32
,
93.9
),
-
1
);
EXPECT_EQ
(
double_c
ompare
(
4.32
,
4.32
),
0
);
EXPECT_EQ
(
double_c
ompare
(
2.1
,
2.0009
,
1e-5
),
1
);
EXPECT_EQ
(
double_c
ompare
(
1.1
,
2.0009
,
1e-5
),
-
1
);
EXPECT_EQ
(
double_c
ompare
(
2.1
,
2.0009
,
1
),
0
);
EXPECT_EQ
(
DoubleC
ompare
(
23.32
,
93.9
),
-
1
);
EXPECT_EQ
(
DoubleC
ompare
(
4.32
,
4.32
),
0
);
EXPECT_EQ
(
DoubleC
ompare
(
2.1
,
2.0009
,
1e-5
),
1
);
EXPECT_EQ
(
DoubleC
ompare
(
1.1
,
2.0009
,
1e-5
),
-
1
);
EXPECT_EQ
(
DoubleC
ompare
(
2.1
,
2.0009
,
1
),
0
);
}
}
// namespace math
...
...
modules/control/common/trajectory_analyzer.cc
浏览文件 @
5b86f159
...
...
@@ -81,8 +81,8 @@ PathPoint TrajectoryAnalyzer::QueryMatchedPathPoint(const double x,
index_min
+
1
==
trajectory_points_
.
size
()
?
index_min
:
index_min
+
1
;
if
(
index_start
==
index_end
||
common
::
math
::
double_c
ompare
(
trajectory_points_
[
index_start
].
s
,
trajectory_points_
[
index_end
].
s
)
==
0
)
{
common
::
math
::
DoubleC
ompare
(
trajectory_points_
[
index_start
].
s
,
trajectory_points_
[
index_end
].
s
)
==
0
)
{
return
trajectory_points_
[
index_start
];
}
...
...
modules/prediction/common/prediction_gflags.cc
浏览文件 @
5b86f159
...
...
@@ -21,3 +21,8 @@ DEFINE_string(prediction_module_name, "prediction",
"Default prediciton module name"
);
DEFINE_string
(
prediction_conf_file
,
"modules/prediction/conf/prediction_conf.pb.txt"
,
"Default conf file for prediction"
);
// Features
DEFINE_double
(
double_precision
,
1e-6
,
"precision of double"
);
DEFINE_double
(
max_acc
,
4.0
,
"Upper bound of acceleration"
);
DEFINE_double
(
min_acc
,
-
4.0
,
"Lower bound of deceleration"
);
modules/prediction/common/prediction_gflags.h
浏览文件 @
5b86f159
...
...
@@ -23,4 +23,8 @@
DECLARE_string
(
prediction_module_name
);
DECLARE_string
(
prediction_conf_file
);
DECLARE_double
(
double_precision
);
DECLARE_double
(
max_acc
);
DECLARE_double
(
min_acc
);
#endif // MODULES_PREDICTION_COMMON_PREDICTION_GFLAGS_H_
modules/prediction/container/obstacles/BUILD
浏览文件 @
5b86f159
...
...
@@ -15,10 +15,12 @@ cc_library(
srcs
=
[
"obstacle.cc"
],
hdrs
=
[
"obstacle.h"
],
deps
=
[
"//modules/common:log"
,
"//modules/common/math:kalman_filter"
,
"//modules/common/proto:error_code_proto"
,
"//modules/common/math:math_utils"
,
"//modules/perception/proto:perception_proto"
,
"//modules/prediction/proto:feature_proto"
,
"//modules/common:log"
,
"//modules/common/math:kalman_filter"
,
"//modules/prediction/common:prediction_common"
,
],
)
\ No newline at end of file
)
modules/prediction/container/obstacles/obstacle.cc
浏览文件 @
5b86f159
...
...
@@ -20,6 +20,8 @@
#include <cmath>
#include "modules/common/log.h"
#include "modules/common/math/math_utils.h"
#include "modules/prediction/common/prediction_gflags.h"
namespace
apollo
{
namespace
prediction
{
...
...
@@ -256,8 +258,7 @@ void Obstacle::SetAcceleration(Feature* feature) {
const
Point3D
&
curr_velocity
=
feature
->
velocity
();
const
Point3D
&
prev_velocity
=
feature_history_
.
front
().
velocity
();
// TODO(kechxu) add a gflag of double precision
if
(
curr_ts
>
prev_ts
)
{
if
(
apollo
::
common
::
math
::
DoubleCompare
(
curr_ts
,
prev_ts
)
==
1
)
{
double
damping_x
=
Damp
(
curr_velocity
.
x
(),
0.001
);
double
damping_y
=
Damp
(
curr_velocity
.
y
(),
0.001
);
double
damping_z
=
Damp
(
curr_velocity
.
z
(),
0.001
);
...
...
@@ -265,10 +266,13 @@ void Obstacle::SetAcceleration(Feature* feature) {
acc_x
=
(
curr_velocity
.
x
()
-
prev_velocity
.
x
())
/
(
curr_ts
-
prev_ts
);
acc_y
=
(
curr_velocity
.
y
()
-
prev_velocity
.
y
())
/
(
curr_ts
-
prev_ts
);
acc_z
=
(
curr_velocity
.
z
()
-
prev_velocity
.
z
())
/
(
curr_ts
-
prev_ts
);
// TODO(kechxu) clamp the acc
acc_x
*=
damping_x
;
acc_y
*=
damping_y
;
acc_z
*=
damping_z
;
acc_x
=
apollo
::
common
::
math
::
Clamp
(
acc_x
*
damping_x
,
FLAGS_min_acc
,
FLAGS_max_acc
);
acc_y
=
apollo
::
common
::
math
::
Clamp
(
acc_y
*
damping_y
,
FLAGS_min_acc
,
FLAGS_max_acc
);
acc_z
=
apollo
::
common
::
math
::
Clamp
(
acc_z
*
damping_z
,
FLAGS_min_acc
,
FLAGS_max_acc
);
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录