C++ исключение в cv::BFMatcher
У меня проблемы с cv::BFMatcher, когда я пытаюсь выполнить сопоставление функций. Я вычисляю дескрипторы с помощью дескриптора xfeatures2D::SIFT. Когда я пытаюсь выполнить сопоставление, вывод приложения показывает "Исключение в 0x7ff833308b9c, код: 0xe06d7363: исключение C++, flags=0x1 (выполнение не может быть продолжено) (первый шанс) в f:\dd\vctools\crt_bld\self_64_amd64\crt\src\xthrow.cpp:13"Код выглядит примерно так:
matchesltor.clear();
matchesrtol.clear();
cv::BFMatcher matcher(cv::NORM_L2);
ProcessedImageData *imageDataLeft = mImageDataMap.value(mapKeyList.at(m));
std::vector<cv::KeyPoint> tiePointsLeft = imageDataLeft->getTiepoints();
cv::Mat descriptorsLeft= imageDataLeft->getDescriptors();
ProcessedImageData *imageDataRight = mImageDataMap.value(mapKeyList.at(n));
std::vector<cv::KeyPoint> tiePointsRight = imageDataRight->getTiepoints();
cv::Mat descriptorsRight= imageDataRight->getDescriptors();
matcher.knnMatch(descriptorsLeft,descriptorsRight,matchesltor,2)
matcher.knnMatch(descriptorsRight,descriptorsLeft,matchesrtol,2)
Выходное сообщение отображается в первой строке, которая выполняет сопоставление "matcher.knnMatch(descriptorsLeft,descriptorsRight,matchltor,2)".
Странно то, что он работает в одном проекте qt, который выполняет только обнаружение связующих точек, описание связующих точек и сопоставление, но когда я пытаюсь присоединить его к другому проекту (тот же код, тот же компилятор и та же версия qt), он показывает этот вывод сообщение и остановка выполнения (приложение не прерывается).
Спасибо за вашу помощь.