windows下编译opencv+opencv

xiaoxiao2021-03-01  7

前言

在opencv3中,SURF/SIFT 以及其它的一些东西被移动到了独立的库(opencv_contrib repo)中。此存储库旨在用于开发所谓的“额外”模块,提供功能。 新模块通常没有稳定的API,并且它们没有经过充分测试。 因此,它们不应作为官方OpenCV发行版的一部分发布。所有新模块都应单独开发,并首先在opencv_contrib存储库中发布。 之后,当模块成熟并获得普及时,它将被移至中央OpenCV存储库,开发团队为该模块提供生产质量支持。 我的环境:windows10+OpenCV3.4.2+opencv_contrib3.4.2+cuda9.0 注:如果不需要这些额外模块,下载OpenCV官网编译好的库即可。


编译

1.安装cmake(version >=3.9.1) cmake是开源的跨平台系列工具,旨在编译、测试和打包软件。 cmake使用简单的平台和独立于编译器的配置文件来控制软件编译过程,并生成可在你选择的编译器环境中使用的本机makefile和workspaces。安装时选择向系统添加环境变量或者安装结束后自行添加。


2.安装git-bash (version>=2.14.1) Git是目前世界上最先进的分布式版本控制系统。


3.运行git-bash 鼠标右键运行git-bash,在命令行窗口中输入以下命令:

mkdir /d/OpenCV //在d盘下新建一个OpenCV文件夹 cd /d/OpenCV

在OpenCV文件夹下新建一个installOCV.sh文件,写入以下代码:

#!/bin/bash -e myRepo=$(pwd) CMAKE_CONFIG_GENERATOR="Visual Studio 14 2015 Win64" if [ ! -d "$myRepo/opencv" ]; then echo "clonning opencv" git clone https://github.com/opencv/opencv.git mkdir Build mkdir Build/opencv mkdir Install mkdir Install/opencv else cd opencv git pull --rebase cd .. fi if [ ! -d "$myRepo/opencv_contrib" ]; then echo "clonning opencv_contrib" git clone https://github.com/opencv/opencv_contrib.git mkdir Build/opencv_contrib else cd opencv_contrib git pull --rebase cd .. fi RepoSource=opencv pushd Build/$RepoSource CMAKE_OPTIONS='-DBUILD_PERF_TESTS:BOOL=OFF -DBUILD_TESTS:BOOL=OFF -DBUILD_DOCS:BOOL=OFF -DWITH_CUDA:BOOL=ON -DBUILD_EXAMPLES:BOOL=OFF -DINSTALL_CREATE_DISTRIB=ON' cmake -G"$CMAKE_CONFIG_GENERATOR" $CMAKE_OPTIONS -DOPENCV_EXTRA_MODULES_PATH="$myRepo"/opencv_contrib/modules -DCMAKE_INSTALL_PREFIX="$myRepo"/install/"$RepoSource" "$myRepo/$RepoSource" echo "************************* $Source_DIR -->debug" cmake --build . --config debug echo "************************* $Source_DIR -->release" cmake --build . --config release cmake --build . --target install --config release cmake --build . --target install --config debug popd

注:脚本中

CMAKE_CONFIG_GENERATOR="Visual Studio 14 2015 Win64"表示VS2015 64位(vc12对应VS2013,vc11对应VS2012) -DCMAKE_INSTALL_PREFIX="$myRepo"/install/"$RepoSource" "$myRepo/$RepoSource"(opencv安装目录) CMAKE_OPTIONS='-DBUILD_PERF_TESTS:BOOL=OFF -DBUILD_TESTS:BOOL=OFF -DBUILD_DOCS:BOOL=OFF -DWITH_CUDA:BOOL=ON -DBUILD_EXAMPLES:BOOL=OFF -DINSTALL_CREATE_DISTRIB=ON'(-DWITH_CUDA:BOOL=ON启用cuda模块)

4.执行脚本 在当前git命令行窗口执行

./installOCV.sh

接下来就是漫长的等待时间了,下次运行这个脚本时opencv和opencv_contrib模块会更新然后重新编译。

转载请注明原文地址: https://www.6miu.com/read-3649993.html

最新回复(0)