OpenCV第三方库手动下载

引言

对于OpenCV在Cmake的构建过程中,需要下载第三方库,如果网络环境较差,下载失败,这时候又需要重新构建,比较费时。下面用一种简单的方法直接完成下载操作。

具体流程

1.创建脚本进行构建

直接找到OpenCV contrib的目录,一种可能的路径为~/OpenCV/opencv_contrib-master/modules/xfeatures2d/cmake
可以看到下面包含两个cmake脚本download_boostdesc.cmakedownload_vgg.cmake
在这个目录下直接创建一个新的Cmake工程,即创建一个CMakeLists.txt文件,并写入以下内容

cmake_minimum_required(VERSION 3.5)
include(${CMAKE_CURRENT_SOURCE_DIR}/download_vgg.cmake)
include(${CMAKE_CURRENT_SOURCE_DIR}/download_boostdesc.cmake)
include(${CMAKE_CURRENT_SOURCE_DIR}/OpenCVUtils.cmake)
include(${CMAKE_CURRENT_SOURCE_DIR}/OpenCVDownload.cmake)

set(DOWNLOAD_DIR "${CMAKE_CURRENT_SOURCE_DIR}/downloads/xfeatures2d")
download_boost_descriptors("${DOWNLOAD_DIR}" boost_status)
download_vgg_descriptors("${DOWNLOAD_DIR}" vgg_status)

这个脚本非常粗糙,你可以进一步完善它。

2. 补充工具脚本

注意到这里需要用到两个工具脚本OpenCVUtils.cmakeOpenCVDownload.cmake,你可以在OpenCV存储库的cmake文件夹中找到它们,并将他们复制到上述的目录下。一种可能的路径为~/opencv-master/cmake

3. 运行脚本并拷贝下载的文件

在上述的工程目录下执行cmake .进行工程的构建,如果构建完毕,你应该可以看见下载完毕的文件位于DOWNLOAD_DIR下。对于上述脚本,这个路径即为当前目前。
之后,你可以将下载好的文件拷贝到相应的目录下,例如~/OpenCV/opencv_contrib-master/modules/xfeatures2d/src
之后,你就可以继续进行项目的编译构建了。