Apollo  6.0
Open source self driving car software
dummy_algorithms.h
Go to the documentation of this file.
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 #pragma once
17 
18 #include <map>
19 #include <string>
20 
36 
37 namespace apollo {
38 namespace perception {
39 namespace camera {
40 
42  public:
44 
45  virtual ~DummyInferenceEngine() {}
46 
47  bool Init(const InferenceEngineInitOptions &options =
48  InferenceEngineInitOptions()) override {
49  return true;
50  }
51 
52  bool Infer(const InferenceEngineOptions &options,
53  CameraFrame *frame) override {
54  return true;
55  }
56 
57  std::string Name() const override { return "DummyInferenceEngine"; }
58 };
59 
61  public:
63 
64  virtual ~DummyLaneDetector() {}
65 
66  bool Init(const LaneDetectorInitOptions &options = {}) override {
67  return true;
68  }
69 
70  bool Detect(const LaneDetectorOptions &options, CameraFrame *frame) override {
71  return true;
72  }
73 
74  std::string Name() const override { return "DummyLaneDetector"; }
75 };
76 
78  public:
80 
82 
83  bool Init(const LanePostprocessorInitOptions &options =
84  LanePostprocessorInitOptions()) override {
85  return true;
86  }
87 
88  bool Process2D(const LanePostprocessorOptions &options,
89  CameraFrame *frame) override {
90  return true;
91  }
92 
93  bool Process3D(const LanePostprocessorOptions &options,
94  CameraFrame *frame) override {
95  return true;
96  }
97 
98  std::string Name() const override { return "DummyLanePostprocessor"; }
99 };
100 
102  public:
104 
105  virtual ~DummyLaneTracker() {}
106 
107  bool Init(const LaneTrackerInitOptions &options =
108  LaneTrackerInitOptions()) override {
109  return true;
110  }
111 
112  bool Track(const LaneTrackerOptions &options, CameraFrame *frame) override {
113  return true;
114  }
115 
116  std::string Name() const override { return "DummyLaneTracker"; }
117 };
118 
120  public:
122 
124 
125  bool Init(const ObstacleDetectorInitOptions &options =
126  ObstacleDetectorInitOptions()) override {
127  return true;
128  }
129 
130  bool Detect(const ObstacleDetectorOptions &options,
131  CameraFrame *frame) override {
132  return true;
133  }
134 
135  std::string Name() const override { return "DummyObstacleDetector"; }
136 };
137 
139  public:
141 
143 
146  return true;
147  }
148 
150  CameraFrame *frame) override {
151  return true;
152  }
153 
154  std::string Name() const override { return "DummyObstaclePostprocessor"; }
155 };
156 
158  public:
159  bool Init(const ObstacleTrackerInitOptions &options) override { return true; }
160 
161  bool Predict(const ObstacleTrackerOptions &options,
162  CameraFrame *frame) override {
163  return true;
164  }
165 
166  bool Associate2D(const ObstacleTrackerOptions &options,
167  CameraFrame *frame) override {
168  return true;
169  }
170 
171  bool Associate3D(const ObstacleTrackerOptions &options,
172  CameraFrame *frame) override {
173  return true;
174  }
175 
176  bool Track(const ObstacleTrackerOptions &options,
177  CameraFrame *frame) override {
178  frame->tracked_objects.clear();
179  for (auto &detected_object : frame->detected_objects) {
180  frame->tracked_objects.push_back(detected_object);
181  }
182  return true;
183  }
184 
185  std::string Name() const override { return "DummyObstacleTracker"; }
186 };
187 
189  public:
190  bool Init(const ObstacleTransformerInitOptions &options) override {
191  return true;
192  }
194  CameraFrame *frame) override {
195  return true;
196  }
197  std::string Name() const override { return "DummyObstacleTransformer"; }
198 };
199 
201  public:
204  bool Init(const FeatureExtractorInitOptions &init_options) override {
205  return true;
206  }
207 
208  bool Extract(const FeatureExtractorOptions &options,
209  CameraFrame *frame) override {
210  return true;
211  }
212  std::string Name() const override { return "DummyFeatureExtractor"; }
213 };
214 
216  public:
219  bool Init(const LandmarkDetectorInitOptions &options =
220  LandmarkDetectorInitOptions()) override {
221  return true;
222  }
223 
224  bool Detect(const LandmarkDetectorOptions &options,
225  CameraFrame *frame) override {
226  return true;
227  }
228  std::string Name() const override { return "DummyLandmarkDetector"; }
229 };
230 
232  public:
234  virtual ~DummyCalibrator() {}
235  bool Init(
236  const CalibratorInitOptions &options = CalibratorInitOptions()) override {
237  return true;
238  }
239  bool Calibrate(const CalibratorOptions &options,
240  float *pitch_angle) override {
241  return true;
242  }
243  std::string Name() const override { return "DummyCalibrator"; }
244 };
245 
247  public:
250  bool Init(const CalibrationServiceInitOptions &options =
251  CalibrationServiceInitOptions()) override {
252  return true;
253  }
254  bool BuildIndex() override { return true; }
255  bool QueryDepthOnGroundPlane(int x, int y, double *depth) const override {
256  return false;
257  }
258  bool QueryPoint3dOnGroundPlane(int x, int y,
259  Eigen::Vector3d *point3d) const override {
260  return false;
261  }
263  Eigen::Vector4d *plane_param) const override {
264  return false;
265  }
267  float *pitch) const override {
268  return false;
269  }
270  float QueryCameraToGroundHeight() { return 0.f; }
271  float QueryPitchAngle() { return 0.f; }
272  void Update(CameraFrame *frame) override {
273  // do nothing
274  }
275 
277  const std::map<std::string, float> &name_camera_ground_height_map,
278  const std::map<std::string, float> &name_camera_pitch_angle_diff_map,
279  const float &pitch_angle_master_sensor) override {
280  // do nothing
281  }
282 
283  std::string Name() const override { return "DummyCalibrationService"; }
284 };
285 
286 } // namespace camera
287 } // namespace perception
288 } // namespace apollo
Definition: base_obstacle_transformer.h:31
std::string Name() const override
Definition: dummy_algorithms.h:98
std::string Name() const override
Definition: dummy_algorithms.h:197
virtual ~DummyLaneDetector()
Definition: dummy_algorithms.h:64
Definition: dummy_algorithms.h:41
Definition: camera_frame.h:33
bool Init(const InferenceEngineInitOptions &options=InferenceEngineInitOptions()) override
Definition: dummy_algorithms.h:47
void Update(CameraFrame *frame) override
Definition: dummy_algorithms.h:272
Definition: dummy_algorithms.h:215
Definition: dummy_algorithms.h:246
bool Init(const CalibratorInitOptions &options=CalibratorInitOptions()) override
Definition: dummy_algorithms.h:235
std::string Name() const override
Definition: dummy_algorithms.h:212
std::string Name() const override
Definition: dummy_algorithms.h:185
std::string Name() const override
Definition: dummy_algorithms.h:57
Definition: base_landmark_detector.h:31
virtual ~DummyInferenceEngine()
Definition: dummy_algorithms.h:45
Definition: base_obstacle_tracker.h:33
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
Definition: base_lane_tracker.h:33
float QueryPitchAngle()
Definition: dummy_algorithms.h:271
bool Extract(const FeatureExtractorOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:208
bool BuildIndex() override
Definition: dummy_algorithms.h:254
bool Init(const LaneDetectorInitOptions &options={}) override
Definition: dummy_algorithms.h:66
Definition: base_obstacle_detector.h:37
Definition: dummy_algorithms.h:101
DummyLaneDetector()
Definition: dummy_algorithms.h:62
Definition: base_obstacle_detector.h:39
bool Detect(const LaneDetectorOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:70
virtual ~DummyLaneTracker()
Definition: dummy_algorithms.h:105
bool Detect(const ObstacleDetectorOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:130
DummyCalibrator()
Definition: dummy_algorithms.h:233
Eigen::Vector3d Vector3d
Definition: frame_transform.h:27
std::string Name() const override
Definition: dummy_algorithms.h:116
float QueryCameraToGroundHeight()
Definition: dummy_algorithms.h:270
bool Init(const CalibrationServiceInitOptions &options=CalibrationServiceInitOptions()) override
Definition: dummy_algorithms.h:250
bool Predict(const ObstacleTrackerOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:161
Definition: dummy_algorithms.h:200
std::string Name() const override
Definition: dummy_algorithms.h:228
void SetCameraHeightAndPitch(const std::map< std::string, float > &name_camera_ground_height_map, const std::map< std::string, float > &name_camera_pitch_angle_diff_map, const float &pitch_angle_master_sensor) override
Definition: dummy_algorithms.h:276
std::string Name() const override
Definition: dummy_algorithms.h:154
Definition: base_calibrator.h:40
Definition: base_landmark_detector.h:33
bool QueryGroundPlaneInCameraFrame(Eigen::Vector4d *plane_param) const override
Definition: dummy_algorithms.h:262
bool Process2D(const LanePostprocessorOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:88
DummyObstaclePostprocessor()
Definition: dummy_algorithms.h:140
virtual ~DummyLandmarkDetector()
Definition: dummy_algorithms.h:218
Definition: base_feature_extractor.h:43
bool Detect(const LandmarkDetectorOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:224
bool Process3D(const LanePostprocessorOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:93
Definition: dummy_algorithms.h:60
bool Init(const LaneTrackerInitOptions &options=LaneTrackerInitOptions()) override
Definition: dummy_algorithms.h:107
Definition: base_calibrator.h:46
virtual ~DummyLanePostprocessor()
Definition: dummy_algorithms.h:81
Definition: base_lane_detector.h:37
Definition: base_lane_detector.h:35
bool QueryCameraToGroundHeightAndPitchAngle(float *height, float *pitch) const override
Definition: dummy_algorithms.h:266
bool QueryPoint3dOnGroundPlane(int x, int y, Eigen::Vector3d *point3d) const override
Definition: dummy_algorithms.h:258
bool Associate3D(const ObstacleTrackerOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:171
bool QueryDepthOnGroundPlane(int x, int y, double *depth) const override
Definition: dummy_algorithms.h:255
DummyCalibrationService()
Definition: dummy_algorithms.h:248
Definition: base_obstacle_postprocessor.h:36
bool Init(const ObstacleTransformerInitOptions &options) override
Definition: dummy_algorithms.h:190
Definition: base_calibration_service.h:40
bool Init(const ObstacleDetectorInitOptions &options=ObstacleDetectorInitOptions()) override
Definition: dummy_algorithms.h:125
std::string Name() const override
Definition: dummy_algorithms.h:135
bool Calibrate(const CalibratorOptions &options, float *pitch_angle) override
Definition: dummy_algorithms.h:239
Definition: base_lane_tracker.h:31
std::string Name() const override
Definition: dummy_algorithms.h:243
DummyFeatureExtractor()
Definition: dummy_algorithms.h:202
bool Init(const LandmarkDetectorInitOptions &options=LandmarkDetectorInitOptions()) override
Definition: dummy_algorithms.h:219
bool Init(const ObstacleTrackerInitOptions &options) override
Definition: dummy_algorithms.h:159
bool Associate2D(const ObstacleTrackerOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:166
DummyObstacleDetector()
Definition: dummy_algorithms.h:121
bool Transform(const ObstacleTransformerOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:193
std::string Name() const override
Definition: dummy_algorithms.h:74
virtual ~DummyObstaclePostprocessor()
Definition: dummy_algorithms.h:142
DummyInferenceEngine()
Definition: dummy_algorithms.h:43
DummyLandmarkDetector()
Definition: dummy_algorithms.h:217
virtual ~DummyFeatureExtractor()
Definition: dummy_algorithms.h:203
Definition: base_obstacle_transformer.h:29
Definition: base_lane_tracker.h:29
Definition: base_landmark_detector.h:29
DummyLaneTracker()
Definition: dummy_algorithms.h:103
bool Infer(const InferenceEngineOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:52
virtual ~DummyCalibrationService()
Definition: dummy_algorithms.h:249
Definition: base_calibration_service.h:29
virtual ~DummyCalibrator()
Definition: dummy_algorithms.h:234
Definition: base_obstacle_postprocessor.h:29
bool Init(const ObstaclePostprocessorInitOptions &options=ObstaclePostprocessorInitOptions()) override
Definition: dummy_algorithms.h:144
Definition: base_obstacle_detector.h:30
bool Init(const LanePostprocessorInitOptions &options=LanePostprocessorInitOptions()) override
Definition: dummy_algorithms.h:83
Definition: base_inference_engine.h:29
bool Init(const FeatureExtractorInitOptions &init_options) override
Definition: dummy_algorithms.h:204
std::string Name() const override
Definition: dummy_algorithms.h:283
Definition: dummy_algorithms.h:157
Definition: base_obstacle_transformer.h:38
Definition: base_inference_engine.h:33
bool Track(const ObstacleTrackerOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:176
Definition: dummy_algorithms.h:119
std::vector< base::ObjectPtr > tracked_objects
Definition: camera_frame.h:49
DummyLanePostprocessor()
Definition: dummy_algorithms.h:79
Definition: base_lane_postprocessor.h:36
Definition: base_feature_extractor.h:46
Definition: base_lane_postprocessor.h:34
Definition: base_inference_engine.h:31
std::vector< base::ObjectPtr > detected_objects
Definition: camera_frame.h:47
virtual ~DummyObstacleDetector()
Definition: dummy_algorithms.h:123
Definition: dummy_algorithms.h:231
bool Process(const ObstaclePostprocessorOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:149
Definition: base_feature_extractor.h:36
Definition: base_obstacle_postprocessor.h:31
bool Track(const LaneTrackerOptions &options, CameraFrame *frame) override
Definition: dummy_algorithms.h:112
Definition: base_obstacle_tracker.h:35
Definition: base_lane_detector.h:30
Definition: base_obstacle_tracker.h:28
Definition: base_lane_postprocessor.h:29