cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015
- 安裝所需軟體/庫
- Step1. 下載下傳安裝Anaconda3
- Step2. 下載下傳安裝cmake 3.14
- Step3. 下載下傳安裝CUDA 10.0
- Step4. 下載下傳安裝cuDNN 7.6
- Step5. 使用VS和CUDA編譯測試檔案
- Step6. 下載下傳安裝TBB
- Step7. 下載下傳編譯opencv-4.0.0和contrib
- 支線任務
Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015)
參考資料:
- windows 10 64bit下安裝Tensorflow+Keras+VS2015+CUDA8.0 GPU加速;
- Win10 下Cmake編譯配置 Opencv3.1 + Cuda7.5 + VS2013;
- WIN10 + OpenCV3.4 + CUDA8.0 + Cmake3.9.0 + TBB + VS2015配置/重編譯;
- Win10安裝CUDA10和cuDNN;
- OpenCV 3.1.0 重編譯——支援CUDA8.0;
- opencv+cuda編譯出現LNK2019 cv::__termination錯誤;
- 圖像品質評價方法PSNR+SSIM&&評估名額SROCC,PLCC.
---------------------- 超長文多圖預警!!! ----------------------
安裝所需軟體/庫
- Anaconda3;
- cmake 3.14;
- CUDA 10.0;
- cuDNN 7.6;
- opencv-4.0.0;
- opencv_contrib-4.0.0;
- TBB 2019.
我下載下傳的軟體和庫如下圖所示:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 Step1. 下載下傳安裝Anaconda3
點選連結:Anaconda3,進入下載下傳頁面,注意先選擇Windows系統,再點選Download進行下載下傳,如下圖所示:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 下載下傳完成開始安裝軟體。其他步驟可以選擇預設,直接點選Next>。安裝路徑也可以使用預設的安裝位置(C槽),這裡我改在了D盤, 可根據個人喜好選擇。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 路徑選好後,下面這一步,記得把紅框部分都勾選上,然後點選Install,等待安裝:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 安裝完成之後,打開cmd指令視窗,輸入
<span style="color:#000000"><code>python -V
</code></span>
出現
Python 3.7.3 :: Anaconda, Inc.
證明安裝成功。
下圖我自己安裝了3.7.2的版本,是以顯示結果稍有差别。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 Anaconda3下載下傳安裝完畢!
Step2. 下載下傳安裝cmake 3.14
進入cmake 3.14下載下傳頁。選擇适合個人作業系統的 .msi 檔案進行下載下傳,比如我個人的電腦是64位作業系統,選擇 cmake-3.14.5-win64-x64.msi ,如下圖所示;如果是32位,則選擇 cmake-3.14.5-win32-x86.msi 。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 下載下傳完成,先把之前安裝的舊版本cmake解除安裝掉,才可安裝新版本cmake。(如果電腦已安裝cmake,也可嘗試不安裝新版本,使用舊版本cmake進行編譯,也許同樣能編譯成功)
安裝進入下圖界面注意選擇第三項,添加cmake到系統路徑,下面是否建立桌面圖示根據個人喜好勾選,選好後點選Next進入下一步。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 安裝路徑根據個人喜好修改,這裡我把C槽改成了D盤。如不願意修改,也可以安裝到預設路徑C:\Program Files\CMake\。路徑修改好後,直接點選Next進入下一步,開始軟體安裝。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 安裝完成後出現以下畫面,點選Finish,結束安裝。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 cmake安裝完畢!
Step3. 下載下傳安裝CUDA 10.0
進入CUDA 10.0下載下傳頁。Win10作業系統,可按照下圖深綠色部分進行選擇;如果非Win10,則根據個人作業系統選擇合适的選項。選好後點選下圖紅色框内的Download進行下載下傳。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 下載下傳完成後,打開安裝程式。提示将CUDA的安裝檔案提取到臨時檔案夾中,提取路徑可選擇預設(提取到C槽)或自定義,然後點選OK。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 等待檔案提取:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 提取結束,出現NVIDIA程式安裝界面:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 出現以下畫面,AGREE AND CONTINUE點起來。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 選擇Custom(Advanced),然後NEXT。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 這裡,全都要,然後NEXT。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 這裡進入關鍵一步,選擇安裝位置,可選擇預設或自定義。這些路徑在後面配置環境變量的時候需要用到,一定要注意保持一緻。比如在這裡我都安裝在了D盤,之後環境變量也要寫D盤的路徑。都選好後點選NEXT,開始安裝。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 等待安裝:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 安裝完成後,NEXT。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 然後CLOSE,結束安裝。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 安裝完成,配置系統環境變量。首先确認是否下圖的兩項環境變量:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 将剛才CUDA安裝路徑添下的相應檔案夾添加到Path中,如下圖:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 驗證CUDA是否安裝成功。cmd或是PowerShell中輸入:
nvcc -V
如正确安裝,則會出現以下輸出結果:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 CUDA安裝、配置完成!
Step4. 下載下傳安裝cuDNN 7.6
點選此連結:cuDNN 7.6,進入下載下傳頁。下載下傳前必須登陸NVIDIA賬号,如果已有NVIDIA賬号,點選Login,進入登陸界面;如果沒有賬号,則需要注冊以後登陸。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 登陸界面如下,輸入注冊好的賬号和密碼,點選Login進入下載下傳頁。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 進入下載下傳頁面後先勾選同意條款 I Agree To… ,然後選擇與cuda版本對應的cuDNN庫,我們這裡選擇第一個 … for CUDA 10.0 ,然後Win10系統選擇 cuDNN Library for Windows 10 ,開始下載下傳cuDNN庫。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 下載下傳完成後解壓檔案,解壓出來的cuda目錄下包含如下内容:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 接着,我們将以上檔案夾中的檔案,複制到已安裝的cuda檔案夾的相應位置下:
- 将bin中的 cudnn64_7.dll ,複制到D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin;
- 将include中的 cudnn.h ,複制到D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\include;
- 将lib\x64中的 cudnn.lib ,複制到D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\lib\x64.
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 請根據個人安裝cuda的路徑,找到檔案複制的位置。如果之前cuda的安裝路徑為預設路徑,則把上面的路徑的盤符D:都改為C:即可找到相應路徑。
以上檔案都複制完以後,将庫路徑D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\lib\x64,添加到環境變量中。(同樣地,路徑需要根據個人情況做相應修改)
點選右下角的Environment Variables環境變量按鈕:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 輕按兩下Path行進入編輯環境變量界面:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 右邊點選New建立按鈕,添加紅色方框内的路徑:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 cuDNN安裝、配置完畢!
Step5. 使用VS和CUDA編譯測試檔案
進入D:\Program Files\NVIDIA Corporation\CUDA Samples\v10.0檔案夾,打開Samples_vs2015.sln這個工程:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 編譯生成1_Utilities中所有的檔案。注意紅框部分選擇Release和x64。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 如果編譯成功,則可以看到下圖提示:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 在D:\Program Files\NVIDIA Corporation\CUDA Samples\v10.0\bin\win64\Release中會生成一些應用程式和庫檔案,我們隻需要deviceQuery.exe和bandwidthTest.exe進行驗證。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 在檔案夾空白處Shift+滑鼠右鍵,選擇Open PowerShell window here,打開PowerShell
視窗,運作deviceQuery.exe。視窗輸入:
.\deviceQuery.exe
顯示Result = Pass,表示安裝測試成功。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 接下來運作bandwidthTest.exe,視窗輸入:
.\bandwidthTest.exe
同樣的,顯示Result = Pass,表示安裝測試成功。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 VS和CUDA編譯測試完畢!
Step6. 下載下傳安裝TBB
點此連結下載下傳TBB 2019, 下載下傳頁面如下圖所示:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 下載下傳後,根據個人喜好,可将檔案解壓到任意路徑,這裡解壓到了D:\Program Files目錄下,如下圖所示:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 然後設定環境變量,将D:\Program Files\tbb2019_20190410oss_win\tbb2019_20190410oss\bin\intel64\vc14添加到Path中:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 TBB安裝、配置完成!
Step7. 下載下傳編譯opencv-4.0.0和contrib
點選以下連結進行下載下傳:
- opencv-4.0.0;
- opencv_contrib-4.0.0.
建立一個檔案夾,用來存放提取出來的opencv和contrib源碼檔案,友善後續編譯查找和添加路徑,這裡我們命名為opencv400_source(可根據個人喜好命名):
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 再建立一個檔案夾,作為目标檔案夾,編譯後的opencv檔案将會生成到該目錄下,命名為opencv400_CUDA:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 打開D:\opencv400_source\opencv_contrib-4.0.0\modules\cudev路徑下的CMakeLists.txt檔案:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 在
set(the_description “CUDA device layer”)
下一行增加
set(OPENCV_SKIP_DLLMAIN_GENERATION ON)
這麼做是為了避免後續使用VS2015生成opencv庫檔案時,出現LNK2019 cv::__termination錯誤。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 打開cmake,設定源碼路徑D:\opencv400_source\opencv-4.0.0\sources和目标路徑D:\opencv400_CUDA,然後點選Configure:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 彈出編譯環境選擇界面,選擇Visual Studio 14 2015和x64,然後點選Finish:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 接下來進行編譯配置:
- 添加contrib路徑:D:\opencv400_source\opencv_contrib-4.0.0\modules;
- 勾選OPENCV_ENABLE_NONFREE;
- 勾選WITH_CUDA;
- 勾選WITH_TBB。
然後點選Configure。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 這時還會出現紅色部分,繼續進行相應配置:
- 添加TBB相關路徑;
- 去掉勾選WITH_MATLAB。
TBB路徑可對照下圖進行相應添加。去掉勾選WITH_MATLAB,是為了在之後VS2015編譯過程中,避免出現 Error: MEXEXT: Unsupported platform 形式的錯誤。配置完成點選Configure。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 之後出現TBB_VER_FILE的路徑配置,已自動填寫,檢查确認無誤,直接點選Configure。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 表單全白,說明配置沒有問題,點選Generate。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 顯示Generating done,說明cmake編譯opencv順利完成!
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 編譯生成的檔案在目标檔案夾D:\opencv400_CUDA下,用VS2015打開OpenCV.sln工程:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 先不要急着ALL_BUILD,先生成opencv_core和opencv_cudacodec。如果這兩個項目能夠通過,我們再全部生成;如果報錯,說明之前的cmake編譯有問題,根據錯誤提示進行相應的查找和分析,這樣可以節省大量的時間。
生成順序如下圖所示:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 opencv_core生成成功:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 opencv_cudacodec生成成功:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 接下來開始ALL_BUILD,生成過程相當漫長,可以該幹嘛幹嘛去。完事回來,蹦出以下錯誤:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 該錯誤提示連結失敗,無法打開opencv_cudabgsegm和opencv_cudaobjdetect的庫檔案。接下來我們單獨對這兩個項目重新生成:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 喜聞樂見,opencv_cudabgsegm生成成功:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 opencv_cudaobjdetect也同樣生成成功:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 這時,我們可以在D:\opencv400_CUDA\lib\Debug目錄下,确認生成相應的.lib檔案:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 重新ALL_BUILD,坐等結果。。。
編譯的過程中可能出現一下三個問題:
-
如果遇到boostdesc和vgg的問題,可參考
fatal error: boostdesc_bgm.i: vgg_generated_80. vgg_generated_120.i沒有那個檔案或目錄文章中提到的辦法解決。所需檔案下載下傳位址:boostdesc,vgg。
将解壓縮後的檔案放到opencv_contrib/modules/xfeatures2d/src目錄下,用Cmake重新配置一遍,然後重複以上操作即可。
- 如果遇到 “features2d/test/test_detectors_regression.impl.hpp”: No such file or directory的問題,可參考VS2015+OpenCV4.1.1拓展子產品配置主要錯誤解決方案中提到的方法解決。
- 如果遇到 error LNK1104: 無法打開檔案“python37_d.lib” 的問題,可參考編譯OpenCV缺少python27_d.lib的解決方法的方法來解決。
生成成功!沒有報錯!
這就預示着之後生成INSTALL項目一路坦途一馬平川,該填的坑都填平了,可以哼着小曲小嗨一會兒。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 滑鼠輕輕一抖,INSTALL生成起來。果不其然,生成得舒心又順暢:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 install檔案夾下,出現了相當親切的檔案目錄:bin、include和x64\vc14\lib,接下來大家知道該怎麼做了。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 配置編譯好的opencv。
首先配置環境變量,在Path中添加D:\opencv400_CUDA\install\x64\vc14\bin,登出或重新開機電腦使其生效:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 接下來配置VS項目屬性。
建立一個控制台應用程式,在項目名稱上右鍵,然後點選 Properties(屬性):
在 VC++ Directories 中添加 Include Directories 和 Library Directories:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 Include Directories 中添加以下兩個路徑:
D:\opencv400_CUDA\install\include\opencv2
D:\opencv400_CUDA\install\include
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 Library Directories中添加以下路徑:
D:\opencv400_CUDA\install\x64\vc14\lib
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 接下來要輸入附加依賴項,就是在 Linker – Input – Additional Dependencies 裡面,把生成的所有 .lib的檔案名都寫上。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 下面是一個比較便捷的操作,以生成debug的庫名稱為例。在 D:\opencv400_CUDA\install\x64\vc14\lib 檔案夾空白處Shift+滑鼠右鍵,點選 Open PowerShell window here,打開PowerShell指令視窗。
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 輸入以下指令行:
dir *d.lib -Name >debug_lib.txt
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 在檔案夾中會生成一個名為 debug_lib.txt 的文本檔案,裡面包含了所有debug版本的庫檔案名,如下圖所示:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 Ctrl+A選中全部文本,将所有檔案名複制粘貼到 Additional Dependencies 的文本框中,點選OK:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 到這裡,opencv配置完成!
接下來要做的就是測試剛才編譯生成的opencv庫,看看是否可以正常使用GPU加速。
找到 D:\opencv400_source\opencv-4.0.0\sources\samples\cpp\tutorial_code\gpu\gpu-basics-similarity 檔案夾下的 gpu-basics-similarity.cpp 檔案:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 把該檔案中的内容複制到剛才配置好opencv的測試工程中,注意選擇x64的Debug版本,然後在項目名稱上右鍵,點選Build(生成):
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 項目順利生成:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 到此,opencv編譯和測試全部完成!!!
用GPU盡情加速吧,少年!!!
支線任務
如果你想把這個例程跑起來,就需要對上面的代碼做一定的修改。不難,有興趣的朋友可以自己嘗試。
将下圖作為輸入圖像:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 将原圖縮小5分之一再放大回原尺寸的圖像,作為待測圖像,如下圖所示:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務 運作結束,将會得到CPU和GPU運算時間對比,以及圖像品質評價結果,如下圖所示:
cmake編譯opencv: Win10+cmake3.14.4+cuda10.0+cudnn7.6+opencv-4.0.0+contrib+vs2015安裝所需軟體/庫Step1. 下載下傳安裝Anaconda3Step2. 下載下傳安裝cmake 3.14Step3. 下載下傳安裝CUDA 10.0Step4. 下載下傳安裝cuDNN 7.6Step5. 使用VS和CUDA編譯測試檔案Step6. 下載下傳安裝TBBStep7. 下載下傳編譯opencv-4.0.0和contrib支線任務