用cmake编译opencv4.20+vc2019+opencv_contrib4.20

  • 高版本的opencv因为版权等问题,在正式发布的版本里,已经将SURF等算法移到opencv_contrib里
  • 如果需要这些算法,需要自己下载opencv_contrib,用cmake编译
  • opencv_contrib4.20下载地址:https://github.com/opencv/opencv_contrib/releases
  • 官网下载opencv4.20:https://opencv.org/releases/
  • 解压下载的两个文件包,到下面的两个目录:

   

  • 官网下载cmake-3.16.4-win64-x64.msi:https://cmake.org/download/
  • 安装cmake
  • 运行cmake,先设置以下两个选择项:

用cmake编译opencv4.20+vc2019+opencv_contrib4.20_第1张图片

  • 选择编译器:

用cmake编译opencv4.20+vc2019+opencv_contrib4.20_第2张图片

  • 设置opencv_contrib的选项:opencv_contrib的modules目录

        OPENCV_EXTRA_MODULES_PATH:设置成

  • 再设置:OPENCV_ENABLE_NONFREE,打钩(这一步很重要,否则编译后的库不能用)

  • 再设置自己需要的编译项目:(下面画红线的框的选项,可能需要经过两次generate才能出现)

      用cmake编译opencv4.20+vc2019+opencv_contrib4.20_第3张图片

  • 生成c++文件:

  • 运行vs2019,选择刚才生成的opencv项目:

用cmake编译opencv4.20+vc2019+opencv_contrib4.20_第4张图片

用cmake编译opencv4.20+vc2019+opencv_contrib4.20_第5张图片

  • 编译:

用cmake编译opencv4.20+vc2019+opencv_contrib4.20_第6张图片

用cmake编译opencv4.20+vc2019+opencv_contrib4.20_第7张图片

  • 经过漫长的等待时间,完成编译,在目标文件夹生成需要的库:

        dcx\bin\Debug\opencv_world420d.dll

         dcx\lib\Debug\opencv_world420d.lib

  • 将这两个库,替换旧的opencv4.20里库就可以了。

------------------------------------------------------------------------

附:编译好的opencv4.2+opencv_contrib_64位.rar下载地址:

https://download.csdn.net/download/dcx_dcx/12237707

你可能感兴趣的:(用cmake编译opencv4.20+vc2019+opencv_contrib4.20)