Opencv学习笔记——release和debug两个模式的运行问题
本文为原创作品,转载请注明出处
欢迎关注我的博客:http://blog.csdn.net/hit2015spring和http://www.cnblogs.com/xujianqing/
作者:晨凫追风
关于Opencv的一个bug的解决方法
错误:
Opencv配置完之后运行一切都很正常,也愉快的弄了一些demo,然而突然有一天,我心血来潮想要在release下运行一下自己的代码,于是出现了一个很美的画面:

输出窗口显示错误信息:
0x50AA8B98 (opencv_highgui249d.dll) (template_example.exe 中)处的第一机会异常: 0xC0000005: 读取位置 0xACC6BCCD 时发生访问冲突。
0x50AA8B98 (opencv_highgui249d.dll) (template_example.exe 中)处有未经处理的异常: 0xC0000005: 读取位置 0xACC6BCCD 时发生访问冲突。
提示内存错误,算是Opencv的一个bug,在Debug下可以运行,在release下却不能运行报错。
介绍一下来龙去脉:
在对Opencv进行配置的时候,配置链接库的时候会有一堆 .lib的文件,其中Debug文件库名有d结尾,release没有d。
如:opencv_video249d.lib — debug 库。
opencv_video249.lib — release 库。
按照一般的网上配置教程,会出现debug下可以运行,release下不能运行的情况(报错原因是由于字符串读取问题引起的如图像载入不了,内存出现错误,指针错误等情况)。
因为在附加依赖项配置的时候,会优先选择写在前面的那一类lib作为支持的调试方式,一般我们把带d的写在前面,于是就出现了默认在debug下可以载入图像,识别字符串等操作。如果把不带d的写在前面,那就默认release下调试。
解决方法:
在配置的时候就添加一类依赖项,如:就只添加带d的那一类,于是就只支持debug模式下的调试,这时候想要在release下也能调试,就在当前工程的release模式下自己将不带d的依赖项添加进去:【项目】—【属性】—【配置属性】—【链接器】—【输入】—【附加依赖项】,添加即可。
、选择release模式调试

2、选择当前项目属性



3、添加附加依赖项:把不带d的库添加进去,运用就ok了
4、

至此完成。
感觉在配置的时候只添加一类,只添加带d的或者只添加不带d的库,这样在用到另外一种模式的时候再去修改当前工程的属性配置(并不是之前的固有属性)。这样做让人感觉更加清爽,两个全部添加,毕竟系统只默认在前面的那一种库。
如有不足之处欢迎批评指正,原创作品,转载请注明出处!谢谢!后续的学习总结会陆续推出!欢迎广大爱好者交流!
Opencv学习笔记——release和debug两个模式的运行问题的更多相关文章
- OpenCV 学习笔记(0)两幅图像标定配准
参考教程 依赖opencv扩展库,使用sifi匹配 保存配准信息 "./config/calibratedPara.yaml" #include <iostream> ...
- 【opencv学习笔记五】一个简单程序:图像读取与显示
今天我们来学习一个最简单的程序,即从文件读取图像并且创建窗口显示该图像. 目录 [imread]图像读取 [namedWindow]创建window窗口 [imshow]图像显示 [imwrite]图 ...
- opencv学习笔记(七)SVM+HOG
opencv学习笔记(七)SVM+HOG 一.简介 方向梯度直方图(Histogram of Oriented Gradient,HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子 ...
- OpenCV 学习笔记 07 目标检测与识别
目标检测与识别是计算机视觉中最常见的挑战之一.属于高级主题. 本章节将扩展目标检测的概念,首先探讨人脸识别技术,然后将该技术应用到显示生活中的各种目标检测. 1 目标检测与识别技术 为了与OpenCV ...
- opencv学习笔记(六)直方图比较图片相似度
opencv学习笔记(六)直方图比较图片相似度 opencv提供了API来比较图片的相似程度,使我们很简单的就能对2个图片进行比较,这就是直方图的比较,直方图英文是histogram, 原理就是就是将 ...
- opencv学习笔记(三)基本数据类型
opencv学习笔记(三)基本数据类型 类:DataType 将C++数据类型转换为对应的opencv数据类型 OpenCV原始数据类型的特征模版.OpenCV的原始数据类型包括unsigned ch ...
- opencv学习笔记(二)寻找轮廓
opencv学习笔记(二)寻找轮廓 opencv中使用findContours函数来查找轮廓,这个函数的原型为: void findContours(InputOutputArray image, O ...
- opencv学习笔记(一)IplImage, CvMat, Mat 的关系
opencv学习笔记(一)IplImage, CvMat, Mat 的关系 opencv中常见的与图像操作有关的数据容器有Mat,cvMat和IplImage,这三种类型都可以代表和显示图像,但是,M ...
- (转) OpenCV学习笔记大集锦 与 图像视觉博客资源2之MIT斯坦福CMU
首页 视界智尚 算法技术 每日技术 来打我呀 注册 OpenCV学习笔记大集锦 整理了我所了解的有关OpenCV的学习笔记.原理分析.使用例程等相关的博文.排序不分先后,随机整理的 ...
随机推荐
- 2013337朱荟潼 Linux第四章读书笔记——进程调度
第4章 进程调度 0. 总结 调度:调度是一个平衡的过程.一方面,它要保证各个运行的进程能够最大限度的使用CP:另一方面,保证各个进程能公平的使用CPU. 调度功能:决定哪个进程运行以及进程运行多长时 ...
- 实训二(cocos2dx 2.x 打包apk)
利用cocos2dx编程得到的展现形式之一就是最终的apk,中间的过程只有自己走过才能知道,对于没有章法的初学者,那是相当的头疼, 言归正传,2.x到3.x版本引擎变动很大,除去了CC只是很小一方面, ...
- 设置matplotlib画图支持中文显示
1.安装中文字体 git clone https://github.com/tracyone/program_font && cd program_font && ./ ...
- IOS的开发演变历史
对IOS开发平台一直抱有很大兴趣,正好通过这个机会好好了解一下IOS的开发历程! 通过一些查阅,我了解到IOS的开发平台主要是依靠Xcode软件来编写程序,同时又需要在MAC OS X的环境下运行,w ...
- 中间件——dubbo
DUBBO初探-搭建DUBBO开发环境 2016年10月13日 12:27:49 NeroJings 阅读数:1697 标签: dubbo 更多 个人分类: dubbo 我所理解的DUBBO 相对 ...
- Linux命令(十五) 打包或解压文件 tar
目录 1.命令简介 2.常用参数介绍 3.实例 4.直达底部 命令简介 tar 命令用于将文件打包或解压,扩展名一般为 ".tar" ,指定特定的参数可以调用 gzip 或 bzi ...
- jQuery简单效果
- LOJ2541 PKUWC2018猎人杀(概率期望+容斥原理+生成函数+分治NTT)
考虑容斥,枚举一个子集S在1号猎人之后死.显然这个概率是w1/(Σwi+w1) (i∈S).于是我们统计出各种子集和的系数即可,造出一堆形如(-xwi+1)的生成函数,分治NTT卷起来就可以了. #i ...
- Mybatis返回HashMap时,某个字段值为null时,不会保存key
转载: http://blog.csdn.net/little2z/article/details/38525327 mybatis 的 callSettersOnNulls 问题项目用到mybati ...
- mysql账户添加远程访问
我们要将root账户设置为远程可访问 mysql> show databases; +--------------------+ | Database | +------------------ ...