OpenCV 2.4.X + vs 2015 配置及使用

背景

本科毕设和研究生毕设都用到了OpenCV,库确实很好用,功能很强大。研究生项目是CRF算法中需要提取ROI,提取纹理特征,计算直方图等,接口调用很方便。潜意识以为OpenCV库是在linux平台上做。

目前项目中需要将图片转化为单通道图像(灰度图),这个通过imread函数读取时设置模式就行。看了下ubuntu平台,装了库,但使用时报错,网上查找编译命令对着敲进去还是不行。Ubuntu里我又不能乱装。发现opencv库还可以在Windows下和vs 2015结合起来用。win平台上的lib库都编好了,需要在vs工程配置中设定头文件目录,库目录,需要链接的库名。

说明

我的本地环境是win7,安装了vs 2015。配置过程网上教程很多,大同小异。按照这个搞完,最后运行程序提示:缺少msvcp120d.dll库,而且还有可能缺msvcr120d.dll,只是先报这个错了。

踩坑

按照网上同样问题的几个办法:

1、直接下载这两个库,拷贝至系统路径下。结果:其他莫名其妙的错。很多人也建议不要使用这个办法,毕竟库和平台关系很大。

2、安装vs 2013的工具包,120d的名称属于2013版本的调试模式下的文件。安装后发现还是提示缺少。因为正式发布版本是不会包含d的。

折腾了几乎俩小时,能看的解决方法都看了还是不行。就一个简答的读取程序啊。

解决

中午团建看了个电影,回来后再看。

1、OpenCV 2.4.8版本下有vc12,这表示对应vs 2013。

2、安装了vs 2013,按照教程重新配置一遍,程序运行OK。

按道理新版本编译器应该兼容老版本的,但是就是不行,没什么办法,只能安装对应版本的做。否则折腾老半天,偏离了做事目的。组里基本都安装的是2013。(刚开始也是安装2013,但死活有个啥问题来着,查找各种最后感觉是系统问题,无奈安装个2015可以跑起来,后面一直这个。但昨天这个网上安装就成功了,晕)。多用linux做,但linux有个问题就是单步调试比较麻烦,没有Windows那么直观。

附录

vs中配置opencv时需要提供链接库的名称,粘贴如下。248表示版本为2.4.8,其他版本就是24X:

opencv_ml248d.lib
opencv_calib3d248d.lib
opencv_contrib248d.lib
opencv_core248d.lib
opencv_features2d248d.lib
opencv_flann248d.lib
opencv_gpu248d.lib
opencv_highgui248d.lib
opencv_imgproc248d.lib
opencv_legacy248d.lib
opencv_objdetect248d.lib
opencv_ts248d.lib
opencv_video248d.lib
opencv_nonfree248d.lib
opencv_ocl248d.lib
opencv_photo248d.lib
opencv_stitching248d.lib
opencv_superres248d.lib
opencv_videostab248d.lib
opencv_objdetect248.lib
opencv_ts248.lib
opencv_video248.lib
opencv_nonfree248.lib
opencv_ocl248.lib
opencv_photo248.lib
opencv_stitching248.lib
opencv_superres248.lib
opencv_videostab248.lib
opencv_calib3d248.lib
opencv_contrib248.lib
opencv_core248.lib
opencv_features2d248.lib
opencv_flann248.lib
opencv_gpu248.lib
opencv_highgui248.lib
opencv_imgproc248.lib
opencv_legacy248.lib
opencv_ml248.lib

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值