Apollo 10.0
自动驾驶开放平台
apollo::prediction::VectorNet类 参考

#include <vector_net.h>

apollo::prediction::VectorNet 的协作图:

Public 成员函数

 VectorNet ()
 
 ~VectorNet ()=default
 
bool query (const common::PointENU &center_point, const double obstacle_phi, FeatureVector *const feature_ptr, PidVector *const p_id_ptr)
 
bool offline_query (const double obstacle_x, const double obstacle_y, const double obstacle_phi)
 
bool offline_query (const double obstacle_x, const double obstacle_y, const double obstacle_phi, const std::string file_name)
 

详细描述

在文件 vector_net.h56 行定义.

构造及析构函数说明

◆ VectorNet()

apollo::prediction::VectorNet::VectorNet ( )
inline

在文件 vector_net.h58 行定义.

◆ ~VectorNet()

apollo::prediction::VectorNet::~VectorNet ( )
default

成员函数说明

◆ offline_query() [1/2]

bool apollo::prediction::VectorNet::offline_query ( const double  obstacle_x,
const double  obstacle_y,
const double  obstacle_phi 
)

在文件 vector_net.cc117 行定义.

118 {
119 return offline_query(obstacle_x,
120 obstacle_y,
121 obstacle_phi,
122 FLAGS_prediction_target_file);
123}
bool offline_query(const double obstacle_x, const double obstacle_y, const double obstacle_phi)

◆ offline_query() [2/2]

bool apollo::prediction::VectorNet::offline_query ( const double  obstacle_x,
const double  obstacle_y,
const double  obstacle_phi,
const std::string  file_name 
)

在文件 vector_net.cc125 行定义.

128 {
129 FeatureVector offline_feature;
130 PidVector p_id;
131 common::PointENU center_point =
132 common::util::PointFactory::ToPointENU(obstacle_x, obstacle_y);
133 query(center_point, obstacle_phi, &offline_feature, &p_id);
134
136 vector_net_pb_.mutable_car_position()->set_x(obstacle_x);
137 vector_net_pb_.mutable_car_position()->set_y(obstacle_y);
138 vector_net_pb_.mutable_car_position()->set_phi(obstacle_phi);
139
140 size_t i = 0;
141 for (const auto& polyline : offline_feature) {
142 auto* polyline_pb = vector_net_pb_.add_polyline();
143 polyline_pb->set_p_id_x(p_id[i][0]);
144 polyline_pb->set_p_id_y(p_id[i][1]);
145 i++;
146 for (const auto& vector : polyline) {
147 auto* vector_pb = polyline_pb->add_vector();
148 for (const auto& element : vector) {
149 vector_pb->add_element(element);
150 }
151 }
152 }
154 file_name);
155
156 return true;
157}
static PointENU ToPointENU(const double x, const double y, const double z=0)
bool query(const common::PointENU &center_point, const double obstacle_phi, FeatureVector *const feature_ptr, PidVector *const p_id_ptr)
bool SetProtoToASCIIFile(const google::protobuf::Message &message, int file_descriptor)
Definition file.cc:43
std::vector< std::vector< double > > PidVector
Definition vector_net.h:34
std::vector< std::vector< std::vector< double > > > FeatureVector
Definition vector_net.h:33

◆ query()

bool apollo::prediction::VectorNet::query ( const common::PointENU center_point,
const double  obstacle_phi,
FeatureVector *const  feature_ptr,
PidVector *const  p_id_ptr 
)

在文件 vector_net.cc104 行定义.

107 {
108 CHECK_NOTNULL(feature_ptr);
109 count_ = 0;
110 GetRoads(center_point, obstacle_phi, feature_ptr, p_id_ptr);
111 GetLanes(center_point, obstacle_phi, feature_ptr, p_id_ptr);
112 GetJunctions(center_point, obstacle_phi, feature_ptr, p_id_ptr);
113 GetCrosswalks(center_point, obstacle_phi, feature_ptr, p_id_ptr);
114 return true;
115}

该类的文档由以下文件生成: