У меня есть небольшое изображение 50x50. Я нахожу ORB с ключевыми точками:ORB вычислить ошибку: он удаляет все ключевые точки с небольшим изображением
(Обратите внимание, что я должен изменить параметры по умолчанию patchSize от 31 до 14 лет, чтобы получить некоторые ключевые точки, обнаруженные):
OrbFeatureDetector det(500,1.2f,8,14,0,2,0,14); //> (From 31 to 14)
OrbDescriptorExtractor desc;
det.detect(image,kp)
//> kp.size() is about 50 keypoints
Теперь если я передать свои ключевые точки на orb.compute Я удаляю все ключевые точки.
desc.compute(image,kp,kpDesc);
//> Now kp.size() == 0
Это означает, что после того, как я вызвал .compute, метод удалил все ключевые точки.
Изображение Я использую это:
Я считаю, что это какая-то ошибка. Кто-то может подтвердить? Я использую OpenCV 2.4.5
Как объявляются 'OrbFeatureDetector' и' OrbFeatureExtractor'? Вы инициализируете их чем-то другим, кроме параметров по умолчанию? Когда я пытаюсь обнаружить на вашем изображении, я не получаю обнаруженных ключевых точек. – Aurelius
@Aurelius: да, я изменил PatchSize, чтобы найти больше ключевых точек. Я обновлю код – dynamic
Хм, возможно, я тоже передал тот же параметр в OrbDescriptorExtractor. Да, я только что протестировал его. Теперь ключевые точки не стираются – dynamic