opencv 图像显示 内存错误 第一帧有问题 5
voidCDemoDlg::OnTimer(UINTnIDEvent){//TODO:Addyourmessagehandlercodehereand/orcalldef...
void CDemoDlg::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
IplImage* img=0;
img=cvQueryFrame(capture); //从摄像头或者文件中抓取并返回一帧
//img=cvRetrieveFrame(capture); //取回由函数cvGrabFrame抓取的图像
CvvImage m_CvvImage;
m_CvvImage.CopyOf(img,1); //复制该帧图像
m_CvvImage.DrawToHDC(hDC, &rect); //显示到设备的矩形框内
CDialog::OnTimer(nIDEvent);
//我将图像复制给test,因为我需要对test进行处理
IplImage* test = frame;
cvShowImage("imaeg", test);//在我调试时发现,mfc pictureBox中已经有图像了,但是该处却没有图像出现,如果没有我后面的操作,运行时反而可以出现图像。不过一旦我有接下来的操作,就出现内存错误。
。。。。。。
} 展开
{
// TODO: Add your message handler code here and/or call default
IplImage* img=0;
img=cvQueryFrame(capture); //从摄像头或者文件中抓取并返回一帧
//img=cvRetrieveFrame(capture); //取回由函数cvGrabFrame抓取的图像
CvvImage m_CvvImage;
m_CvvImage.CopyOf(img,1); //复制该帧图像
m_CvvImage.DrawToHDC(hDC, &rect); //显示到设备的矩形框内
CDialog::OnTimer(nIDEvent);
//我将图像复制给test,因为我需要对test进行处理
IplImage* test = frame;
cvShowImage("imaeg", test);//在我调试时发现,mfc pictureBox中已经有图像了,但是该处却没有图像出现,如果没有我后面的操作,运行时反而可以出现图像。不过一旦我有接下来的操作,就出现内存错误。
。。。。。。
} 展开
展开全部
opencv都到3.0了,这种调用太麻烦了。不谢!
include <opencv2\opencv.hpp>
using namespace cv;
int main( )
{
//【1】从摄像头读入视频
VideoCapture capture(0);
//【2】循环显示每一帧
while(1)
{
Mat frame; //定义一个Mat变量,用于存储每一帧的图像
capture>>frame; //读取当前帧
imshow("读取视频",frame); //显示当前帧
waitKey(30); //延时30ms
}
return 0;
}
include <opencv2\opencv.hpp>
using namespace cv;
int main( )
{
//【1】从摄像头读入视频
VideoCapture capture(0);
//【2】循环显示每一帧
while(1)
{
Mat frame; //定义一个Mat变量,用于存储每一帧的图像
capture>>frame; //读取当前帧
imshow("读取视频",frame); //显示当前帧
waitKey(30); //延时30ms
}
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询