Apollo 11.0
自动驾驶开放平台
apollo::perception::onboard::LaneDetectionComponent类 参考

#include <lane_detection_component.h>

类 apollo::perception::onboard::LaneDetectionComponent 继承关系图:
apollo::perception::onboard::LaneDetectionComponent 的协作图:

Public 类型

template<class EigenType >
using EigenVector = apollo::common::EigenVector< EigenType >
 
template<typename T , class EigenType >
using EigenMap = apollo::common::EigenMap< T, EigenType >
 
using MotionServiceMsgType = std::shared_ptr< apollo::perception::MotionService >
 
- Public 类型 继承自 apollo::cyber::ComponentBase
template<typename M >
using Reader = cyber::Reader< M >
 

Public 成员函数

 LaneDetectionComponent ()
 
 ~LaneDetectionComponent ()
 
 LaneDetectionComponent (const LaneDetectionComponent &)=delete
 
LaneDetectionComponent & operator= (const LaneDetectionComponent &)=delete
 
bool Init () override
 
- Public 成员函数 继承自 apollo::cyber::Component< M0, M1, M2, M3 >
 Component ()
 
 ~Component () override
 
bool Initialize (const ComponentConfig &config) override
 init the component by protobuf object.
 
bool Process (const std::shared_ptr< M0 > &msg0, const std::shared_ptr< M1 > &msg1, const std::shared_ptr< M2 > &msg2, const std::shared_ptr< M3 > &msg3)
 
- Public 成员函数 继承自 apollo::cyber::ComponentBase
virtual ~ComponentBase ()
 
virtual bool Initialize (const TimerComponentConfig &config)
 
virtual void Shutdown ()
 
template<typename T >
bool GetProtoConfig (T *config) const
 

友元

template<typename T >
class FunctionInfo
 

额外继承的成员函数

- Protected 成员函数 继承自 apollo::cyber::ComponentBase
virtual void Clear ()
 
const std::string & ConfigFilePath () const
 
void LoadConfigFiles (const ComponentConfig &config)
 
void LoadConfigFiles (const TimerComponentConfig &config)
 
- Protected 属性 继承自 apollo::cyber::ComponentBase
std::atomic< bool > is_shutdown_ = {false}
 
std::shared_ptr< Node > node_ = nullptr
 
std::string config_file_path_ = ""
 
std::vector< std::shared_ptr< ReaderBase > > readers_
 

详细描述

在文件 lane_detection_component.h 第 54 行定义.

成员类型定义说明

◆ EigenMap

template<typename T , class EigenType >
using apollo::perception::onboard::LaneDetectionComponent::EigenMap = apollo::common::EigenMap<T, EigenType>

在文件 lane_detection_component.h 第 60 行定义.

◆ EigenVector

◆ MotionServiceMsgType

构造及析构函数说明

◆ LaneDetectionComponent() [1/2]

apollo::perception::onboard::LaneDetectionComponent::LaneDetectionComponent ( )
inline

在文件 lane_detection_component.h 第 66 行定义.

66: seq_num_(0) {}

◆ ~LaneDetectionComponent()

apollo::perception::onboard::LaneDetectionComponent::~LaneDetectionComponent ( )

在文件 lane_detection_component.cc 第 184 行定义.

184{}

◆ LaneDetectionComponent() [2/2]

apollo::perception::onboard::LaneDetectionComponent::LaneDetectionComponent ( const LaneDetectionComponent &  )
delete

成员函数说明

◆ Init()

bool apollo::perception::onboard::LaneDetectionComponent::Init ( )
overridevirtual

实现了 apollo::cyber::ComponentBase.

在文件 lane_detection_component.cc 第 186 行定义.

186 {
187 if (InitConfig() != cyber::SUCC) {
188 AERROR << "InitConfig() failed.";
189 return false;
190 }
191
192 writer_ = node_->CreateWriter<PerceptionLanes>(output_lanes_channel_name_);
194 LaneDetectionComponent::init_func_arry_)) {
195 return false;
196 }
197 SetCameraHeightAndPitch();
198
199 // Init visualizer
200 // TODO(techoe, yg13): homography from image to ground should be
201 // computed from camera height and pitch.
202 // Apply online calibration to adjust pitch/height automatically
203 // Temporary code is used here for testing
204 double pitch_adj_degree = 0.0;
205 double yaw_adj_degree = 0.0;
206 double roll_adj_degree = 0.0;
207 // load in lidar to imu extrinsic
208 Eigen::Matrix4d ex_lidar2imu;
209 // Todo(zero): need fix! use tf
210 LoadExtrinsics(FLAGS_obs_sensor_intrinsic_path + "/" +
211 FLAGS_lidar_sensor_name + "_novatel_extrinsics.yaml",
212 &ex_lidar2imu);
213 AINFO << FLAGS_lidar_sensor_name + "_novatel_extrinsics.yaml: "
214 << ex_lidar2imu;
215
217 camera_names_, visual_camera_, intrinsic_map_, extrinsic_map_,
218 ex_lidar2imu, pitch_adj_degree, yaw_adj_degree, roll_adj_degree,
219 image_height_, image_width_));
220 homography_image2ground_ = visualize_.homography_im2car(visual_camera_);
221 camera_lane_pipeline_->SetIm2CarHomography(homography_image2ground_);
222
223 if (enable_visualization_) {
224 if (write_visual_img_) {
225 visualize_.write_out_img_ = true;
226 visualize_.SetDirectory(visual_debug_folder_);
227 }
228 }
229 AINFO << "Init processes all succeed";
230 return true;
231}
std::shared_ptr< Node > node_
bool SetDirectory(const std::string &path)
Eigen::Matrix3d homography_im2car(std::string camera_name)
Definition visualizer.h:80
bool Init_all_info_single_camera(const std::vector< std::string > &camera_names, const std::string &visual_camera, const EigenMap< std::string, Eigen::Matrix3f > &intrinsic_map, const EigenMap< std::string, Eigen::Matrix4d > &extrinsic_map, const Eigen::Matrix4d &ex_lidar2imu, const double pitch_adj, const double yaw_adj, const double roll_adj, const int image_height, const int image_width)
#define ACHECK(cond)
Definition log.h:80
#define AERROR
Definition log.h:44
#define AINFO
Definition log.h:42
#define EXEC_ALL_FUNS(type, obj, list)
Definition util.h:154

◆ operator=()

LaneDetectionComponent & apollo::perception::onboard::LaneDetectionComponent::operator= ( const LaneDetectionComponent &  )
delete

友元及相关函数文档

◆ FunctionInfo

template<typename T >
friend class FunctionInfo
friend

在文件 lane_detection_component.h 第 75 行定义.


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