歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

如何編譯OpenCV-2.3.x/OpenCV-2.4.x使其支持GPU-CUDA高速運算?

前面,我們講到了使用OpenCV-2.4.0在Visual Studio 2005/2008/2010常規編譯的方法,本文則主要講述如何使OpenCV支持CUDA高速運算。

我們將要使用的工具除了常規編譯方式使用的工具外,還要使用CUDA tookit和GPU Computing SDK,如本人使用的版本分別為cudatoolkit_4.2.9_win_64.msi和gpucomputingsdk_4.2.9_win_64.exe(我的電腦是64位系統),相關文件可以從官網下載。

下載完成後並安裝,確保CUDA SDK的bin目錄(“C:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK4.2\C\common\bin”)已經添加到環境變量中後,我們就開始編譯支持CUDA高速運算的OpenCV。

本文以Visual Studio 2005 Professional為例,其他編譯器總體一樣,只不過在intel tbb環境變量配置這一步略微不同,可以參考:使用OpenCV-2.4.0.exe文件編譯x86或x64平台Visual Studio2005/2008/2010目標文件。

一、生成項目文件

假設我們已經將OpenCV-2.4.0源代碼放到“C:\Program Files\OpenCV\src”目錄下,安裝完成cmake,並將ntel tbb可執行目錄添加到系統環境變量,並使變量生效,相關部分參考:使用OpenCV-2.4.0.exe文件編譯x86或x64平台Visual Studio2005/2008/2010目標文件。

運行cmake,如圖1所示,然後單擊“Where is the source code:”右側的“Browse Source”,浏覽到“C:/ProgramFiles/OpenCV/src”文件夾,單擊“where to build the binaries:”右側的“Browse Build”,浏覽到“C:/Program Files/OpenCV/vs2005”文件夾(vs2005文件夾是我自己創建的)。

圖1 配置源代碼和生成目錄

    然後單擊左下方的“Configure”按鈕,這時會彈出“cmake-gui”窗口,在“Specify the generator for this project”下拉菜單選擇“Visual Studio 8 2005”、“Usedefault native compilers”後,單擊“Finish”按鈕,如圖2所示。

圖2 生成項目類型選擇

完成以上操作後勾選“BUILD_EXAMPLES”、“CUDA_BUILD_CBUIN”、“CUDA_VERBOSE_BUILD”、“WITH_TBB”和“WITH_CUBLAS” 、“WITH_CUDA”,注意這裡千萬不要勾選“CUDA_BUILD_EMULATION”選項,不然會報錯的,如下所示。

  1. CMake Error at C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindCUDA.cmake:616 (message):  
  2.   CUDA_BUILD_EMULATION is not supported in version 3.1 and onwards.  You must  
  3.   disable it to proceed.  You have version 4.2.  
Copyright © Linux教程網 All Rights Reserved