OpenCV (Open Source Computer Vision) — библиотека для создания компьютерного видения 🙂
Сначала скачал последнюю версию с sourceforge.net/projects/opencvlibrary/ — OpenCV_1.1pre1a.exe
сначала не могли найтись dll-ки, пока не прописал в system PATH
C:\program files\opencv\bin
после этого компиляция и линковка проходят нормально, но при запуске exe-ка — вываливается ошибка
возможно нужен VC80.CRT , но я снёс 1.1, поставил 1.0 и всё сразу заработало 🙂
Ссылки
opencv.willowgarage.com
0 комментариев на «“OpenCV”»
Ну хоть в двух русских словах, о чём это?
OpenCV — библиотека компьютерного зрения с открытым исходным кодом) — библиотека алгоритмов компьютерного зрения, обработки изображений и численных алгоритмов общего назначения с открытым кодом. Реализована на C/C++.
Например, вот простой тестовый пример, просто выводит изображение с web-камеры 🙂
//
#include "stdafx.h"
#include <cv.h>
#include <cxcore.h>
#include <highgui.h>
#include <iostream>
using namespace std;
//#pragma comment(lib, "cxcore.lib")
//#pragma comment(lib, "cv.lib")
#pragma comment(lib, "highgui.lib")
//#pragma comment(lib, "cvaux.lib")
int APIENTRY WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow)
{
// TODO: Place code here.
// Инициализируем источник наших изображений.
// В данном случае — это видеокамера, подключенная по
// одному из интерфейсов. 0 означает, что надо
// выбрать первую попавшуюся камеру. У нас их одна,
// поэтому не стоит волноваться по этому поводу 🙂
CvCapture* capture = 0;
capture = cvCreateCameraCapture(0);
if (!capture)
{
cout << "Initialization failed" << endl;
return EXIT_FAILURE;
}
// Работа с GUI упрощена до невозможного. Необходимо
// определить идентификатор (по совместительству —
// заголовок окна), по которому мы будем определять
// наши окна.
const char *windowName = "First steps with OpenCV";
cvNamedWindow(windowName, CV_WINDOW_AUTOSIZE);
while(true)
{
// Опрашиваем камеру для получения следующего кадра
IplImage* frame = cvQueryFrame( capture );
if(!frame)
break;
// processFrame(frame);
// Отобразим наш фрейм в окне (не забыли, как мы его
// определили? — через идентификатор)
cvShowImage(windowName, frame);
// По нажатию ESC — выход из цикла
char c = cvWaitKey(33);
if (c == 27)
break;
}
// Никогда не забываем освобождать память!
cvReleaseCapture( &capture );
cvDestroyWindow(windowName);
return 0;
}
Спасибо. =) Теперь понятно.