Apollo
11.0
自动驾驶开放平台
external_feature_extractor.h
浏览该文件的文档.
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
// NOLINT
17
18
#include <memory>
19
#include <string>
20
21
#include "modules/perception/camera_tracking/feature_extract/proto/model_param.pb.h"
22
23
#include "
modules/perception/camera_tracking/interface/base_feature_extractor.h
"
24
#include "
modules/perception/common/inference/inference.h
"
25
26
namespace
apollo
{
27
namespace
perception {
28
namespace
camera {
29
30
class
ExternalFeatureExtractor
:
public
BaseFeatureExtractor
{
31
public
:
32
ExternalFeatureExtractor
() =
default
;
33
~ExternalFeatureExtractor
() =
default
;
34
35
bool
Init
(
const
FeatureExtractorInitOptions
&init_options)
override
;
36
bool
Extract
(
const
FeatureExtractorOptions
&options,
37
CameraTrackingFrame
*frame)
override
;
38
39
private
:
40
bool
InitFeatureExtractor(
const
FeatureExtractorInitOptions
&options);
41
42
private
:
43
std::shared_ptr<base::Image8U> image_ =
nullptr
;
44
std::shared_ptr<inference::Inference> net_;
45
std::shared_ptr<BaseFeatureExtractor> feature_extractor_;
46
tracking_feature::ModelParam
model_param_;
47
int
height_;
48
int
width_;
49
int
gpu_id_;
50
};
51
52
}
// namespace camera
53
}
// namespace perception
54
}
// namespace apollo
base_feature_extractor.h
apollo::perception::camera::BaseFeatureExtractor
Definition
base_feature_extractor.h:48
apollo::perception::camera::ExternalFeatureExtractor
Definition
external_feature_extractor.h:30
apollo::perception::camera::ExternalFeatureExtractor::~ExternalFeatureExtractor
~ExternalFeatureExtractor()=default
apollo::perception::camera::ExternalFeatureExtractor::ExternalFeatureExtractor
ExternalFeatureExtractor()=default
apollo::perception::camera::ExternalFeatureExtractor::Extract
bool Extract(const FeatureExtractorOptions &options, CameraTrackingFrame *frame) override
Definition
external_feature_extractor.cc:100
apollo::perception::camera::ExternalFeatureExtractor::Init
bool Init(const FeatureExtractorInitOptions &init_options) override
Definition
external_feature_extractor.cc:33
inference.h
apollo
class register implement
Definition
arena_queue.h:37
apollo::perception::camera::CameraTrackingFrame
Definition
camera_tracking_frame.h:31
apollo::perception::camera::FeatureExtractorInitOptions
Definition
base_feature_extractor.h:36
apollo::perception::camera::FeatureExtractorOptions
Definition
base_feature_extractor.h:44
apollo::perception::camera::tracking_feature::ModelParam
Definition
model_param.proto:8
modules
perception
camera_tracking
feature_extract
external_feature_extractor.h