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

Merge remote-tracking branch 'upstream/3.4' into merge-3.4

This commit is contained in:
Alexander Alekhin
2020-07-13 19:54:49 +00:00
13 changed files with 668 additions and 128 deletions
+10 -5
View File
@@ -625,15 +625,20 @@ void DescriptorMatcher::checkMasks( InputArrayOfArrays _masks, int queryDescript
if( isMaskSupported() && !masks.empty() )
{
// Check masks
size_t imageCount = std::max(trainDescCollection.size(), utrainDescCollection.size() );
const size_t imageCount = std::max(trainDescCollection.size(), utrainDescCollection.size() );
CV_Assert( masks.size() == imageCount );
for( size_t i = 0; i < imageCount; i++ )
{
if( !masks[i].empty() && (!trainDescCollection[i].empty() || !utrainDescCollection[i].empty() ) )
if (masks[i].empty())
continue;
const bool hasTrainDesc = !trainDescCollection.empty() && !trainDescCollection[i].empty();
const bool hasUTrainDesc = !utrainDescCollection.empty() && !utrainDescCollection[i].empty();
if (hasTrainDesc || hasUTrainDesc)
{
int rows = trainDescCollection[i].empty() ? utrainDescCollection[i].rows : trainDescCollection[i].rows;
CV_Assert( masks[i].rows == queryDescriptorsCount &&
masks[i].cols == rows && masks[i].type() == CV_8UC1);
const int rows = hasTrainDesc ? trainDescCollection[i].rows : utrainDescCollection[i].rows;
CV_Assert(masks[i].type() == CV_8UC1
&& masks[i].rows == queryDescriptorsCount
&& masks[i].cols == rows);
}
}
}