【OpenCV】Win10 Cmake源码编译OpenCV4.1.1 + contrib + CUDA9.2 + Halide + LLVM + Clang

环境:

Win 10

Cmake 3.10

CUDA 9.2

CUDNN 7.1

最新版Halide commit 9bbcb6b4f2d49a4a112e370993709d95c544547f

LLVM 8.0

Clang 8.0

Visual studio 2015


一、编译LLVM

最新版的Halide要求LLVM的版本大于8.0。

1. 到官网下载LLVM源码:下载地址。

2. 同时下载对应版本的Clang源码。

3. 解压LLVM源码,在源码目录下tools文件夹下新建一个clang文件夹。

4. 解压Clang源码,将解压文件夹下的源码拷贝到上面新建的clang文件夹下。

5. 编译LLVM。在LLVM源码根目录下新建一个buld文件夹。同时也新建一个install文件夹用于将编译好的文件统一放在这个文件夹下。

cd build
cmake.exe -DLLVM_ENABLE_TERMINFO=OFF -DLLVM_TARGETS_TO_BUILD=X86 -DLLVM_ENABLE_ASSERTIONS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=D:\software\LLVM\install -G "Visual Studio 14 Win64" D:\software\LLVM
MSBuild.exe /m:4 /t:Build /p:Configuration=Release .\\INSTALL.vcxproj

注意这里的LLVM_TARGETS_TO_BUILD, windows平台只有X86可选,是没有x64的。

二、编译Halide

1. 到github上下载halide源码,下载地址。

2. 解压源码,在源码根目录下新建一个build文件夹。

3. 编译Halide。

cd build
cmake.exe -DLLVM_DIR=D:\software\LLVM\install\lib\cmake\llvm -DLLVM_VERSION=80 -DWITH_TESTS=OFF -DWITH_APPS=OFF -DWITH_TUTORIALS=OFF -DCMAKE_BUILD_TYPE=Release -G "Visual Studio 14 Win64" ..
MSBuild.exe /m:4 /t:Build /p:Configuration=Release .\\ALL_BUILD.vcxproj

4. 编译完成之后将D:\software\Halide-master\build\bin\Release加入环境变量Path。

三、编译OpenCV

后面编译OpenCV的步骤和博客【OpenCV】Win10 CMake+Visual studio 2015+CUDA9.2源码编译OpenCV4.1.1-openvino+OpenCV-contrib的过程差不多,只是注意在cmake configure的时候注意勾选WITH_HALIDE。

再次configure之后,HALIDE_ROOT_DIR填入D:/software/Halide-master/build,然后再次点击configure。

然后后面的步骤就是一样的了,这里不再赘述。

编译完成之后就可以在调用DNN模块的时候设置backend为DNN_BACKEND_HALIDE了。

你可能感兴趣的:(opencv)