最近在搞一个视频监控的项目,要用OpenCV库进行处理,但这两天一直有一个问题很纠结我,就是,处理过后的图像老是显示不正确,做了各种测试,具体问题可以用下面的例子阐明;
#include <stdio.h>
#include <cv.h>
#include <cxcore.h>
#include <highgui.h>
int main()
{
IplImage *test, *pFrame;
CvCapture *pCapture;
char pathName[256];
printf("请输入视频文件的路径名:");
scanf("%s",pathName);
pCapture = cvCreateFileCapture(pathName);
if (pCapture == NULL)
{
printf("输入的视频文件有问题\n");
return 0;
}
if (pFrame = cvQueryFrame(pCapture))
{
test = cvCreateImage(cvGetSize(pFrame), IPL_DEPTH_32F, 3);
cvConvertScale(pFrame, test, 1);
cvNamedWindow("original", 1);
cvNamedWindow("converted", 1);
cvShowImage("original", pFrame);
cvShowImage("converted", test);
//cvDestroyAllWindows();
}
for (;;)
{
if (cvWaitKey(2) >= 0)
break;
}
cvReleaseImage(&t