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

ARToolkit + OpenCV + OpenGL на C++ Builder6

Recommended Posts

Smorodov    523

ArToolkit.jpg

Пример на C++ Builder6. AR_Project.rar

Для компиляции примера нужно установить компоненты: MyComponents.rar

Калибровка камеры делается при помощи утилиты калибровки, входящей в пакет ARToolkit как написано здесь:

http://www.hitl.washington.edu/artoolkit/d...calibration.htm

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
eagle_eyes    0

а можно продублировать для MSVC? у меня есть собранный PTAM там libcvd + OpenGL так же сейчас делаю AR: AForge  + GRATF + OpenGL

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
BeS    52
4 hours ago, eagle_eyes said:

а можно продублировать для MSVC? у меня есть собранный PTAM там libcvd + OpenGL так же сейчас делаю AR: AForge  + GRATF + OpenGL

Можете попробовать мной модифицированный код PTAM (https://github.com/BelBES/PTAM), он там с CMake'а под любую платформу по идее должен строиться (как-то меня просили его под Android собрать)...правда там GUI OpenGL'ный выпилен, т.к. он не GLES'ный...

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Smorodov    523

Пришлось добавить pthread к проекту CVD.

target_link_libraries(cvd ${PTAM_DEPENDENCY_LIBS}  pthread)

в PTAM-master/3rdparty/CVD/CMakeLists.txt 

иначе неразрешенные символы выдавал.

Призапуске показал вывод с камерыб понажимал 's','p' и пробел, но так ничего и не нарисовалось в кадре.

Исходники пока не копал, но с накату не получилось.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
BeS    52
6 minutes ago, Smorodov said:

Пришлось добавить pthread к проекту CVD.

target_link_libraries(cvd ${PTAM_DEPENDENCY_LIBS}  pthread)

в PTAM-master/3rdparty/CVD/CMakeLists.txt 

иначе неразрешенные символы выдавал.

Призапуске показал вывод с камерыб понажимал 's','p' и пробел, но так ничего и не нарисовалось в кадре.

Исходники пока не копал, но с накату не получилось.

Точно, в Windows же нету адекватных pthread) CVD, кстати, при желании довольно легко выпилить из PTAM'а.

Что касается демо, то там после тычка в 's' нужно камерой пошевелить для инициализации стерео-базы...подбирается оно на глаз, т.ч. маленкьо пошевелив камерой, нужно ткнуть 'p' и тогда пойдет трекинг и будут визуализироваться проекции 3D фич в кадр. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Smorodov    523

Ну я в ubuntu 14.04 собирал, в винде пока не пробовал.

Ага, токма тычков по s должно быть два. В первый раз он что то про пробел лопочет, а во второй раз небольшой фриз, и тогда трекать начинает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
BeS    52
13 minutes ago, Smorodov said:

Ну я в ubuntu 14.04 собирал, в винде пока не пробовал.

 

Тогда странно, там в CMake чуть выше есть строка:

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++0x -mtune=corei7 -march=corei7 -lpthread")
 

которой для Ubuntu должно быть достаточно, чтобы все правильно слинковать.
Собираете актуальным gcc, или clang?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Smorodov    523

Да, она меня вначале и озадачила, вроде phtread подцеплен, а при сборке теста и примера ругается на неразрешенные символы. 

Компилятор: gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4 

CMAKE: 2.8.12.2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
BeS    52

Любопытно, вроде бы я +/- темиже тулами собирал, но проблем не было....может окружение какое не доставлено...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Smorodov    523

Может у меня слишком старая версия CMAKE?

Мне думается CMAKE_CXX_FLAGS не должен быть пустой.

Screenshot from 2016-01-14 09:31:06.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
BeS    52

Ох, гуевина у CMake'а какая-то глючная, я ей не пользуюсь, может в этом все дело...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Smorodov    523

Без GUI та же история:

Linking CXX executable simple_app
/usr/bin/ld: ../../3rdparty/CVD/libcvd.a(thread.cpp.o): undefined reference to symbol 'pthread_yield@@GLIBC_2.2.5'
/lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [apps/simple_app/simple_app] Error 1
make[1]: *** [apps/simple_app/CMakeFiles/simple_app.dir/all] Error 2
make: *** [all] Error 2
 

Да проблема, то небольшая, главное запускается, спасибо за адаптацию исходников.

Поковыряю на досуге :) 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×