歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> 編譯OpenCV的GPU,利用CUDA加速

編譯OpenCV的GPU,利用CUDA加速

日期:2017/3/1 9:37:12   编辑:Linux編程

首先檢查自己的機器是否支持,否則都是白搭(只有NVIDIA的顯卡才支持,可在設備管理器中查看)

如果不用GPU,可以直接官網下載預編譯好的庫

環境:

1 VS2013

2 Opencv2.4.9

3 CUDA6.5 (只有6.5版本以上版本才加入對VS2013的支持,6.0最高支持到2012)

4 TBB

--------------------------------------分割線 --------------------------------------

Ubuntu 12.04 下 CUDA 編程 http://www.linuxidc.com/linux/2014-06/103056.htm

Ubuntu 12.04 安裝 CUDA-5.5 http://www.linuxidc.com/Linux/2013-10/91101.htm

Ubuntu 11.10 上安裝CUDA開發環境 http://www.linuxidc.com/Linux/2012-04/58913.htm

Fedora 15系統下配置CUDA環境 http://www.linuxidc.com/Linux/2011-12/49874.htm

Ubuntu 11.04 安裝 NVIDIA CUDA 4.0 RC2 http://www.linuxidc.com/Linux/2011-10/46304.htm

Linux Mint 13/Ubuntu 12.04 配置CUDA 4.2 & OpenCV 2.4.2 方法 http://www.linuxidc.com/Linux/2013-10/91102.htm

CUDA入門教程 http://www.linuxidc.com/Linux/2014-07/104328.htm

--------------------------------------分割線 --------------------------------------

--------------以下內容轉自網絡(加入了自己編譯時遇到的問題及解決方案)-----------------

1. 需要的文件
1.1 CMAKE 3.0 [http://www.cmake.org/download/
1.2 CUDA 6.5 [https://developer.nvidia.com/cuda-toolkit
1.3 OpenCV 源文件 [https://github.com/Itseez/opencv/releases/tag/2.4.9
1.4 Intel TBB 庫 [https://www.threadingbuildingblocks.org/download
1.5 Python 2.7 (非必須)
1.6 Eigen 2.0.17 (非必須)
1.7 Visual Studio 2013 (也可以用其他版本)

2. 配置 CMAKE
2.1 打開 CMAKE
- 選擇 Source Folder 到 OpenCV 的源文件目錄
- 選擇 Output Folder
- 勾選 Advanced



2.2 點 Configure,選擇編譯器
- 選擇 ‘Visual Studio 12 2013 Win64′
2.3 配置 CUDA 選項
- 取消 ‘BUILD_DOCS’ and ‘BUILD_EXAMPLES’
- 取消 ‘CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE’
- 檢查 ‘CMAKE_LINKER’, 保證是 Visual Studio 12.0 (vs2013)
- 選上 ‘WITH_CUBLAS’, ‘WITH_CUDA’, ‘WITH_OPENGL’, ‘WITH_TBB’
- 點擊 Configure 刷新配置

2.4 配置 TBB 選項
- 把 tbb include path 設置好,例如我的是 “D:\toolkits\tbb43_20140724oss\include”。一定要選到 include文件夾為止。
- 點擊 Configure 刷新

- 接著可以看到 tbb 的 library 目錄自動有了,但是可能是錯的,需要改到 Debug 和 Release 文件夾的上級目錄為止。例如我的要加上 ‘vc12*,變成 D:/toolkits/tbb43_20140724oss/lib/intel64/vc12〃(不加vc12的話,opencv_core模塊都編譯不過去,其他的就不用說了)

- 點擊 Configure 刷新


2.5 直到沒有紅色條目出現,點擊 Generate 生成 OpenCV.sln

3. 編譯 OpenCV.sln
- 如果 OpenCV,tbb,Python 中的某個安裝在 C:\Program Files,那麼你需要用管理員權限運行 vs2013 才行
- 我建議先編譯 *opencv_core* 和 ‘ opencv_gpu* (右鍵點擊,點 *BUILD*)。如果這兩個沒錯,接下來應該都可以編譯
- 右鍵點擊 *ALL_BUILD*,在點 *BUILD*
- *BUILD* 之後在編譯一下 *INSTALL*,來把編譯好的文件放在一起到 *<Output Folder>\install*
- 在切換到 Release,重復 *ALL_BUILD* 和 *INSTALL*
- *Debug* 應該會有一個 error, *Release* 應該會沒有 error
- 編譯時間很長。很長。

Copyright © Linux教程網 All Rights Reserved