您的位置:首页 > 运维架构

opencv findContours使用问题

2015-04-06 20:14 423 查看
在使用findContours函数时,碰到堆栈出错的问题

后面写了一个简单的方法测试findContours,发现一样出现问题

void test(){
Mat src = imread("diff_thresh.png");
Mat src_gray;
cvtColor(src,src_gray,CV_BGR2GRAY);
vector< vector<cv::Point> > fore_contours;
findContours(src_gray.clone(),fore_contours,CV_RETR_EXTERNAL,CV_CHAIN_APPROX_NONE);
imshow("srcgray",src_gray);
waitKey();
destroyAllWindows();
}
在退出函数时出现以下问题。一开始以为是vector< vector<cv::Point> > fore_contours;要进行显示释放,在查看官方文档和给的sample代码之后,确定不是这个问题。



尝试了很多方法,最终发现问题的根源在配置,环境变量的配置有问题!

本人是64位win7系统,使用的是vs2012,电脑上同时安装了opencv2.4.8和opencv3.0,更要命的是系统环境变量path中添加了四个:

D:\software\opencv2.4.8\opencv\build\x86\vc11\bin;

D:\software\opencv2.4.8\opencv\build\x86\vc10\bin;

D:\software\opencv3.0\opencv\build\x86\vc10\bin;

D:\software\opencv3.0\opencv\build\x86\vc11\bin;

将后面三个删掉,重启电脑,问题得到解决!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: