UPD Уроки по OpenCV: OpenCV шаг за шагом. Введение.
OpenCV (Open Source Computer Vision) — библиотека компьютерного зрения с открытым исходным кодом) — библиотека алгоритмов компьютерного зрения, обработки изображений и численных алгоритмов общего назначения с открытым кодом. Реализована на C/C++.
Сначала скачал последнюю версию с sourceforge.net/projects/opencvlibrary/ — OpenCV_1.1pre1a.exe
сначала не могли найтись dll-ки, пока не прописал в system PATH
C:\program files\opencv\bin
после этого компиляция и линковка проходят нормально, но при запуске exe-ка — вываливается ошибка
возможно нужен VC80.CRT , но я снёс 1.1, поставил 1.0 и всё сразу заработало 🙂
Простой тестовый пример, просто выводит изображение с web-камеры 🙂
// test.cpp
//
#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;
}
Ссылки
opencv.willowgarage.com
