Small updates.

This commit is contained in:
Daniel
2025-05-22 17:50:00 +02:00
parent 69de8b1f2e
commit 26bfa3a63f

View File

@ -711,8 +711,8 @@ std::vector<std::vector<std::array<float, 4>>> TriangulatorInternal::triangulate
{
const auto [i, j, k, l] = indices[e];
int pid1 = num_persons_sum[i] + k;
int pid2 = num_persons_sum[k] + l;
int pid1 = (i > 0 ? num_persons_sum[i - 1] : 0) + k;
int pid2 = (j > 0 ? num_persons_sum[j - 1] : 0) + l;
bool match = false;
if (!last_poses_3d.empty())
@ -1500,8 +1500,6 @@ std::pair<std::vector<std::array<float, 4>>, float> TriangulatorInternal::triang
}
// Drop lowest scores
size_t drop_k = static_cast<size_t>(num_joints * 0.2);
const size_t min_k = 3;
std::vector<float> valid_scores;
for (size_t i = 0; i < num_joints; ++i)
{
@ -1511,9 +1509,9 @@ std::pair<std::vector<std::array<float, 4>>, float> TriangulatorInternal::triang
}
}
size_t scores_size = valid_scores.size();
if (scores_size >= min_k)
size_t drop_k = static_cast<size_t>(scores_size * 0.2);
if (drop_k > 0)
{
drop_k = std::min(drop_k, scores_size - min_k);
std::partial_sort(valid_scores.begin(), valid_scores.begin() + drop_k, valid_scores.end());
valid_scores.erase(valid_scores.begin(), valid_scores.begin() + drop_k);
}