自己电脑上的opencv程序如何在别人的电脑上运行(使用动态库)

本文以vs2013+opencv2.4.9开发环境做出演示:

1.将自己电脑\opencv\build目录下的include文件夹及\opencv\build\x86\vc12下的bin和lib文件夹拷贝到工程目录$(ProjectDir)(即stdafx.h所在目录)。

2.进入项目->属性->VC++目录下设置包含目录与库目录,具体配置如下图所示(’.\’本级目录为工程目录):

自己电脑上的opencv程序如何在别人的电脑上运行(使用动态库)_第1张图片

3.链接器->输入中的附加依赖项与往常一样即可:

opencv_calib3d249d.lib
opencv_contrib249d.lib
opencv_core249d.lib
opencv_features2d249d.lib
opencv_flann249d.lib
opencv_gpu249d.lib
opencv_highgui249d.lib
opencv_imgproc249d.lib
opencv_legacy249d.lib
opencv_ml249d.lib
opencv_nonfree249d.lib
opencv_objdetect249d.lib
opencv_ocl249d.lib
opencv_photo249d.lib
opencv_stitching249d.lib
opencv_superres249d.lib
opencv_ts249d.lib
opencv_video249d.lib
opencv_videostab249d.lib

4.编译完成后需要把相应的dll文件拷到exe文件所在的目录,opencv中常用的几个dll如下:
opencv_core249d.lib
opencv_highgui249d.lib
opencv_imgproc249d.lib
opencv_ml249d.lib
我们也可以使用第三方工具Dependency Walker来查看exe程序缺少哪些dll。
注意:exe缺失的dll应补充在exe所在的文件夹下。

自己电脑上的opencv程序如何在别人的电脑上运行(使用动态库)_第2张图片

窗口中黄色问号表示的警告就是程序所需要的动态链接库,去opencv安装目录找到相应dll补充即可。

5.如果想在别人电脑的vs环境下运行exe程序(即调试->开始执行),此时若exe程序的debug目录下没有添加相应的dll,可按下图配置去设置环境变量:

自己电脑上的opencv程序如何在别人的电脑上运行(使用动态库)_第3张图片

注意:当你写的程序中有读取文件的情况时,注意设置好文件的相对路径,最好把读取的文件与exe放在同一目录,不然程序会崩溃,比如运行机器学习算法读取图片进行样本训练时。

自己电脑上的opencv程序如何在别人的电脑上运行(使用动态库)_第4张图片

你可能感兴趣的:(opencv学习)