Apollo 11.0
自动驾驶开放平台
apollo::perception::algorithm::GatedHungarianMatcher< T > 模板类 参考

#include <gated_hungarian_bigraph_matcher.h>

apollo::perception::algorithm::GatedHungarianMatcher< T > 的协作图:

Public 类型

enum class  OptimizeFlag { OPTMAX , OPTMIN }
 

Public 成员函数

 GatedHungarianMatcher (int max_matching_size=1000)
 
 ~GatedHungarianMatcher ()
 
const SecureMat< T > & global_costs () const
 
SecureMat< T > * mutable_global_costs ()
 
void Match (T cost_thresh, OptimizeFlag opt_flag, std::vector< std::pair< size_t, size_t > > *assignments, std::vector< size_t > *unassigned_rows, std::vector< size_t > *unassigned_cols)
 
void Match (T cost_thresh, T bound_value, OptimizeFlag opt_flag, std::vector< std::pair< size_t, size_t > > *assignments, std::vector< size_t > *unassigned_rows, std::vector< size_t > *unassigned_cols)
 

详细描述

template<typename T>
class apollo::perception::algorithm::GatedHungarianMatcher< T >

在文件 gated_hungarian_bigraph_matcher.h35 行定义.

成员枚举类型说明

◆ OptimizeFlag

构造及析构函数说明

◆ GatedHungarianMatcher()

template<typename T >
apollo::perception::algorithm::GatedHungarianMatcher< T >::GatedHungarianMatcher ( int  max_matching_size = 1000)
inlineexplicit

在文件 gated_hungarian_bigraph_matcher.h39 行定义.

39 {
40 global_costs_.Reserve(max_matching_size, max_matching_size);
41 optimizer_.costs()->Reserve(max_matching_size, max_matching_size);
42 }

◆ ~GatedHungarianMatcher()

在文件 gated_hungarian_bigraph_matcher.h43 行定义.

43{}

成员函数说明

◆ global_costs()

template<typename T >
const SecureMat< T > & apollo::perception::algorithm::GatedHungarianMatcher< T >::global_costs ( ) const
inline

在文件 gated_hungarian_bigraph_matcher.h52 行定义.

52{ return global_costs_; }

◆ Match() [1/2]

template<typename T >
void apollo::perception::algorithm::GatedHungarianMatcher< T >::Match ( cost_thresh,
OptimizeFlag  opt_flag,
std::vector< std::pair< size_t, size_t > > *  assignments,
std::vector< size_t > *  unassigned_rows,
std::vector< size_t > *  unassigned_cols 
)

在文件 gated_hungarian_bigraph_matcher.h124 行定义.

128 {
129 Match(cost_thresh, cost_thresh, opt_flag, assignments, unassigned_rows,
130 unassigned_cols);
131}
void Match(T cost_thresh, OptimizeFlag opt_flag, std::vector< std::pair< size_t, size_t > > *assignments, std::vector< size_t > *unassigned_rows, std::vector< size_t > *unassigned_cols)

◆ Match() [2/2]

template<typename T >
void apollo::perception::algorithm::GatedHungarianMatcher< T >::Match ( cost_thresh,
bound_value,
OptimizeFlag  opt_flag,
std::vector< std::pair< size_t, size_t > > *  assignments,
std::vector< size_t > *  unassigned_rows,
std::vector< size_t > *  unassigned_cols 
)

在文件 gated_hungarian_bigraph_matcher.h134 行定义.

138 {
139 CHECK_NOTNULL(assignments);
140 CHECK_NOTNULL(unassigned_rows);
141 CHECK_NOTNULL(unassigned_cols);
142
143 /* initialize matcher */
144 cost_thresh_ = cost_thresh;
145 opt_flag_ = opt_flag;
146 bound_value_ = bound_value;
147 assignments_ptr_ = assignments;
148 MatchInit();
149
150 /* compute components */
151 std::vector<std::vector<size_t>> row_components;
152 std::vector<std::vector<size_t>> col_components;
153 this->ComputeConnectedComponents(&row_components, &col_components);
154 CHECK_EQ(row_components.size(), col_components.size());
155
156 /* compute assignments */
157 assignments_ptr_->clear();
158 assignments_ptr_->reserve(std::max(rows_num_, cols_num_));
159 for (size_t i = 0; i < row_components.size(); ++i) {
160 this->OptimizeConnectedComponent(row_components[i], col_components[i]);
161 }
162
163 this->GenerateUnassignedData(unassigned_rows, unassigned_cols);
164}

◆ mutable_global_costs()

template<typename T >
SecureMat< T > * apollo::perception::algorithm::GatedHungarianMatcher< T >::mutable_global_costs ( )
inline

在文件 gated_hungarian_bigraph_matcher.h53 行定义.

53{ return &global_costs_; }

该类的文档由以下文件生成: