zoukankan      html  css  js  c++  java
  • OpenCV3.2.0+VS2017环境配置与常见问题(巨细坑爹版)

    题外话:首先,配环境一定要有耐心。。。

    本博客是本小白第一次装OpenCV成功后第一时间整理发布。用的是刚下载好的OpenCV3.2.0版,用x64编译器Debug运行(当然Release差不多),未经过cmake编译处理。希望能够把问题讲的详尽。

    如果你觉得你的安装没问题,可以直接跳过安装环节,直接看看常见问题集锦。

    参考链接:
    1,下载:
    https://sourceforge.net/projects/opencvlibrary/files/?source=navbar
    2,安装
    http://blog.csdn.net/zmdsjtu/article/details/54743431
    http://blog.csdn.net/guguant/article/details/54356492
    https://www.zhihu.com/question/24400428

    另外:mac + clion + CMake可以参考我这篇blog:
    http://blog.csdn.net/qq_36285879/article/details/77920095
    另外:mac + pycharm 可以参考我这篇blog:
    http://blog.csdn.net/qq_36285879/article/details/78520862

    安装

    1,下载
    参考链接点击下载(如图),我用的是windows,于是选择opencv-win,这里我演示3.2.0版本。

    2,开始安装
    运行exe文件(如图)
    这里填一下你的安装路径,我直接装在c盘,安装时会自动把全部文件放在一个opencv的文件夹下,因此不必新建一个新的文件夹(我直接放在c盘了)。

    配置环境变量

    有两种方式,
    1,配置环境变量PATH
    2,将C:opencvuildx64vc14lib目录下的文件拷贝至c:WindowsSystem32 和 c:WindowsSysWOW64 文件夹下

    3,配置vs
    创建一个普通的win32控制台应用程序。
    打开侧边的属性管理器(我喜欢把它放在右上角),没有的话点【视图】->【其他窗口】->【属性管理器】

    添加属性表
    在属性管理器【Debug|x64】右键 ->【添加新项目属性表】(如图)
    坑点一:
    本教程是在【Debug|x64】上添加!!!!!网上有些教程,介绍的是OpenCV3.0以下版本,直接用的是x86编译器,所以直接在【Debug|Win32】下创建!!!!!!!

    之后添加一个属性表
    (名称无特殊要求,为了方便我叫它“OpenCV_Debug”,表示在Debug上的属性表)。

    完成后:

    双击创建好的属性表
    配置三个东东:
    (1)【VC++目录】 -> 【包含目录】-> 【编辑】-> 添加三个路径

    分别是
    C:opencvuildinclude
    C:opencvuildincludeopencv
    C:opencvuildincludeopencv2

    (2)【VC++目录】 -> 【库目录】-> 【编辑】-> 添加一个路径

    C:opencvuildx64vc14lib

    (3)【链接器】->【输入】->【附加依赖项】->【编辑】-> 添加一个文件名

    opencv_world320d.lib
    坑点二:
    添加时是"320d",表示3.2.0版本,用Debug编译,文件可以在C:opencvuildx64vc14lib 中找到

    ps:配置到一半,输入样例程序,先用Debug + x64编译看看

    为了查看我的编译方式,我打开了解决方案配置、平台,如图

    我在mian.cpp中输入样例

    //打开摄像头样例
    #include <opencv2/highgui/highgui.hpp>  
    #include <opencv2/imgproc/imgproc.hpp>  
    #include <opencv2/core/core.hpp>  
    using namespace cv;
     
    int main()
    {
    VideoCapture cap(0);
    Mat frame;
    while (1)
    {
    cap >> frame;
    imshow("调用摄像头", frame);
    waitKey(30);
    }
    return 0;
    }
    

    这时可能会出现一个问题(如图)

    为了解决这个问题,我们进行以下操作【解决方案资源管理器】->【"你的项目"】右键 ->【属性】->【链接器】-> 【高级】->【目标计算机】-> 选择x64的那个

    并打开右上角配置管理器,把【活动解决方案配置】变为Debug,【活动解决方案平台】变为x64,把项目配置为Debug,平台为x64,(没有的话可能要自己创建一个,前题是你的vs上支持x64)。

    基本可以了,不放心的话,按网上的说法,可以打开【"你的解决方案"】右键的属性和项目的属性是否一样。(如图)
    还可以右键解决方案,点【清理解决方案】,与【重新生成解决方案】

    3,vs配置结束,我们把刚刚的样例输入,不出意外可以运行。

    ps:你如果偏向Release调试,可以把所有有关Debug的操作,变成Release的
    包括建立属性表,设置Release编译模式。。。

    常见问题

    1,花式错误,哈哈哈,估计是没有按步骤来,建议重新配置。

    2,可能是包含目录写错,还可能是把属性表写在win32那。

    3,warning : unicode......
    解决字符编码问题的警告。
    http://jingyan.baidu.com/article/9989c746315a3bf648ecfe8f.html
    https://tieba.baidu.com/p/5039279116

  • 相关阅读:
    Linux安全-通过修改/etc/hosts.deny拒绝远程ssh暴力破解
    JS-二进制的处理者:Blob
    JS-二进制数据缓冲区ArrayBuffer
    axio源码分析
    【js】appendChild()具有移动性
    js实现-二进制数据转换为blob
    实现点击下载到本地的功能
    memo、useMemo、useCallback
    memoization缓存优化
    什么是纯函数?
  • 原文地址:https://www.cnblogs.com/juicebox/p/9635720.html
Copyright © 2011-2022 走看看