Apollo
10.0
自动驾驶开放平台
evaluator_manager.h
浏览该文件的文档.
1
/******************************************************************************
2
* Copyright 2020 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
22
#pragma once
23
24
#include <list>
25
#include <map>
26
#include <memory>
27
#include <unordered_map>
28
#include <vector>
29
30
#include "
cyber/common/macros.h
"
31
#include "
modules/prediction/evaluator/vehicle/semantic_lstm_evaluator.h
"
32
37
namespace
apollo
{
38
namespace
perception {
39
40
using
apollo::prediction::Obstacle
;
41
using
apollo::prediction::ObstacleHistory
;
42
using
apollo::prediction::ObstaclesContainer
;
43
using
apollo::prediction::SemanticLSTMEvaluator
;
44
using
apollo::prediction::SemanticMap
;
45
46
class
EvaluatorManager
{
47
public
:
48
EvaluatorManager
() =
default
;
53
virtual
~EvaluatorManager
() =
default
;
58
void
Init
();
64
void
Run
(
ObstaclesContainer
* obstacles_container);
65
73
void
EvaluateObstacle
(
Obstacle
* obstacle,
74
ObstaclesContainer
* obstacles_container,
75
std::vector<Obstacle*> dynamic_env);
82
void
EvaluateObstacle
(
Obstacle
* obstacle,
83
ObstaclesContainer
* obstacles_container);
84
85
private
:
86
void
BuildObstacleIdHistoryMap(
ObstaclesContainer
* obstacles_container);
87
88
std::unordered_map<int, ObstacleHistory> obstacle_id_history_map_;
89
std::unique_ptr<SemanticMap> semantic_map_;
90
std::unique_ptr<SemanticLSTMEvaluator> evaluator_;
91
};
92
93
}
// namespace perception
94
}
// namespace apollo
apollo::perception::EvaluatorManager
Definition
evaluator_manager.h:46
apollo::perception::EvaluatorManager::Run
void Run(ObstaclesContainer *obstacles_container)
Run evaluators
Definition
evaluator_manager.cc:57
apollo::perception::EvaluatorManager::EvaluateObstacle
void EvaluateObstacle(Obstacle *obstacle, ObstaclesContainer *obstacles_container, std::vector< Obstacle * > dynamic_env)
Evaluate obstacle
Definition
evaluator_manager.cc:75
apollo::perception::EvaluatorManager::Init
void Init()
Initialize
Definition
evaluator_manager.cc:50
apollo::perception::EvaluatorManager::EvaluatorManager
EvaluatorManager()=default
apollo::perception::EvaluatorManager::~EvaluatorManager
virtual ~EvaluatorManager()=default
Destructor
apollo::prediction::Obstacle
Prediction obstacle.
Definition
obstacle.h:52
apollo::prediction::ObstaclesContainer
Definition
obstacles_container.h:39
apollo::prediction::SemanticLSTMEvaluator
Definition
semantic_lstm_evaluator.h:32
apollo::prediction::SemanticMap
Definition
semantic_map.h:34
macros.h
apollo
class register implement
Definition
arena_queue.h:37
semantic_lstm_evaluator.h
apollo::prediction::ObstacleHistory
Definition
feature.proto:143
modules
perception
radar4d_detection
lib
tracker
semantic_map
evaluator_manager.h