装了一下午的opencv。之前用VS2010装过opencv,当时使用的是cmake编译源码的办法,这个方法好处就是不用每新建一个工程就重新链接opencv库文件。今天装了个VS2013,再装opencv2.4.9的时候(系统是Win7 64位),想利用以前的老办法,试了网上一大堆根据cmake编译的办法就是不行(唉,可惜当时自己没有用博客记录下来怎么弄的)。最后,还是根据这篇文章http://my.phirobot.com/blog/2014-02-opencv_configuration_in_vs.html的方法一步步从新来过。这篇文章将要链接的库文件写在一个配置文件(opencv249.props)中,每次新建工程直接导入这个配置文件就好了,这也是它方便之处。
终于安装成功,写入如下代码:
#include <opencv2\opencv.hpp> #include <iostream> #include <string> using namespace cv; using namespace std; int main() { Mat img = imread("lina.jpg"); if (img.empty()) { cout << "error"; return -1; } imshow("lina", img); waitKey(); return 0; }
但是,如此简单的读取图片操作,系统报错:
应用程序无法正常启动(0xc000007b)。
可能的错误是Directx 9.0c相关组件损坏,重新下载安装即可解决。安装之后仍然报错,最后是在环境变量----->系统变量------>PATH加上;%OPENCV%\x86\vc12\bin,编译成功!