仿照 OpenCV 中文官方网站上VC2010安装OpenCV2.4.4的教程安装,该教程地址为 VC 2010下安装OpenCV2.4.4

我的环境和教程中的不一样,先说说教程中的搭建环境:

VC2010

windows 32位操作系统,即x86

opencv2.4.4

我的环境:

VC2012

windows 8.1 64位中文版操作系统,即x64

opencv2.8.2 (最新版)

根据你的CPU位数,按照教程中的方法安装即可。我的是64位,则在选择的时候,x86就换成x64 。另外,将教程中的vc10换成vc12 。

这里有一个值得强调的问题,教程中没有明确说明。按照教程的方法安装好,然后建立测试程序,运行后提示多行类似下面语句的错误:

error LNK2019: 无法解析的外部符号 _cvReleaseImage,该符号在函数 _main 中被引

后来发现,这是我的配置错误,对64位操作系统的配置还没有完成。还需要修改的地方是:

生成–>配置管理器–>活动解决方案平台–>新建–>x64  如下图:

新建好之后,在属性管理器中就能看到多出来了Debug|x64和Release|x64,如下图:

在“属性管理器”中,对Debug|x64或Release|x64的Micro.Cpp.x64.user仿照x86进行设置,但是注意替换VC++目录中的x86为x64,还要记得在“连接器–>输入”中包含库。

需要强调的是,对于Debug|x86或Release|x86的Micro.Cpp.x86.user的设置,请和教程中的保持一致,不是x64,就是x86 。

即,在Debug|x86或Release|x86下就设置x86的,在Debug|x64或Release|x64下才需要设置x64的,分开对待。如下图

我列出VC2012中的opencv\build\x64\vc12\库

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
opencv_nonfree248.lib
opencv_objdetect248.lib
opencv_ocl248.lib
opencv_photo248.lib
opencv_stitching248.lib
opencv_superres248.lib
opencv_ts248.lib
opencv_video248.lib
opencv_videostab248.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_ml248d.lib
opencv_nonfree248d.lib
opencv_objdetect248d.lib
opencv_ocl248d.lib
opencv_photo248d.lib
opencv_stitching248d.lib
opencv_superres248d.lib
opencv_ts248d.lib
opencv_video248d.lib
opencv_videostab248d.lib

x64中要包含的目录:

可执行文件目录
C:\opencv248\opencv\build\x64\vc12\bin

包含目录
C:\opencv248\opencv\build\include\opencv2
C:\opencv248\opencv\build\include\opencv
C:\opencv248\opencv\build\include

库目录
C:\opencv248\opencv\build\x64\vc12\lib

其他错误的处理方法:

错误1: fatal error C1083: 无法打开包括文件:“opencv2\opencv.hpp”: No such file or …

表示的意思是找不到opencv.hpp,这是在VC++目录中设置的,即在下图中设置,教程中已经说明了。

错误2:找不到msvcr120.dll、msvcp120.dll

表明系统缺少该dll文件,可以在网上搜索下载,然后安装。安装dll文件时注意以下区别:

安装dll,就把dll文件直接拷贝该文件到系统目录里,但是不同系统拷贝的目录是不同的:
1、Windows 95/98/Me系统,将msvcp120.dll复制到C:\Windows\System目录下。
2、Windows NT/2000系统,将msvcp120.dll复制到C:\WINNT\System32目录下。
3、Windows XP/WIN7/Vista系统,将msvcp120.dll复制到C:\Windows\System32目录下。
如果您的系统是64位的请将文件复制到C:\Windows\SysWOW64目录
然后打开”开始-运行-输入regsvr32 ***.dll”,回车即可解决。或者打开cmd(命令提示符)输入刚才的语句即可,***.dll表示你刚才拷贝进去的dll文件。

我出现的就是以上几个错误,都排除了。然后就成功运行了,搭建完成。

测试代码如下:

#include <opencv2\opencv.hpp>  
#include<iostream>
using namespace cv;
void main()
{
	IplImage *src;
	src = cvLoadImage("lena.jpg"); //这里将lena.jpg和lena.cpp文件放在同一个文件夹下
	cvNamedWindow("lena",CV_WINDOW_AUTOSIZE);
	cvShowImage("lena",src);
	cvWaitKey(0);
	cvDestroyWindow("lena");
	cvReleaseImage(&src);
}

注意,请将lena.jpg放到项目目录中的同名子目录中,如下图所示:

运行效果图:

一条评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注