Перейти к содержимому
Compvision.ru

Эдуард

Пользователи
  • Количество публикаций

    3
  • Зарегистрирован

  • Посещение

Репутация

0 Новичек

О Эдуард

  • Звание
    Новичок
  1. Я новичок не только в распознавании, но и в программировании на с++, поэтому нуждаюсь в совете. При написании тестовой задачи у меня возникла одна ошибка: «использование объекта абстрактного типа класса "cv::xfeatures2d::SURF" не допускается:». Я использовал этот код. SurfDescriptorExtractor extractor; Mat descriptors_object, descriptors_scene; extractor.compute( img_object, keypoints_object, descriptors_object ); extractor.compute( img_scene, keypoints_scene, descriptors_scene ); Однако в других примерах я обнаружил другое оформление того же самого и поступил по аналогии ним. Ptr<SURF> extractor = SURF::create(); Mat descriptors_object, descriptors_scene; extractor->compute(img_object, keypoints_object, descriptors_object); extractor->compute(img_scene, keypoints_scene, descriptors_scene); Всё заработало. Осталось теперь понять – почему возникла ошибка и что я такого сделал, что она исчезла. Не хочу пропускать такие принципиальные вещи. Помогите разобраться.
  2. Коллеги, задача решена - помогла пересборка библиотеки (cmake-ом). По-видимому, в предыдущие разы собирал из разных файлов и с кучей неработающих настроек и ссылок. Аккуратный повтор сборки привёл к работоспособной версии.
  3. Уважаемые коллеги. Помогите с решением такой проблемы. Установил библиотеку opencv, вроде добился того, что одна простая тестовая программа по распознаванию заработала. Решил перейти к функции SURF, которая мне как раз и необходима, возникла ошибка, обработать которую уже сколько времени никак не могу: «тип компьютера модуля "x64" противоречит типу целевого компьютера "X86"». Что делать?
×