27 #include <Eigen/Geometry>
50 enum class Type { Unknown, Static, Dynamic };
52 enum class Class { Unknown, Pedestrian, Bike, Motorbike, Car, Truck, Trailer };
67 Eigen::Isometry3d
pose{Eigen::Isometry3d()};
76 Eigen::Vector3d
velocity{Eigen::Vector3d::Zero()};
96 {
"velocity_norm",
static_cast<double>(o.
velocity.norm())},
109 using Objects = std::vector<std::shared_ptr<Object>>;
112 j = fable::Json::array();
113 for (
const auto& o : os) {
114 assert(o !=
nullptr);
121 {Object::Type::Static,
"static"},
122 {Object::Type::Dynamic,
"dynamic"},
123 {Object::Type::Unknown,
"unknown"},
127 {Object::Class::Unknown,
"unknown"},
128 {Object::Class::Pedestrian,
"pedestrian"},
129 {Object::Class::Bike,
"bicycle"},
130 {Object::Class::Motorbike,
"motorcycle"},
131 {Object::Class::Car,
"car"},
132 {Object::Class::Truck,
"truck"},
133 {Object::Class::Trailer,
"trailer"},
#define ENUM_SERIALIZATION(xType, xMap)
Definition: enum.hpp:51
nlohmann::json Json
Definition: fable_fwd.hpp:35
std::vector< std::shared_ptr< Object > > Objects
Definition: object.hpp:109
Definition: object.hpp:49
Eigen::Vector3d dimensions
Dimensions in [m].
Definition: object.hpp:70
Eigen::Vector3d acceleration
Absolute acceleration in [m/(s*s)].
Definition: object.hpp:79
double exist_prob
Object existence probability.
Definition: object.hpp:58
Type type
Type of object.
Definition: object.hpp:61
Eigen::Vector3d angular_velocity
Angular velocity in [rad/s].
Definition: object.hpp:82
Eigen::Vector3d cog_offset
Center of geometry offset in [m].
Definition: object.hpp:73
Class classification
Classification of object.
Definition: object.hpp:64
Eigen::Isometry3d pose
Pose in [m] and [rad].
Definition: object.hpp:67
int id
ID of object, should be unique.
Definition: object.hpp:55
Eigen::Vector3d velocity
Absolute velocity in [m/s].
Definition: object.hpp:76