// myimg.cpp : 定义控制台应用程序的入口点。
//
#include " stdafx.h "
#include < stdio.h >
#include < math.h >
#include < cv.h >
#include < highgui.h >
using namespace std;
using namespace cv;
void mydraw(Mat & cflowmap, const Scalar & color)
{
rectangle(cflowmap,Point( 10 , 10 ),Point(cflowmap.cols - 10 ,cflowmap.rows - 10 ),color);
}
int cap()
{
VideoCapture cap( 0 );
if ( ! cap.isOpened() )
return - 1 ;
Mat prevgray, gray, flow, cflow, frame;
namedWindow( " flow " , 1 );
for (;;)
{
cap >> frame;
gray = frame;
if ( prevgray.data )
{
cflow = prevgray;
mydraw(cflow,CV_RGB( 255 , 0 , 0 ));
imshow( " flow " , cflow);
}
if (waitKey( 1 ) >= 0 )
break ;
std::swap(prevgray, gray);
}
return 0 ;
}
int _tmain( int argc, _TCHAR * argv[])
{
cap();
return 0 ;
}
从OpenCV带的例子中"精简"出来的一个视频捕捉程序,程序实现从摄象头捕捉图象,并在图象上画一个矩形框.