- Код: Выделить всё • Развернуть
- #include "stdafx.h"
 #include <cv.h>
 #include <cxcore.h>
 #include <highgui.h>
 #include <iostream>
 using namespace std;
 void processFrame(IplImage*& image);
 int main(int argc, char** argv)
 {
 // Инициализируем источник наших изображений.
 // В данном случае - это видеокамера, подключенная по
 // одному из интерфейсов. 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 отличать движущиеся объекты от неподвижных. Говорят это легко, но мне еще пока не с чем сравнивать.
Кто знает подскажите...


