Apollo  6.0
Open source self driving car software
params.h
Go to the documentation of this file.
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 
17 #pragma once
18 
19 #include <vector>
20 
21 namespace apollo {
22 namespace perception {
23 namespace lidar {
24 
25 class Params {
26  public:
27  static constexpr float kPillarXSize = 0.32f;
28  static constexpr float kPillarYSize = 0.32f;
29  static constexpr float kPillarZSize = 6.0f;
30  static constexpr float kMinXRange = -74.88f;
31  static constexpr float kMinYRange = -74.88f;
32  static constexpr float kMinZRange = -2.0f;
33  static constexpr float kMaxXRange = 74.88f;
34  static constexpr float kMaxYRange = 74.88f;
35  static constexpr float kMaxZRange = 4.0f;
36  static constexpr int kNumClass = 3;
37  static constexpr int kMaxNumPillars = 32000;
38  static constexpr int kMaxNumPointsPerPillar = 20;
39  static constexpr int kNumPointFeature = 5; // x, y, z, i, delta of time
40  static constexpr int kNumAnchor = 468 * 468 * 6;
41  static constexpr int kNumOutputBoxFeature = 7;
42  static constexpr int kBatchSize = 1;
43  static constexpr int kNumIndsForScan = 1024;
44  static constexpr int kNumThreads = 64;
45  static constexpr int kNumBoxCorners = 4;
46 
47  static std::vector<int> AnchorStrides() { return std::vector<int>{1}; }
48 
49  static std::vector<int> NumAnchorSets() { return std::vector<int>{6}; }
50 
51  static std::vector<std::vector<float>> AnchorDxSizes() {
52  return std::vector<std::vector<float>>{
53  std::vector<float>{2.08, 0.84, 0.84}};
54  }
55 
56  static std::vector<std::vector<float>> AnchorDySizes() {
57  return std::vector<std::vector<float>>{
58  std::vector<float>{4.73, 1.81, 0.91}};
59  }
60 
61  static std::vector<std::vector<float>> AnchorDzSizes() {
62  return std::vector<std::vector<float>>{
63  std::vector<float>{1.77, 1.77, 1.74}};
64  }
65 
66  static std::vector<std::vector<float>> AnchorZCoors() {
67  return std::vector<std::vector<float>>{
68  std::vector<float>{-0.0345, -0.1188, 0}};
69  }
70 
71  static std::vector<std::vector<int>> NumAnchorRo() {
72  return std::vector<std::vector<int>>{std::vector<int>{2, 2, 2}};
73  }
74 
75  static std::vector<std::vector<float>> AnchorRo() {
76  return std::vector<std::vector<float>>{
77  std::vector<float>{0, M_PI / 2, 0, M_PI / 2, 0, M_PI / 2}};
78  }
79 
80  private:
81  Params() = default;
82  ~Params() = default;
83 }; // class Params
84 
85 } // namespace lidar
86 } // namespace perception
87 } // namespace apollo
static std::vector< std::vector< float > > AnchorDzSizes()
Definition: params.h:61
static std::vector< std::vector< float > > AnchorZCoors()
Definition: params.h:66
static constexpr int kNumAnchor
Definition: params.h:40
static constexpr int kNumClass
Definition: params.h:36
static constexpr int kBatchSize
Definition: params.h:42
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
static constexpr float kPillarXSize
Definition: params.h:27
static std::vector< std::vector< float > > AnchorDxSizes()
Definition: params.h:51
static constexpr int kNumIndsForScan
Definition: params.h:43
static constexpr float kPillarZSize
Definition: params.h:29
static std::vector< std::vector< int > > NumAnchorRo()
Definition: params.h:71
static constexpr int kMaxNumPointsPerPillar
Definition: params.h:38
static constexpr int kMaxNumPillars
Definition: params.h:37
static constexpr float kMinZRange
Definition: params.h:32
static constexpr int kNumBoxCorners
Definition: params.h:45
Definition: params.h:25
static constexpr int kNumPointFeature
Definition: params.h:39
static std::vector< std::vector< float > > AnchorDySizes()
Definition: params.h:56
static constexpr float kMinYRange
Definition: params.h:31
static constexpr int kNumOutputBoxFeature
Definition: params.h:41
static constexpr float kMaxZRange
Definition: params.h:35
static constexpr float kPillarYSize
Definition: params.h:28
static std::vector< std::vector< float > > AnchorRo()
Definition: params.h:75
static constexpr float kMaxYRange
Definition: params.h:34
static std::vector< int > NumAnchorSets()
Definition: params.h:49
static std::vector< int > AnchorStrides()
Definition: params.h:47
static constexpr int kNumThreads
Definition: params.h:44
static constexpr float kMaxXRange
Definition: params.h:33
static constexpr float kMinXRange
Definition: params.h:30