19,468
社区成员
发帖
与我相关
我的任务
分享
#include<iostream>
#include<cv.h>
#include<highgui.h>
using namespace std;
void main()
{
CvCapture* iCap=cvCreateCameraCapture(-1);
IplImage* pFrame;
IplImage* Src1;
IplImage* Src2;
//从摄像头捕捉1 张图像用于分割。
//(用摄像头捕捉,而不自己加载图片,是因为我后面手势识别是从摄像头捕捉的 )
//捕捉后的图像时3通道的,depth 为 8,分辨率为640*480
pFrame=cvQueryFrame(iCap);
CvSize FrameSize=cvGetSize(pFrame);
Src1=cvCloneImage(pFrame);
cvZero(Src1);
Src2=cvCloneImage(Src1);
int Key=0;
cvNamedWindow("Src1");
cvNamedWindow("Seg");
while(1)
{
Key=cvWaitKey(0);
if(Key==27)
break;
pFrame=cvQueryFrame(iCap);
cvCopy(pFrame, Src1);
cvPyrMeanShiftFiltering(Src1, Src2, 2, 40, 2);//这一句老是异常
cvShowImage("Src1",Src1);
cvShowImage("Seg",Src2);
}
cvWaitKey(0);
cvReleaseImage(&Src1);
cvReleaseImage(&Src2);
cvReleaseCapture(&iCap);
cvDestroyAllWindows();
}