@@ -94,11 +94,11 @@ void DataAssociation::assign(
94
94
const Eigen::MatrixXd & src, std::unordered_map<int , int > & direct_assignment,
95
95
std::unordered_map<int , int > & reverse_assignment)
96
96
{
97
- std::vector<std::vector<double >> score (src.rows ());
97
+ std::vector<std::vector<double >> score (static_cast < size_t >( src.rows () ));
98
98
for (int row = 0 ; row < src.rows (); ++row) {
99
- score.at (row).resize (src.cols ());
99
+ score.at (static_cast < size_t >( row)) .resize (static_cast < size_t >( src.cols () ));
100
100
for (int col = 0 ; col < src.cols (); ++col) {
101
- score.at (row).at (col) = src (row, col);
101
+ score.at (static_cast < size_t >( row)) .at (static_cast < size_t >( col) ) = src (row, col);
102
102
}
103
103
}
104
104
// Solve
@@ -134,15 +134,17 @@ Eigen::MatrixXd DataAssociation::calcScoreMatrix(
134
134
const autoware_perception_msgs::msg::TrackedObjects & objects0,
135
135
const autoware_perception_msgs::msg::TrackedObjects & objects1)
136
136
{
137
- Eigen::MatrixXd score_matrix =
138
- Eigen::MatrixXd::Zero (objects1.objects .size (), objects0.objects .size ());
137
+ Eigen::MatrixXd score_matrix = Eigen::MatrixXd::Zero (
138
+ static_cast <Eigen::Index>(objects1.objects .size ()),
139
+ static_cast <Eigen::Index>(objects0.objects .size ()));
139
140
for (size_t objects1_idx = 0 ; objects1_idx < objects1.objects .size (); ++objects1_idx) {
140
141
const auto & object1 = objects1.objects .at (objects1_idx);
141
142
for (size_t objects0_idx = 0 ; objects0_idx < objects0.objects .size (); ++objects0_idx) {
142
143
const auto & object0 = objects0.objects .at (objects0_idx);
143
144
const double score = calcScoreBetweenObjects (object0, object1);
144
145
145
- score_matrix (objects1_idx, objects0_idx) = score;
146
+ score_matrix (
147
+ static_cast <Eigen::Index>(objects1_idx), static_cast <Eigen::Index>(objects0_idx)) = score;
146
148
}
147
149
}
148
150
return score_matrix;
@@ -159,15 +161,17 @@ Eigen::MatrixXd DataAssociation::calcScoreMatrix(
159
161
const autoware_perception_msgs::msg::TrackedObjects & objects0,
160
162
const std::vector<TrackerState> & trackers)
161
163
{
162
- Eigen::MatrixXd score_matrix = Eigen::MatrixXd::Zero (trackers.size (), objects0.objects .size ());
164
+ Eigen::MatrixXd score_matrix = Eigen::MatrixXd::Zero (
165
+ static_cast <Eigen::Index>(trackers.size ()), static_cast <Eigen::Index>(objects0.objects .size ()));
163
166
for (size_t trackers_idx = 0 ; trackers_idx < trackers.size (); ++trackers_idx) {
164
167
const auto & object1 = trackers.at (trackers_idx).getObject ();
165
168
166
169
for (size_t objects0_idx = 0 ; objects0_idx < objects0.objects .size (); ++objects0_idx) {
167
170
const auto & object0 = objects0.objects .at (objects0_idx);
168
171
const double score = calcScoreBetweenObjects (object0, object1);
169
172
170
- score_matrix (trackers_idx, objects0_idx) = score;
173
+ score_matrix (
174
+ static_cast <Eigen::Index>(trackers_idx), static_cast <Eigen::Index>(objects0_idx)) = score;
171
175
}
172
176
}
173
177
return score_matrix;
0 commit comments