原创 CMake 配置編譯OpenCV+CUDA
參考: http://bikulov.org/blog/2013/12/24/example-of-cmake-file-for-cuda-plus-cpp-code/ 在CMakeLists.txt 文件如下: CMAKE_MINIMU
原创 OpenCV 命名空間 using namespace
在OpenCV中使用 using namespace cv 的作用: 在使用#include語句包含相應頭文件後,使用下面語句即可包含相應的Opencv命名空間 using namespace cv;
原创 VS2013 編譯 OpenCV_CUDA 工程編譯出錯
編譯出現下面錯誤 Error7 error LNK2019: unresolved external symbol"void __cdecl swap_rb_caller(struct cv::cuda::PtrStepSz<str
原创 OpenCV3.1-OpenCL的使用
參考: http://opencv.org/platforms/opencl.html 一、OpenCV-2.x 和 OpenCV-3.x使
原创 VS2013 配置OpenCV3.1
一、環境: Windows10 家庭版 64位 Virtual Stadio 2013 OpenCV 3.1 二、配置VS的項目屬性 (1)選擇X64 (2) 項目名稱上右鍵->屬性,然後: (路徑以你的電腦實際爲準)
原创 VS2013 配置CUDA
一、環境: Windows10家庭版 64位 Virtual Stadio 2013 CUDA 8.0 二、工程建立 1、打開vs2013並創建一個空win32程序,創建一個cuda_samples的解決方案和cuda_t
原创 CUDA 學習(二)、使用GPU理解並行計算
一、併發性 由於“易並行”不需要或者只需要少許線程間或線程塊間通信,所以CUDA是很理想的並行求解平臺。它用基於片上資源的、顯式的通信原語來支持線程間通信。但是塊間通信只有通過按順序調用多個內核程序才能實現,而且內核間通信需
原创 Makefile (十二) wildcard 用法
在Makefile規則中,通配符會被自動展開。但在變量的定義和函數引用時,通配符將失效。這種情況下如果需要通配符有效,就需要使用函數“wildcard”,它的用法是:$(wildcard PATTERN...)。在Makef
原创 CUDA 學習(四)、線程
一、概述 英偉達的硬件調度是採用SPMD(單程序多數據),屬於SIMD(單指令多數據)的一種變體。線程是並行程序的基本構建塊。 二、CPU與GPU的差異 GPU和CPU設備的架構是迥異的。CPU的設計是用來運
原创 CUDA 學習(六)、線程網格
一、概述 一個線程網格是由若干線程塊組成的,每個線程塊是二維、三維的,擁有X軸、Y軸、Z軸。此時,每次最多能開啓Y*X*Z*T 個線程。 通常線程塊中線程數量最好是一個線程束大小的整數倍,即32 的整數倍。由於
原创 OpenCV_CUDA 中GpuMat數據結構
一 、GUPMat 概述 在使用OpenCV_CUDA 編程中會遇到GpuMat數據結構,該數據結構是GPU內存容器。 在GUP中,類GpuMat是存儲2D數據。類GpuMat 的特點:(1)它的數據不是連續的
原创 Makefile (十) 隱含規則
在我們使用 Makefile 時,有一些我們會經常使用,而且使用頻率非常高的東西,比如,我們編譯 C/C++的源程序爲中間目標文件(Unix 下是[.o]文件,Windows 下是[.obj]文件)。本章講述的就是一些在 M
原创 Makefile (九) make 的運行
一般來說,最簡單的就是直接在命令行下輸入 make 命令,make 命令會找當前目錄的makefile 來執行,一切都是自動的。但也有時你也許只想讓 make 重編譯某些文件,而不是整個工程,而又有的時候我們有幾套編譯規則,
原创 CMake 常用命令解析
參考: http://www.cnblogs.com/coderfenghc/archive/2012/06/16/CMake_ch_01.html 一、常用命令解析 1、CMAKE_MINIMUM_REQUIRED(VERSION 2.
原创 CUDA 學習(三)、CUDA硬件概述
一、PC架構 先看一下酷睿架構圖: PCI-E 是一個有意思的總線。與其上一代PCI(外圍設備互連)總線不同,PCI-E提供一個確定的帶寬。在原先的PCI系統中