Apollo
10.0
自动驾驶开放平台
object.cc
浏览该文件的文档.
1
/******************************************************************************
2
* Copyright 2018 The Apollo Authors. All Rights Reserved.
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*****************************************************************************/
16
17
#include "
modules/perception/common/base/object.h
"
18
19
namespace
apollo
{
20
namespace
perception {
21
namespace
base {
22
23
Object::Object
() {
24
center_uncertainty
<< 0.0f, 0, 0, 0, 0.0f, 0, 0, 0, 0.0f;
25
velocity_uncertainty
<< 0.0f, 0, 0, 0, 0.0f, 0, 0, 0, 0.0f;
26
acceleration_uncertainty
<< 0.0f, 0, 0, 0, 0.0f, 0, 0, 0, 0.0f;
27
type_probs
.resize(
static_cast<
int
>
(
ObjectType::MAX_OBJECT_TYPE
), 0);
28
sub_type_probs
.resize(
static_cast<
int
>
(
ObjectSubType::MAX_OBJECT_TYPE
), 0.0f);
29
b_cipv
=
false
;
30
// feature.reset();
31
}
32
33
void
Object::Reset
() {
34
id
= -1;
35
polygon
.
clear
();
36
direction
= Eigen::Vector3f(1.0f, 0.0f, 0.0f);
37
theta
= 0.0f;
38
theta_variance
= 0.0f;
39
center
= Eigen::Vector3d(0.0, 0.0, 0.0);
40
center_uncertainty
<< 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f;
41
42
size
= Eigen::Vector3f(0.0f, 0.0f, 0.0f);
43
size_variance
= Eigen::Vector3f(0.0f, 0.0f, 0.0f);
44
anchor_point
= Eigen::Vector3d(0.0, 0.0, 0.0);
45
type
=
ObjectType::UNKNOWN
;
46
type_probs
.assign(
static_cast<
int
>
(
ObjectType::MAX_OBJECT_TYPE
), 0.0f);
47
sub_type
=
ObjectSubType::UNKNOWN
;
48
sub_type_probs
.assign(
static_cast<
int
>
(
ObjectSubType::MAX_OBJECT_TYPE
), 0.0f);
49
50
confidence
= 1.0f;
51
52
is_front_critical
=
false
;
53
54
track_id
= -1;
55
velocity
= Eigen::Vector3f(0.0f, 0.0f, 0.0f);
56
velocity_uncertainty
<< 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f;
57
velocity_converged
=
true
;
58
velocity_confidence
= 1.0;
59
acceleration
= Eigen::Vector3f(0.0f, 0.0f, 0.0f);
60
acceleration_uncertainty
<< 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f,
61
0.0f;
62
63
tracking_time
= 0.0;
64
latest_tracked_time
= 0.0;
65
66
car_light
.
Reset
();
67
motion_state
=
MotionState::UNKNOWN
;
68
69
lidar_supplement
.
Reset
();
70
radar_supplement
.
Reset
();
71
radar4d_supplement
.
Reset
();
72
camera_supplement
.
Reset
();
73
fusion_supplement
.
Reset
();
74
// feature.reset();
75
}
76
77
std::string
Object::ToString
()
const
{
78
std::ostringstream oss;
79
oss <<
"Object [id: "
<<
id
<<
", track_id: "
<<
track_id
<<
", direction: ("
80
<<
direction
[0] <<
","
<<
direction
[1] <<
","
<<
direction
[2]
81
<<
"), theta: "
<<
theta
<<
", theta_variance: "
<<
theta_variance
82
<<
", center: ("
<<
center
[0] <<
","
<<
center
[1] <<
","
<<
center
[2]
83
<<
")"
84
<<
", center_uncertainty: ("
<<
center_uncertainty
(0, 0) <<
","
85
<<
center_uncertainty
(0, 1) <<
","
<<
center_uncertainty
(0, 2) <<
","
86
<<
center_uncertainty
(1, 0) <<
","
<<
center_uncertainty
(1, 1) <<
","
87
<<
center_uncertainty
(1, 2) <<
","
<<
center_uncertainty
(2, 0) <<
","
88
<<
center_uncertainty
(2, 1) <<
","
<<
center_uncertainty
(2, 2)
89
<<
"), size: ("
<<
size
[0] <<
","
<<
size
[1] <<
","
<<
size
[2]
90
<<
"), size_variance: ("
<<
size_variance
[0] <<
","
<<
size_variance
[1]
91
<<
","
<<
size_variance
[2] <<
"), anchor_point: ("
<<
anchor_point
[0]
92
<<
","
<<
anchor_point
[1] <<
","
<<
anchor_point
[2]
93
<<
"), type: "
<<
static_cast<
int
>
(
type
) <<
", confidence: "
<<
confidence
94
<<
", track_id: "
<<
track_id
<<
", velocity: ("
<<
velocity
[0] <<
","
95
<<
velocity
[1] <<
","
<<
velocity
[2]
96
<<
"), velocity_confidence: "
<<
velocity_confidence
97
<<
", acceleration: ("
<<
acceleration
[0] <<
","
<<
acceleration
[1] <<
","
98
<<
acceleration
[2] <<
"), tracking_time: "
<<
tracking_time
99
<<
", latest_tracked_time: "
<<
latest_tracked_time
;
100
return
oss.str();
101
}
102
103
}
// namespace base
104
}
// namespace perception
105
}
// namespace apollo
apollo::perception::base::PointCloud::clear
virtual void clear()
Definition
point_cloud.h:113
apollo::perception::base::ObjectSubType::UNKNOWN
@ UNKNOWN
apollo::perception::base::ObjectSubType::MAX_OBJECT_TYPE
@ MAX_OBJECT_TYPE
apollo::perception::base::ObjectType::UNKNOWN
@ UNKNOWN
apollo::perception::base::ObjectType::MAX_OBJECT_TYPE
@ MAX_OBJECT_TYPE
apollo::perception::base::MotionState::UNKNOWN
@ UNKNOWN
apollo
class register implement
Definition
arena_queue.h:37
object.h
apollo::perception::base::CameraObjectSupplement::Reset
void Reset()
Definition
object_supplement.h:170
apollo::perception::base::CarLight::Reset
void Reset()
Definition
vehicle_struct.h:30
apollo::perception::base::FusionObjectSupplement::Reset
void Reset()
Definition
object_supplement.h:320
apollo::perception::base::LidarObjectSupplement::Reset
void Reset()
Definition
object_supplement.h:36
apollo::perception::base::Object::velocity_confidence
float velocity_confidence
Definition
object.h:94
apollo::perception::base::Object::latest_tracked_time
double latest_tracked_time
Definition
object.h:103
apollo::perception::base::Object::velocity_uncertainty
Eigen::Matrix3f velocity_uncertainty
Definition
object.h:90
apollo::perception::base::Object::type
ObjectType type
Definition
object.h:69
apollo::perception::base::Object::sub_type_probs
std::vector< float > sub_type_probs
Definition
object.h:76
apollo::perception::base::Object::camera_supplement
CameraObjectSupplement camera_supplement
Definition
object.h:118
apollo::perception::base::Object::acceleration
Eigen::Vector3f acceleration
Definition
object.h:96
apollo::perception::base::Object::direction
Eigen::Vector3f direction
Definition
object.h:47
apollo::perception::base::Object::theta_variance
float theta_variance
Definition
object.h:54
apollo::perception::base::Object::type_probs
std::vector< float > type_probs
Definition
object.h:71
apollo::perception::base::Object::polygon
PointCloud< PointD > polygon
Definition
object.h:43
apollo::perception::base::Object::size_variance
Eigen::Vector3f size_variance
Definition
object.h:64
apollo::perception::base::Object::center
Eigen::Vector3d center
Definition
object.h:56
apollo::perception::base::Object::theta
float theta
Definition
object.h:52
apollo::perception::base::Object::fusion_supplement
FusionObjectSupplement fusion_supplement
Definition
object.h:119
apollo::perception::base::Object::tracking_time
double tracking_time
Definition
object.h:101
apollo::perception::base::Object::acceleration_uncertainty
Eigen::Matrix3f acceleration_uncertainty
Definition
object.h:98
apollo::perception::base::Object::motion_state
MotionState motion_state
Definition
object.h:106
apollo::perception::base::Object::is_front_critical
bool is_front_critical
Definition
object.h:82
apollo::perception::base::Object::radar_supplement
RadarObjectSupplement radar_supplement
Definition
object.h:117
apollo::perception::base::Object::radar4d_supplement
Radar4dObjectSupplement radar4d_supplement
Definition
object.h:116
apollo::perception::base::Object::track_id
int track_id
Definition
object.h:86
apollo::perception::base::Object::car_light
CarLight car_light
Definition
object.h:113
apollo::perception::base::Object::velocity
Eigen::Vector3f velocity
Definition
object.h:88
apollo::perception::base::Object::Reset
void Reset()
Definition
object.cc:33
apollo::perception::base::Object::sub_type
ObjectSubType sub_type
Definition
object.h:74
apollo::perception::base::Object::lidar_supplement
LidarObjectSupplement lidar_supplement
Definition
object.h:115
apollo::perception::base::Object::size
Eigen::Vector3f size
Definition
object.h:62
apollo::perception::base::Object::confidence
float confidence
Definition
object.h:79
apollo::perception::base::Object::b_cipv
bool b_cipv
Definition
object.h:111
apollo::perception::base::Object::center_uncertainty
Eigen::Matrix3f center_uncertainty
Definition
object.h:58
apollo::perception::base::Object::Object
Object()
Definition
object.cc:23
apollo::perception::base::Object::anchor_point
Eigen::Vector3d anchor_point
Definition
object.h:66
apollo::perception::base::Object::velocity_converged
bool velocity_converged
Definition
object.h:92
apollo::perception::base::Object::ToString
std::string ToString() const
Definition
object.cc:77
apollo::perception::base::Radar4dObjectSupplement::Reset
void Reset()
Definition
object_supplement.h:94
apollo::perception::base::RadarObjectSupplement::Reset
void Reset()
Definition
object_supplement.h:142
modules
perception
common
base
object.cc