1
0
mirror of https://github.com/opencv/opencv.git synced 2026-07-29 07:13:02 +04:00

Merge pull request #19552 from WeiChungChang:partialSort

apply partial sort to save computations

* apply partial sort

* fix typo

* fix accroding to CR
This commit is contained in:
WeiChungChang
2021-02-22 11:44:00 -05:00
committed by GitHub
parent 98c2ccfaa3
commit f6bc4fd4c6
@@ -611,8 +611,13 @@ public:
}
}
// Keep outputs k results per image.
std::sort(scoreIndexPairs.begin(), scoreIndexPairs.end(),
util::SortScorePairDescend<std::pair<int, int> >);
if ((_keepTopK * 8) > scoreIndexPairs.size()) {
std::sort(scoreIndexPairs.begin(), scoreIndexPairs.end(),
util::SortScorePairDescend<std::pair<int, int> >);
} else {
std::partial_sort(scoreIndexPairs.begin(), scoreIndexPairs.begin() + _keepTopK, scoreIndexPairs.end(),
util::SortScorePairDescend<std::pair<int, int> >);
}
scoreIndexPairs.resize(_keepTopK);
std::map<int, std::vector<int> > newIndices;