機器學習:如何編譯OpenCV以包括CUDA GPU支持?
本文將逐步介紹如何編譯OpenCV以包括CUDA GPU支持,以便可以在基于視覺的機器學習項目中使用它。

Pre:我之所以決定寫這篇文章,是因為我發現現有指南缺少一些更詳細的信息,無法說明如何使用CUDA GPU支持從源代碼構建OpenCV,以便將其導入python3.8conda環境。大多數人都以構建過程結束,但低估這只是使OpenCV在項目中正常工作的第一步。
先決條件
在開始之前,我們必須下載一些文件,安裝一些程序。我還將假設你正在將Anaconda軟件包管理器環境用于Python 3.8,并將其設置為啟用的默認python和環境變量。如果沒有,我不確定以下內容是否對你有用。我不建議偏離主要任務。
Anaconda軟件包管理器環境:https://www.anaconda.com/distribution/#download-section
1. Visual Studio 2019
請確保VisualStudio 2019安裝了“帶有C++的桌面開發”包。這是在Visual Studio的安裝過程中完成的。如果你已經安裝了VS2019,但是不確定是否已安裝工作負載,可以通過安裝可執行文件重新安裝(修改)來完成。

使用C ++開發的Visual Studio 2019
2. OpenCV和OpenCV貢獻文件
在計算機上的某個位置創建一個名為“ OpenCV_Build”的文件夾。它不必確切地命名為這個,你要看一眼就知道它是什么。然后,你將同時下載OpenCV和OpenCV contrib.zip。
OpenCV:https://github.com/opencv/opencv/archive/4.4.0.zip
OpenCV contrib:https://github.com/opencv/opencv_contrib/archive/4.4.0.zip
下載完成后,解壓縮zip并將生成的文件夾移到OpenCV_Build中。它應該類似于:OpenCV_Build/opencv-4.5.2OpenCV_Build/opencv_contrib-4.5.2
你要確保它們都是相同的版本(在本例中為4.5.2)。
我還想確保它們是頂級目錄,而不是嵌套在具有相同名稱的文件夾中,但這不是完全必要的,只是使得我們的環境路徑更加精簡。
3. CMake GUI
下載并安裝CMake GUI
CMake GUI:https://cmake.org/
我使用的是3.20.2版,但是安裝哪個版本都沒有關系。
4. CUDA 11.0工具包
下一步,你必須在Nvidia網站上注冊才能下載并安裝CUDA工具包,該工具包既快速又簡單,完全不需要花費很多時間。
下載CUDA工具包:https://developer.nvidia.com/cuda-downloads
5. cuDNN
此步驟與上一步非常相似,但是你必須下載cuDNN才能利用DNN CUDA后端。
下載cuDNN:https://developer.nvidia.com/rdp/cudnn-download
在Nvidia開發人員程序中注冊后,你將需要選擇顯示以下內容的版本:“for CUDA 11.x”.
6.提取cuDNN文件
cuDNN下載完成后,解壓縮zip并打開結果文件夾。在內部,你應該看到一個名為cuda的文件夾,將其打開,然后剩下3個子文件夾,分別為**“ bin”,“ include”和“ lib”。**
你將把文件從每個子文件夾復制到 C:Program FilesNVIDIA GPU Computing ToolkitCUDA11.3 中的相應文件夾中。
downloads/cuda/bin contents to: CUDA/v11.3/bindownloads/cuda/include contents to: CUDA/v11.3/includedownloads/cuda/lib/x64 contents to: CUDA/v11.3/lib/x64
7.下載Ninja以獲得更快的構建時間
Ninja將極大地加快OpenCV的構建過程。
Ninja:https://github.com/ninja-build/ninja/releases/download/v1.10.2/ninja-win.zip
我個人發現,Ninja從1小時45分鐘縮短到不到15分鐘。解壓縮它,然后將Ninja.exe放在你之前創建的“ OpenCV_Build”文件夾中。將所有文件放入各自的文件夾后,應完成prereqs部分。
建議:設置Conda Env
我建議你使用Anaconda,以確保你所做的一切與我所做的相同。你可以使用以下命令設置conda env:conda create -n py38 anaconda python=3.8
建議:為簡單起見,創建一些.bat文件
為簡單起見,我建議制作一些.bat文件,以防萬一在構建過程中出現問題。這樣,你可以快速對cmd進行編輯,然后重新運行它,而不必經歷一次又一次地重新設置所有環境變量的過程。當出現問題時,它還有助于將事情分解成更易于管理的狀態,而且幾乎肯定會出錯。
請輸入評論內容...
請輸入評論/評論長度6~500個字
最新活動更多
- 1 AI狂歡遇上油價破百,全球股市還能漲多久? | 產聯看全球
- 2 OpenAI深夜王炸!ChatGPT Images 2.0實測:中文穩、細節炸,設計師慌了
- 3 6000億美元估值錨定:字節跳動的“去單一化”突圍與估值重構
- 4 Tesla AI5芯片最新進展總結
- 5 連夜測了一波DeepSeek-V4,我發現它可能只剩“審美”這個短板了
- 6 熱點丨AI“瑜亮之爭”:既生OpenClaw,何生Hermes?
- 7 AI界的殺豬盤:9秒刪庫跑路,全員被封號,還繼續扣錢!
- 8 2026,人形機器人只贏了面子
- 9 DeepSeek降價90%:價格屠夫不是身份,是戰略
- 10 AI Infra產業鏈卡在哪里了?


分享













