1. 程式人生 > >Win 10 Cuda 9.2 Opencv 3.4.2 原始碼編譯

Win 10 Cuda 9.2 Opencv 3.4.2 原始碼編譯

OpenCV官方提供的win 安裝包沒有Cuda 的加速。所以我們需要Cuda的版本。

具體編譯步驟:visual studio 選擇 2015 的版本。因為2017雖然好用,但是VC++版本更新太快,和Cuda 一直會有衝突,這個也是很無奈。並且新安裝的肯定是最新的2017的版本,而如果用varsall.bat 選C++工具集的話,Cmake 又不認,這個很是蛋疼。

所以我們最中肯的 方法是用visual studio 2015 。我們可以將主開發環境設成visual studio 2017。而用cmake 編譯某些C++庫時, 在cmake 中設定為2015 即可。

cuda9中有一個單獨的halffloat(cuda_fp16.h)標頭檔案,也應該被包括在opencv的目錄裡,將標頭檔案cuda_fp16.h新增至 opencv\modules\cudev\include\opencv2\cudev\common.hpp

即在common.hpp中新增

#include <cuda_fp16.h>

具體Cmake 生成命令為

cmake -G "Visual Studio 14 2015 Win64" -DCMAKE_BUILD_TYPE=RELEASE -DWITH_CUDA=ON -DWITH_PYHTHON=ON ../sources 

會自動檢測到Python Cuda 9.2

然後開啟生成的sln 解決方案檔案。點選重新生成解決方案。一般不會報錯。然後在install 專案上重新生成即可。這樣編譯好了具有GPU加速的OpenCV庫