Apollo
10.0
自动驾驶开放平台
camera_tracking_frame.h
浏览该文件的文档.
1
/******************************************************************************
2
* Copyright 2023 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 <memory>
19
#include <vector>
20
21
#include "
modules/common/util/eigen_defs.h
"
22
#include "
modules/perception/common/base/blob.h
"
23
#include "
modules/perception/common/base/object_pool_types.h
"
24
#include "
modules/perception/common/camera/common/data_provider.h
"
25
#include "
modules/perception/common/lib/interface/base_calibration_service.h
"
26
27
namespace
apollo
{
28
namespace
perception {
29
namespace
camera {
30
31
struct
CameraTrackingFrame
{
32
// Frame sequence id
33
std::uint64_t
frame_id
;
34
// Timestamp
35
double
timestamp
;
36
// Image
37
std::shared_ptr<camera::DataProvider>
data_provider
;
38
// Detection result
39
std::vector<base::ObjectPtr>
detected_objects
;
40
// proposed_objects
41
std::vector<base::ObjectPtr>
proposed_objects
;
42
// tracked objects
43
std::vector<base::ObjectPtr>
tracked_objects
;
44
// Camera Intrinstic
45
Eigen::Matrix3f
camera_k_matrix
= Eigen::Matrix3f::Identity();
46
// Tracking feature blob
47
std::shared_ptr<base::Blob<float>>
track_feature_blob
=
nullptr
;
48
// appearance features for tracking
49
std::shared_ptr<base::Blob<float>>
feature_blob
=
nullptr
;
50
// calibration service
51
BaseCalibrationService
*
calibration_service
=
nullptr
;
52
// narrow to obstacle projected_matrix
53
Eigen::Matrix3d
project_matrix
= Eigen::Matrix3d::Identity();
54
// camera to world pose
55
Eigen::Affine3d
camera2world_pose
= Eigen::Affine3d::Identity();
56
57
EIGEN_MAKE_ALIGNED_OPERATOR_NEW
58
};
59
60
}
// namespace camera
61
}
// namespace perception
62
}
// namespace apollo
base_calibration_service.h
blob.h
apollo::perception::camera::BaseCalibrationService
Definition
base_calibration_service.h:43
data_provider.h
eigen_defs.h
apollo
class register implement
Definition
arena_queue.h:37
object_pool_types.h
apollo::perception::camera::CameraTrackingFrame
Definition
camera_tracking_frame.h:31
apollo::perception::camera::CameraTrackingFrame::camera_k_matrix
Eigen::Matrix3f camera_k_matrix
Definition
camera_tracking_frame.h:45
apollo::perception::camera::CameraTrackingFrame::timestamp
double timestamp
Definition
camera_tracking_frame.h:35
apollo::perception::camera::CameraTrackingFrame::feature_blob
std::shared_ptr< base::Blob< float > > feature_blob
Definition
camera_tracking_frame.h:49
apollo::perception::camera::CameraTrackingFrame::track_feature_blob
std::shared_ptr< base::Blob< float > > track_feature_blob
Definition
camera_tracking_frame.h:47
apollo::perception::camera::CameraTrackingFrame::detected_objects
std::vector< base::ObjectPtr > detected_objects
Definition
camera_tracking_frame.h:39
apollo::perception::camera::CameraTrackingFrame::data_provider
std::shared_ptr< camera::DataProvider > data_provider
Definition
camera_tracking_frame.h:37
apollo::perception::camera::CameraTrackingFrame::proposed_objects
std::vector< base::ObjectPtr > proposed_objects
Definition
camera_tracking_frame.h:41
apollo::perception::camera::CameraTrackingFrame::camera2world_pose
Eigen::Affine3d camera2world_pose
Definition
camera_tracking_frame.h:55
apollo::perception::camera::CameraTrackingFrame::frame_id
std::uint64_t frame_id
Definition
camera_tracking_frame.h:33
apollo::perception::camera::CameraTrackingFrame::tracked_objects
std::vector< base::ObjectPtr > tracked_objects
Definition
camera_tracking_frame.h:43
apollo::perception::camera::CameraTrackingFrame::calibration_service
BaseCalibrationService * calibration_service
Definition
camera_tracking_frame.h:51
apollo::perception::camera::CameraTrackingFrame::project_matrix
Eigen::Matrix3d project_matrix
Definition
camera_tracking_frame.h:53
modules
perception
camera_tracking
common
camera_tracking_frame.h