• Visual Studio 2019下编译OpenCV 4.7 与OpenCV 4.7 contrib


    一、环境

    使用的环境是Win10,Visual Studio 2019,Cmake3.28,cdua 11.7,cudnn 8.5,如果只是在CPU环境下使用,则不用安装CUDA。要使用GPU处理,安装好CUDA之后,要测试安装的CUDA是否能用。不能正常使用的话,添加一下系统环境变量。

    二、源码

    1.opencv的源码

    打开opencv 官网,选择要下载的源码。
    在这里插入图片描述

    2.opencv_contrib

    打开 opencv_contrib 的git,下载源码。

    在这里插入图片描述

    三、创建工程

    1、选择源码与工程路径

    打开cmake,选择下载好的源码,之后选择工程编译路径,如下图:
    在这里插入图片描述

    2.选择编译器

    选择源码与工程路径之后点 confingure ,跳出以下界面,选择自己安装的vs 版本:
    在这里插入图片描述

    3.添加 contrib源码

    在搜索栏输入extra,然后指定 contrib源码的路径:
    在这里插入图片描述

    4. 创建lib文件方式

    查找world这个选项,如果选择则只生成两个lib,如果不选择,则选择一大堆lib:
    在这里插入图片描述

    5.选择CUDA

    如果要使用GPU进行图像处理,则要选择CUDA选项,如果是cpu,就不用选择,选择GPU选择时,CUDA安装不正确,会报错:
    在这里插入图片描述

    6.是否编译python环境

    选择是否编译成python-opencv,这里不建议选择,如果想在python里面使用opencv,直接pip install opencv-python就可以了,不用这么麻烦:
    在这里插入图片描述

    6.生成工程

    选择所有配置项之后,依次点击下以下三个按键:
    在这里插入图片描述

    7.打开工程

    可以在build目录找到生成的vs工程,使用vs2019打开工程:
    在这里插入图片描述

    四、生成lib

    1.选择生成库

    选择生成debug或者release的:
    在这里插入图片描述

    2.生成lib

    生成lib和dll与exe文件,这步比较慢:
    在这里插入图片描述

    3.INSTALL

    把所有用到lib和dll,exe整合一个目录:
    在这里插入图片描述
    运行之后,在build目录下会生成一个install目录,到这里所有编译都完成了,把这个目录引入到工程目录就可以用了:
    在这里插入图片描述

    五、错误

    1.cv::xfeatures2d::VGG::getDefaultName(void)const

    在编译中,报下面的错误:

    严LNK2001 无法解析的外部符号 "public: virtual class
    std::basic_string std::allocator > __cdecl
    cv::xfeatures2d::VGG::getDefaultName(void)const "
    (?getDefaultName@VGG@xfeatures2d@cv@@UEBA?AV? b a s i c s t r i n g @ D U ? basic_string@DU? basicstring@DU?char_traits@D@std@@V?$allocator@D@2@@std@@XZ) opencv_world C:\LIB\opencv_4_7\build\modules\world\fast.cpp.obj 1

    下载

    patch__.zip

    放到opencv 源码目录,如果已经存这个目录,覆盖目录,然后清空工程,从新创建工程,再从头来一次就可以了。
    在这里插入图片描述

  • 相关阅读:
    若依-匿名注解@Anonymous解析
    工厂人员着装识别检测
    java 企业工程管理系统软件源码+Spring Cloud + Spring Boot +二次开发+ MybatisPlus + Redis
    C++ string类模板
    yolov5
    L2-022 重排链表
    Java运算符详解
    使用jenkins连接linux部署jar包
    Android 内存治理之线程
    java计算机毕业设计商店管理系统源程序+mysql+系统+lw文档+远程调试
  • 原文地址:https://blog.csdn.net/matt45m/article/details/134346075