问题:
6_调用摄像头进行canny边缘检测.exe 中的 0x000007fefd85a49d 处有未经处理的异常: Microsoft C++ 异常: 内存位置 0x002e9130 处的 cv::Exception。[size=16px][/size]
但是,有时能运行,有时就出现这样的问题。这是一个调用摄像头的代码,如下[size=24px]:[/size]
#include"opencv2/opencv.hpp"
using namespace cv;
int main()
{
//从摄像头读取视频
VideoCapture capture(0);
Mat edges;
//循环显示每一帧
while(1)
{
//【1】读入图像
Mat frame;//定义一个Mat变量,用于储存每一帧图像
capture>>frame;//读取当前帧
//将原图像转换为灰度图像
cvtColor(frame,edges,CV_BGR2GRAY);//转换BGR彩色图像为灰度图
//【3】使用3*3的内核来降噪(2*3+1=7)
blur(edges,edges,Size(7,7));//进行模糊
//【4】进行canny边缘检测并显示
Canny(edges,edges,0,30,3);
imshow("被Canny后的视频",edges);//显示进行处理后的当前帧
if(waitKey(30)>=0) break;//延时30ms
}
return 0;
}
以前用过opencv2.4.7,后来改成2.4.9,某一次发现把下面的这个对号去掉,就可以运行,但有时也运行不了。
[color=#FF0000][/color]
估计是配置出现了问题,求明白人指点。