в Windows XP після цього потрібне перезавантаження :(
2. Налаштовуємо Visual Studio IDE (наприклад, Express Edition)
2.1. прописуємо шлях до заголовним файлів (за потребою видаляючи шляху до старої версії бібліотеки):
Tools-> Options-> Projects-> VC ++ Directories-> Include files
2.2. шлях до lib-файлів:
Tools-> Options-> Projects-> VC ++ Directories-> Library files
2.3. для зручності, можна вказати каталоги вихідних файлів
Tools-> Options-> Projects-> VC ++ Directories-> Source files
2.4. Залишається прописати в налаштуваннях вашого проекту (Project-> Properties-> Configuration Properties-> Linker-> Input) необхідні lib-файли.
Але можна, наприклад, просто прописати в заголовки проекту:
- зверніть увагу, що Debug-версія програми, зібрана з Release-версією бібліотеки може іноді поводитися трохи дивно;)
Однак, при спробі запустити отладочную версію програми у вас швидше за все з'явиться помилка про те, що не знайдений файл tbb_debug.dll
TBB - Intel Threading Building Blocks (Intel TBB) - це кроссплатформенная бібліотека шаблонів С ++, розроблена компанією Intel для паралельного програмування і містить алгоритми і структури даних, що дозволяють уникнути складнощів, що виникають при використанні традиційних реалізацій потоківсайт:
threadingbuildingblocks.org
3. вирішується це дуже просто - завантажуємо останній стабільний реліз бібліотеки TBB для Windows.
Розпаковуємо архів і копіюємо з заміщенням всі файли з каталогу bin \ ia32 \ в директорію C: \ opencv \ build \ common \ tbb \ (в числі інших там буде і шуканий tbb_debug.dll).
4. Пробуємо :)
створимо порожній консольний проект, додамо в нього cpp-файл, в який вставимо шматок коду з пункту 2.4 і додамо код простого завантаження картинки через інтерфейс C ++:
Установка OpenCV 2.3.1 під Linux ідентична установці 2.2.0
PS слід відзначити той факт, що OpenCV (як і ROS) рухається в бік модульності і використання сторонніх відкритих бібліотек (наприклад, Eigen. TBB і т.п.)
дані файли знайшов в 2 папках:
C: \ OpenCV231 \ include \ include
і
C: \ OpenCV231 \ build \ include
якщо додаю в каталоги включення будь-якої із шляхів, отримую купу помилок
Помилка 1 error C3862: cvRound: некеровану функцію неможливо компілювати з параметрами / clr: pure або / clr: safe C: \ OpenCV231 \ include \ include \ opencv2 \ core \ types_c.h 289 1 TS1
Помилка 3 error C3861: _InterlockedExchangeAdd: ідентифікатор не найден C: \ OpenCV231 \ include \ include \ opencv2 \ core \ mat.hpp 115 1 TS1
Помилка 4 error C3861: _InterlockedExchangeAdd: ідентифікатор не найден C: \ OpenCV231 \ include \ include \ opencv2 \ core \ mat.hpp 305 1 TS1
Помилка 5 error C3861: _InterlockedExchangeAdd: ідентифікатор не найден C: \ OpenCV231 \ include \ include \ opencv2 \ core \ mat.hpp 377 1 TS1
Помилка 6 error C3861: _InterlockedExchangeAdd: ідентифікатор не найден C: \ OpenCV231 \ include \ include \ opencv2 \ core \ mat.hpp 381 1 TS1
Помилка 7 error C3861: _InterlockedExchangeAdd: ідентифікатор не найден C: \ OpenCV231 \ include \ include \ opencv2 \ core \ mat.hpp 2064 1 TS1
Помилка 8 error C3861: _InterlockedExchangeAdd: ідентифікатор не найден C: \ OpenCV231 \ include \ include \ opencv2 \ core \ mat.hpp 2092 1 TS1
Помилка 9 error C3861: _InterlockedExchangeAdd: ідентифікатор не найден C: \ OpenCV231 \ include \ include \ opencv2 \ core \ mat.hpp 2096 1 TS1
Помилка 2 error C3645: cvRound: __clrcall неможливо використовувати з функціями, скомпільованими в машинний код C: \ OpenCV231 \ include \ include \ opencv2 \ core \ types_c.h 289 1 TS1
по 1 помилку скаржиться на фаил types_c.h на рядок
CV_INLINE int cvRound (double value)
інші де зустрічається CV_XADD (refcount, 1); в модулі mat.hpp
і остання CV_INLINE int cvRound (double value) в types_c.h
Не знаю що робити, б'юся вже 2 день, пробував різні способи усановкі ...
спробуйте залишити тільки один шлях до заголовків файлів -
тобто прибрати ці?
C: \ opencv \ build \ include \ opencv
C: \ opencv \ build \ include \
у мене ці шляхи були такі
C: \ OpenCV231 \ build \ include \ opencv
C: \ OpenCV231 \ build \ include \
до них додав
C: \ OpenCV231 \ build \ include
це було до вашої відповіді.
Після спробував прибрати шляху
C: \ OpenCV231 \ build \ include \ opencv
C: \ OpenCV231 \ build \ include \
залишився тільки
C: \ OpenCV231 \ build \ include
Все залишилося як раніше.
Якщо хоч трохи розумієш англійську, то рекомендую ось цю сторіночку Там досить докладно все описано і з скріншот. По ній я без проблем все налаштував і у мене все скомпілювати. До того ж там досить цікавий приклад (для нього потрібно веб камера). Якщо будуть питання - пиши.
Спасибі, ніби вийшло. Зараз розбираюся, правда камера не включається. Але зараз покрапав що до чого.
У мене була проблема при виконанні програми. Викидало помилку. Але потім виявилося, що просто була відключена камера в диспетчері пристроїв. Після включення все відразу запрацювало.
Намагаюся розбити картинку на 3 канали:
швидше за все - не вдається вважати картинку.
ЗИ. для питань, що безпосередньо не відносяться до тематики статей є форум.
Дивно, що довелося перевантажувати Windows XP, я обходився без цього (XP + SP3). Начебто після зміни всіх змінних середовища потрібно перезапускати всі запущені консольні додатки типу cmd.exe або FAR, можливо і Visual Studio, тому що вона теж зі змінними середовища мудрує ...
З приводу додавання шляхів в PATH - в Windows є обмеження на довжину змінної середовища. Була справа - поставив програму, вона дописала в кінець PATH шляху до себе і ... відмовилася нормально працювати. Тому зараз роблю так: створюю папку C: \ tools, прописую її в PATH, а в неї кидаю різні потрібні dll-файли (OpenCV, CUDA, TBB і т.д.) і різні корисні програми, що не ребуют установки і складаються з 1 файлу, наприклад GNU make!
Допоможіть, видає помилку «Запуск програми неможливий, так як на комп'ютері відсутня opencv_core231d.dll"
opencv_core231d.dll існує, але помилка все ж
Якщо при вставці коду з наступного пункту буде така ось помилка:
«Запуск програми неможливий, так як на комп'ютері відсутня opencv_core231d.dll», то поступити можна так:
скопіювати дану і всі інші необхідні dll файли в папку Debug вашого проекту і спробувати запустити.
Якщо це не допоможе, тоді на допомогу вам утиліту ProcessMonitor, скачати з сайту sysinternals.com
Запустіть її, вона прогрузити хмару рядків, потім запустіть студію і перед тим як запустити відладчик проекту, очистіть ПроцМон, далі, запускаєте відладчик, отримуєте помилку, повертаєтеся в ПроцМон, зупиняєте його (Capture) і з пошуку шукайте файл (зокрема, opencv_core231d. dll), вона покаже шлях, в яких шукає його, (у мене висвітилося штук 20, один з них - папка Debug мого проекту), заносимо туди dll, в один із шляхів, де лається, запускаємо відладчик знову - має спрацювати.
Величезне спасибі за докладну мануал! Запрацювало з першого разу.
Один тільки питання, чисто з цікавості - а навіщо «для зручності» вказувати каталоги вихідних файлів (Source Directories).
Я додав, але під час налагодження побачити вихідний код виконуваних функцій openCV не виходить. Я щось не так роблю, або це взагалі для іншого призначене?
Дякуємо.
да - призначене для навігації по ісходникам бібліотеки.
Підкажіть може хто стикався? Ставлю opencv2412 на visual c ++, при компіляції видає: «Запуск програми неможливий, тк на комп'ютері відсутня MSVRCR120D.dll. Спробуйте перевстановити програму ». У Release лається на MSVRCR110D.dll примусово dll Сува в папки. VC ++ пише що dll загрузилось, але не допомагає помилка вилітає знову VC ++ переставляв - не допомагає.