天天看點

windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟

文章目錄

  • 基本環境
  • 二. 準備
    • 1. 下載下傳所需各軟體的安裝檔案
    • 2. 安裝所需軟體
  • 三.編譯opencv步驟

基本環境

  • cmaker:3.22.0
  • vs2019:16.11.10
  • CUDA:11.4.1
  • cudnn:8.2.4
  • opencv_source:4.5.4
  • opencv_contrib:4.5.4
  • python:3.8.10

二. 準備

1. 下載下傳所需各軟體的安裝檔案

  • OpenCV Source:https://opencv.org/releases/
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  • OpenCV_Contrib:https://github.com/opencv/opencv_contrib
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  • python:https://www.python.org/downloads/
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  • Cmaker:https://cmake.org/download/

2. 安裝所需軟體

  • 安裝CUDA和cuDNN:CUDA和cuDNN安裝教程
  • 安裝Python:Python 安裝教程
  • 安裝Cmaker:Cmaker安裝教程

三.編譯opencv步驟

解壓下載下傳好的opencv壓縮包,如下:

windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟

其中,Opencv_contrib_lose是在安裝過程中自動下載下傳的一些其他軟體包,這裡由于國内牆的原因,部分電腦會在安裝過程中出現無法下載下傳的狀态,導緻報錯,可以自行去各個包的官網下載下傳,這裡為了友善,是以提前下載下傳了所需的軟體包(連結]),按接下來的步驟操作即可。

  1. 打開Cmaker ,選擇源檔案夾河編譯儲存的檔案夾,然後點選Configure
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  2. 選擇VS的版本以及編譯平台X64(預設)
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  3. 配置完成檢視輸出發現部分報錯,
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟

    * 報錯解決方法檢視:https://www.freesion.com/article/4900526969/,就是由于國内牆的原因導緻部分軟體包下載下傳逾時。

    這裡已經将需要的檔案下載下傳到OpenCV_lose中,将OpenCV_lose中對應的檔案拷貝到Source\opencv-4.5.4.cache中即可,然後重新點選Configure确認沒有錯誤

    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  4. 通過搜尋關鍵字,修改Cmake中的部配置設定置
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟

搜尋的内容以及選項如下:

  • OPENCV_EXTRA_MODULES_PATH ,這個就是所需要的opencv_contrib-4.5.4中的modules,選擇這個路徑就好
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  • cuda,包含cuda元件
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  • world,用來建構包含所有包的opencv_world454.dll
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  • ENABLE_FAST_MATH
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  • OPENCV_ENABLE_NONFREE
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  • WITH_OPENCV_SVM
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  • TEST,可以選擇不取消勾選,取消勾選隻是去掉不必要的東西,加快編譯速度
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  • OPENCV+GENERATE_SETUPVARS
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  1. 點選Configure,再次出現紅色錯誤,将lose中剩餘的檔案複制過去
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  2. 搜尋CUDA進行相應配置,然後點選Configure
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  3. configure完成後發現沒有紅色錯誤,點選generate進行生成
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  4. 生成完成後點選open project
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  5. 打開的VS中選擇生成→批生成→勾選ALL_BUILD→生成,等待編譯完成
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  6. 同樣方式,夠選INSTALL點選生成
    windows下編譯opencv_contrib基本環境二. 準備三.編譯opencv步驟
  7. 等待編譯完成