1 #ifndef vnl_hungarian_algorithm_h_ 2 #define vnl_hungarian_algorithm_h_ 12 # include <vcl_msvc_warnings.h> 15 #include "vnl/vnl_export.h" 66 operator std::vector<unsigned>() {
return GetAssignmentVector(); }
72 void StartAssignment();
78 AssignmentMatrixType GetAssignmentMatrix();
81 AssignmentVectorType GetAssignmentVector();
141 void clear_vector( std::vector<bool>& );
170 #define VNL_HUNGARIAN_ALGORITHM_INSTANTIATE(T) extern "please #include vnl/vnl_hungarian_algorithm.hxx instead" 172 #endif // vnl_hungarian_algorithm_h_
unsigned m_Z0_r
Row and col of the primed zero in step four to pass to step five.
An ordinary mathematical matrix.
vnl_hungarian_algorithm(vnl_matrix< T > const &cost)
This constructor (and the following cast operator) is provided for backward compatibility with the or...
vnl_hungarian_algorithm()
AssignmentMatrixType m_M
m_M(i,j) = 1 => m_Cost(i,j) is starred m_M(i,j) = 2 => m_Cost(i,j) is primed
T m_TotalCost
Total cost of the assignment.
vnl_matrix< int > AssignmentMatrixType
AssignmentVectorType m_AssignmentVector
m_C_cov[j] = true => column j is covered.
vnl_matrix< T > m_Cost_in
std::vector< bool > m_R_cov
m_R_cov[i] = true => row i is covered.
unsigned m_N
Size of the input matrix.
std::vector< unsigned > AssignmentVectorType
Find the best column to row assignment given a cost matrix.
std::vector< bool > m_C_cov
m_C_cov[j] = true => column j is covered.