• VS2015——opencv3.4.2扩展库安装


    环境配置

    本文是OpenCV3.4.2 在VS2015下的配置过程,用的是WIN10系统

    用CMake的动态链接库配置

    OpenCV3.4.2官方下载  8月29日已更新至3.4.2版本

    VS2015自行下载

    二1:opencv下载安装

    进入OpenCV的官网,选择3.4.2的Sources版本进行下载,

    二2:CMake下载安装

    CMake-3.12.1官方下载

    CMake的安装教程

    得到如下文件,其中1(OpenCV_VS2013_x64)是另外创建的文件夹,用于存放CMake生成的目标解决方案

    打开CMake,添加源码和目标文件夹路径

    打开已安装好的CMake软件

    (1)添加解压出的OpenCV-3.4.2文件夹绝对路径(比如,我的绝对路径是D:/OpenCV/opencv-3.4.2),

    (2)添加自定义创建的OpenCV-3.3.0build的空文件夹,这里文件夹名称为“OpenCV3.3_VS2015_x64”,

    因为OpenCV版本是3.4,编译器是VS2015,并且打算生成x64位的解决方案(比如,我的绝对路径是D:/OpenCV/opencv_VS2015_x64)

    Configure,配置相应库

    点击Finish,CMake开始对OpenCV源码进行配置生成并下载相应函数库,如ffmpeg,IPP等(此时需要等待若干分钟)

    当第一次Configure后,界面会出现红色部分,这是为了让用户可以手动补充相应函数库,如TBB、CUDA、Eigen等,

    这里视你的需求而定,若需要其他库,请自行下载相应库,并自行配置库的include和lib

    第一次配置OpenCV3.3,怕出现一些不必要的版本兼容问题,所以没有额外添加库,并且这里将CUDA的选项也注销了,

    即取消勾选WITH的WITH_CUDA

    (第一次最好不要配置CUDA版本的OpenCV3.4.2,因为较复杂,若配置无CUDA版本的OpenCV3.3成功后,可以再配置CUDA版的)

    再次点击Configure,确保红色画面消失,如果红色画面一直未消失,请检查WITH选项,是否勾选了不必要的库

    二3:在VS中Install

    (1) 当多次Configure后(一般只需要2次),红色界面完全消失,并出现Configuring done的提示。

    (2) 此时请点击Generate按钮,生成相应的解决方案,若出现Generating done的提示,即表明解决方案生成成功。

    (3) 继续点击Open Project。此时CMake会自行启动Visual studio 2015软件,打开上述生成的解决方案

    二4:配置环境变量

    在Visual studio 2015出现已上述生成的解决方案,进行debug和Release下的配置Debug

    (1) 右击All_BUILD,选择生成 。此时需要等待---时间视网速而定,

    (2) 生成完成后,右击INSTALL,选择生成(会在自定义创建的OpenCV文件夹下生成一个install文件夹,包含了include和bin)

    上述过程完成后,生成的是Debug版的动态链接库,此时还需要在Release下进行生成

    Release

    换成release模式,与上述Debug步骤一致

    1) 右击All_BUILD,选择生成 。此时需要等待很长时间,大概半个小时

    (2) 生成完成后,右击INSTALL,选择生成

    自动生成的install文件夹

    二5:配置OpenCV3.4.2动态链接库

    若要调用OpenCV3.4.2需要将bin绝对路径,添加到系统环境变量中

    我的bin绝对路径为D:OpenCVOpenCV3.3OpenCV3.3_VS2013_x64installx64vc12in,如下图所示,

    该文件夹下有很多dll文件,其中带d的表示Debug版,不带d的表示Release版。配置动态链接库就是让VS可以找到opencv的二进制文件,dll文件

    将bin绝对路径,添加到系统环境变量中,如何找到“编译环境变量”,可以自行百度或者参考下述界面来寻找

    二6:检测示例

    写一段测试代码来检验是否配置成功

    (1) 创建新的Visual Studio工程

    (2)配置工程

    因为上述生成的是Visual Studio2015 x64的动态链接库,不适用于x86的工程,所以需要配置x64的工程,操作如下

    在属性管理器中,添加新项目属性页,如选中并右击,再选择“新项目属性页”Debug

    这里将新建的属性页命名为:OpenCV3.4.2_VS2015_Debug_x64

     

    (a) include,为属性页的包含目录添加include路径,此时需要添加三个路径,即x64文件夹下的include及其子文件夹的绝对路径

     

    D:OpenCVOpenCV3.3OpenCV3.3_VS2013_x64installinclude

    D:OpenCVOpenCV3.3OpenCV3.3_VS2013_x64installincludeopencv

    D:OpenCVOpenCV3.3OpenCV3.3_VS2013_x64installincludeopencv2

    (b) lib,为属性页的库目录添加lib路径,即D:OpenCVOpenCV3.4OpenCV3.3_VS2013_x64installx64vc12lib

    并需要在属性页--链接器--输入--附加依赖项中添加库的名称

    注意OpenCV3.4.2的动态链接库如下,因为是现在添加的是Debug版本,所以后缀带d(只需要将下面lib文件名Copy一下)

    添加内容:(其实就是之前install/…/lib下的内容

    opencv_aruco342d.lib
    opencv_bgsegm342d.lib
    opencv_bioinspired342d.lib
    opencv_calib3d342d.lib
    opencv_ccalib342d.lib
    opencv_core342d.lib
    opencv_datasets342d.lib
    opencv_dnn342d.lib
    opencv_dnn_objdetect342d.lib
    opencv_dpm342d.lib
    opencv_face342d.lib
    opencv_features2d342d.lib
    opencv_flann342d.lib
    opencv_fuzzy342d.lib
    opencv_hdf342d.lib
    opencv_hfs342d.lib
    opencv_highgui342d.lib
    opencv_imgcodecs342d.lib
    opencv_imgproc342d.lib
    opencv_img_hash342d.lib
    opencv_line_descriptor342d.lib
    opencv_ml342d.lib
    opencv_objdetect342d.lib
    opencv_optflow342d.lib
    opencv_phase_unwrapping342d.lib
    opencv_photo342d.lib
    opencv_plot342d.lib
    opencv_reg342d.lib
    opencv_rgbd342d.lib
    opencv_saliency342d.lib
    opencv_shape342d.lib
    opencv_stereo342d.lib
    opencv_stitching342d.lib
    opencv_structured_light342d.lib
    opencv_superres342d.lib
    opencv_surface_matching342d.lib
    opencv_text342d.lib
    opencv_tracking342d.lib
    opencv_video342d.lib
    opencv_videoio342d.lib
    opencv_videostab342d.lib
    opencv_xfeatures2d342d.lib
    opencv_ximgproc342d.lib
    opencv_xobjdetect342d.lib
    opencv_xphoto342d.lib




    (c) bin,因为之前已经在系统环境变量中添加了bin文件夹路径,所以不需要再添加

     

     

    Release

    在属性管理器中的Release|x64,新建一个属性页命名为:OpenCV3.3_VS2013_Release_x64

    下述操作和Debug类似,但库文件名称不一致,因为不含d

     

    (a) include,为属性页的包含目录添加include路径,此时需要添加三个路径,即x64文件夹下的include及其子文件夹的绝对路径

     

    D:OpenCVopencv_VS2015_x64installinclude

    D:OpenCVopencv_VS2015_x64installincludeopencv

    D:OpenCVopencv_VS2015_x64installincludeopencv2

     

    (b) lib,为属性页的库目录添加lib路径,即D:OpenCVopencv_VS2015_x64installx64vc14lib

    并需要在属性页--链接器--输入--附加依赖项中添加库的名称

    注意OpenCV3.4.2的动态链接库如下,因为是现在添加的是Debug版本,所以后缀带d(只需要将下面lib文件名Copy一下)

    添加内容:(其实就是之前install/…/lib下的内容

    opencv_aruco342d.lib
    opencv_bgsegm342d.lib
    opencv_bioinspired342d.lib
    opencv_calib3d342d.lib
    opencv_ccalib342d.lib
    opencv_core342d.lib
    opencv_datasets342d.lib
    opencv_dnn342d.lib
    opencv_dnn_objdetect342d.lib
    opencv_dpm342d.lib
    opencv_face342d.lib
    opencv_features2d342d.lib
    opencv_flann342d.lib
    opencv_fuzzy342d.lib
    opencv_hdf342d.lib
    opencv_hfs342d.lib
    opencv_highgui342d.lib
    opencv_imgcodecs342d.lib
    opencv_imgproc342d.lib
    opencv_img_hash342d.lib
    opencv_line_descriptor342d.lib
    opencv_ml342d.lib
    opencv_objdetect342d.lib
    opencv_optflow342d.lib
    opencv_phase_unwrapping342d.lib
    opencv_photo342d.lib
    opencv_plot342d.lib
    opencv_reg342d.lib
    opencv_rgbd342d.lib
    opencv_saliency342d.lib
    opencv_shape342d.lib
    opencv_stereo342d.lib
    opencv_stitching342d.lib
    opencv_structured_light342d.lib
    opencv_superres342d.lib
    opencv_surface_matching342d.lib
    opencv_text342d.lib
    opencv_tracking342d.lib
    opencv_video342d.lib
    opencv_videoio342d.lib
    opencv_videostab342d.lib
    opencv_xfeatures2d342d.lib
    opencv_ximgproc342d.lib
    opencv_xobjdetect342d.lib
    opencv_xphoto342d.lib

    OpenCV测试Demo

    在写代码前,先准备一张图像,保存在工程目录下,如xxxOpenCV3.3OpenCV3.3_TestDemo

    在上述工程中新建demo.cpp文件,添加下述代码

    #include <opencv.hpp>
     
    #include <iostream>
     
    using namespace cv;
     
    using namespace std;
     
     
    int main()
     
    {
     
    cout << "OpenCV Version: " << CV_VERSION << endl;
     
    Mat img = imread("img.jpg");
     
    imshow("img",img);
     
    waitKey(0);
     
    return 0;
     
    }

    运行结果

    (1) 输出OpenCV的版本号

    (2) 显示出输入的图像

     

    注: 分别在Debug和Release下运行,若都能正常运行,即表明OpenCV3.4.2配置成功

  • 相关阅读:
    洛谷 P5043 树的同构 题解
    CF 1178E Archaeology 题解
    UVA 1642 MagicalGCD 题解
    洛谷 P3919 可持久化线段树 题解
    SPOJ 4003 Phone List 题解
    OI/ACM最全卡常大招
    洛谷 P3368 树状数组 题解
    逆序对
    洛谷 U78696 图书馆馆长的考验 题解
    原创 疲劳炉石传说
  • 原文地址:https://www.cnblogs.com/Jack-Elvis/p/11797146.html
Copyright © 2020-2023  润新知