Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Pinoxchio
apollo
提交
309b76e7
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,发现更多精彩内容 >>
提交
309b76e7
编写于
9月 24, 2018
作者:
J
jmtao
提交者:
Liangliang Zhang
9月 24, 2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
perception: migrate omnidirectional_model/polynomial and tests
上级
78a34322
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
78 addition
and
21 deletion
+78
-21
modules/perception/base/BUILD
modules/perception/base/BUILD
+53
-0
modules/perception/base/distortion_model.cc
modules/perception/base/distortion_model.cc
+1
-0
modules/perception/base/omnidirectional_model.cc
modules/perception/base/omnidirectional_model.cc
+13
-11
modules/perception/base/omnidirectional_model.h
modules/perception/base/omnidirectional_model.h
+2
-0
modules/perception/base/polynomial.cc
modules/perception/base/polynomial.cc
+5
-6
modules/perception/base/polynomial.h
modules/perception/base/polynomial.h
+4
-4
modules/perception/base/polynomial_test.cc
modules/perception/base/polynomial_test.cc
+0
-0
未找到文件。
modules/perception/base/BUILD
浏览文件 @
309b76e7
...
...
@@ -165,6 +165,35 @@ cc_test(
],
)
cc_library
(
name
=
"omnidirectional_model"
,
hdrs
=
[
"omnidirectional_model.h"
,
],
srcs
=
[
"omnidirectional_model.cc"
,
],
deps
=
[
":camera"
,
":distortion_model"
,
":polynomial"
,
"//framework:cybertron"
,
"@eigen"
,
],
)
cc_test
(
name
=
"omnidirectional_model_test"
,
size
=
"small"
,
srcs
=
[
"omnidirectional_model_test.cc"
,
],
deps
=
[
":omnidirectional_model"
,
"@gtest//:main"
,
],
)
cc_library
(
name
=
"point_cloud"
,
hdrs
=
[
...
...
@@ -189,6 +218,30 @@ cc_test(
],
)
cc_library
(
name
=
"polynomial"
,
hdrs
=
[
"polynomial.h"
,
],
srcs
=
[
"polynomial.cc"
,
],
deps
=
[
],
)
cc_test
(
name
=
"polynomial_test"
,
size
=
"small"
,
srcs
=
[
"polynomial_test.cc"
,
],
deps
=
[
":polynomial"
,
"@gtest//:main"
,
],
)
cc_library
(
name
=
"syncedmem"
,
srcs
=
[
...
...
modules/perception/base/distortion_model.cc
浏览文件 @
309b76e7
...
...
@@ -14,6 +14,7 @@
* limitations under the License.
*****************************************************************************/
#include "modules/perception/base/distortion_model.h"
#include <cmath>
#include "cybertron/common/log.h"
...
...
modules/perception/base/omnidirectional_model.cc
浏览文件 @
309b76e7
...
...
@@ -14,11 +14,13 @@
* limitations under the License.
*****************************************************************************/
#include "modules/perception/base/omnidirectional_model.h"
#include "modules/perception/base/camera.h"
#include "polynomial.h"
#include <cmath>
#include "modules/perception/base/log.h"
#include <limits>
#include "cybertron/common/log.h"
#include "modules/perception/base/camera.h"
#include "modules/perception/base/polynomial.h"
namespace
apollo
{
namespace
perception
{
...
...
@@ -56,7 +58,7 @@ Eigen::Vector2f OmnidirectionalCameraDistortionModel::Project(
std
::
shared_ptr
<
BaseCameraModel
>
OmnidirectionalCameraDistortionModel
::
get_camera_model
()
{
PinholeCameraModelPtr
camera_model
(
new
PinholeCameraModel
());
std
::
shared_ptr
<
PinholeCameraModel
>
camera_model
(
new
PinholeCameraModel
());
camera_model
->
set_width
(
width_
);
camera_model
->
set_height
(
height_
);
camera_model
->
set_intrinsic_params
(
intrinsic_params_
);
...
...
@@ -67,25 +69,25 @@ std::shared_ptr<BaseCameraModel>
bool
OmnidirectionalCameraDistortionModel
::
set_params
(
size_t
width
,
size_t
height
,
const
Eigen
::
VectorXf
&
params
)
{
if
(
params
.
size
()
<
9
)
{
LOG_
INFO
<<
"Missing cam2world and world2cam model."
;
A
INFO
<<
"Missing cam2world and world2cam model."
;
return
false
;
}
uint32_t
cam2world_order
=
uint32_t
(
params
(
8
));
LOG_
INFO
<<
"cam2world order: "
<<
cam2world_order
<<
", size: "
<<
params
.
size
()
<<
std
::
endl
;
A
INFO
<<
"cam2world order: "
<<
cam2world_order
<<
", size: "
<<
params
.
size
()
<<
std
::
endl
;
if
(
params
.
size
()
<
9
+
cam2world_order
+
1
)
{
LOG_
INFO
<<
"Incomplete cam2world model or missing world2cam model."
;
A
INFO
<<
"Incomplete cam2world model or missing world2cam model."
;
return
false
;
}
uint32_t
world2cam_order
=
uint32_t
(
params
(
9
+
cam2world_order
));
LOG_
INFO
<<
"world2cam order: "
<<
world2cam_order
<<
", size: "
<<
params
.
size
()
<<
std
::
endl
;
A
INFO
<<
"world2cam order: "
<<
world2cam_order
<<
", size: "
<<
params
.
size
()
<<
std
::
endl
;
if
(
params
.
size
()
<
9
+
cam2world_order
+
1
+
world2cam_order
)
{
LOG_
INFO
<<
"Incomplete world2cam model."
;
A
INFO
<<
"Incomplete world2cam model."
;
return
false
;
}
...
...
modules/perception/base/omnidirectional_model.h
浏览文件 @
309b76e7
...
...
@@ -51,10 +51,12 @@ class OmnidirectionalCameraDistortionModel : public BaseCameraDistortionModel {
float
affine_
[
3
];
// c, d, e
};
/* TODO(all): to remove
typedef std::shared_ptr<OmnidirectionalCameraDistortionModel>
OmnidirectionalCameraDistortionModelPtr;
typedef std::shared_ptr<const OmnidirectionalCameraDistortionModel>
OmnidirectionalCameraDistortionModelConstPtr;
*/
}
// namespace base
}
// namespace perception
...
...
modules/perception/base/polynomial.cc
浏览文件 @
309b76e7
...
...
@@ -14,7 +14,6 @@
* limitations under the License.
*****************************************************************************/
#include "modules/perception/base/polynomial.h"
#include <vector>
namespace
apollo
{
namespace
perception
{
...
...
@@ -52,7 +51,7 @@ double Polynomial::operator()(const double& x) {
for
(
auto
&
item
:
power_cache_
)
{
item
.
second
=
x
;
for
(
in
t
i
=
0
;
i
<
item
.
first
-
1
;
++
i
)
{
for
(
size_
t
i
=
0
;
i
<
item
.
first
-
1
;
++
i
)
{
item
.
second
*=
x
;
}
}
...
...
@@ -71,7 +70,7 @@ double Polynomial::operator()(const double& x) {
std
::
ostream
&
operator
<<
(
std
::
ostream
&
o
,
const
Polynomial
&
p
)
{
const
std
::
map
<
uint32_t
,
double
>&
coeff
=
p
.
getCoeff
();
in
t
i
=
0
;
size_
t
i
=
0
;
for
(
auto
it
=
coeff
.
rbegin
();
it
!=
coeff
.
rend
();
++
it
)
{
const
uint32_t
&
order
=
it
->
first
;
const
double
&
c
=
it
->
second
;
...
...
@@ -86,6 +85,6 @@ std::ostream& operator<<(std::ostream& o, const Polynomial& p) {
return
o
;
}
}
// base
}
// perception
}
// apollo
}
//
namespace
base
}
//
namespace
perception
}
//
namespace
apollo
modules/perception/base/polynomial.h
浏览文件 @
309b76e7
...
...
@@ -43,8 +43,8 @@ class Polynomial {
std
::
ostream
&
operator
<<
(
std
::
ostream
&
o
,
const
Polynomial
&
p
);
}
// base
}
// perception
}
// apollo
}
//
namespace
base
}
//
namespace
perception
}
//
namespace
apollo
#endif
#endif
// MODULES_PERCEPTION_BASE_POLYNOMIAL_H
modules/perception/base/
test/base_
polynomial_test.cc
→
modules/perception/base/polynomial_test.cc
浏览文件 @
309b76e7
文件已移动
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录