Используйте TBB с OpenCV и Python (Eclipse)

Я пытаюсь создать свой собственный xml-файл Haar Cascade для использования в распознавании объектов. Следуя этому руководству Мне удалось заставить его работать. Однако создание xml-файла занимает очень много времени, по-видимому, это может занять несколько недель (я отменил свою попытку через два дня - она ​​была далека от завершения).

Затем я наткнулся на эту группу, где она кажется что этот процесс можно сократить с 3 недель до 30 минут с помощью TBB (блоки построения потоков). Это ускорит процесс за счет использования всех ядер в вашей системе.

Загвоздка в том, что для использования TBB вам нужно собрать OpenCV из исходного кода, в чем у меня нет опыта. Я следую этому руководство, но я не совсем понимаю, что делаю.

Постараюсь описать свои беды:

1.) Почти во всех учебниках упоминается использование Visual Studio для сборки и настройки OpenCV. Означает ли это, что эта установка OpenCV + TBB будет работать только в Visual Studio IDE, или я все равно смогу выполнять свою фактическую разработку Python + OpenCV (+ TBB) в Eclipse?

2.) В конце вышеупомянутого руководства объясняется, что вы можете создать файл .exe для установки нового варианта OpenCV в других системах. Если это так просто, почему никто не сделал такой exe (OpenCV + TBB) доступным?

Я надеюсь, что это имеет смысл, я новичок в сборке библиотек из исходников, потому что я обычно придерживаюсь установочных файлов для удобства.

Будем очень признательны за любые советы о том, как заставить TBB работать с OpenCV и Python, или даже просто за некоторые разъяснения концепций, используемых в процессе.

Дополнительный:

Я использую 64-битную Windows 7, Python 2.7, Eclipse Indigo. На моем компьютере установлена ​​Visual Studio 2010 (видимо, мне нужен C-компилятор).


person hjweide    schedule 11.07.2012    source источник


Ответы (1)


Eclipse использует компилятор mingw GCC? В этом случае вы можете просто выполнить сборку mingw, и полученные двоичные файлы будут работать.

В любом случае процедура сборки состоит в том, чтобы просто запустить cmake-gui, а затем либо make, либо nmake в полученном make-файле. Причина, по которой все руководства предназначены для VS, заключается в том, что пользователи VS и Windows менее привыкли создавать проекты с нуля, чем пользователи gcc/linux.

Я не знаю, препятствуют ли условия TBB его распространению, но он действительно требует множества оптимизаций для конкретных процессоров, поэтому opencv, вероятно, придется создавать версии N для разных процессоров.

person Martin Beckett    schedule 11.07.2012
comment
Я надеялся, что смогу это сделать, но когда я запускаю cmake-gui с Elclipse CDT-4 - MinGW Makefiles, я получаю много ошибок. cmake-gui жалуется, что CMake не удалось найти программу сборки, соответствующую файлам Makefile MinGW, а затем упоминает список отсутствующих переменных: с такими записями, как CMAKE_CXX_COMPILER. Ты знаешь что это значит? (Когда я использую VS2010 в качестве генератора для cmake, он работает нормально?) - person hjweide; 11.07.2012
comment
@Casper, который выглядит как проблема с настройкой cmake, вы должны сообщить об этом как об ошибке code.opencv.org/login (необходимо зарегистрироваться) или в группе opencv tech.groups.yahoo. ком/группа/OpenCV - person Martin Beckett; 11.07.2012