如果使用CUDA编译OpenCV,如何在CMAKE文件中查找

时间:2013-08-22 18:19:55

标签: opencv cmake

我正在使用opencv与另一个库。所以如果OpenCV有CUDA,我想编译一个类。 我需要在Cmake文件中实现这一点。但我找不到任何告诉OpenCV的变量 是否有CUDA。

FindOpenCV.cmake定义了这些变量

OpenCV_FOUND   OpenCV_LIBS   OpenCV_INCLUDE_DIR   OpenCV_VERSION

现在我如何才能知道OpenCV是否使用CUDA从这个cmake文件编译?

1 个答案:

答案 0 :(得分:4)

以下是CMake变量列表,可以帮助您:

OpenCV_COMPUTE_CAPABILITIES - 编译OpenCV的计算能力,可以添加到nvcc标志中。

list(APPEND CUDA_NVCC_FLAGS ${OpenCV_COMPUTE_CAPABILITIES})

OpenCV_CUDA_VERSION - 用于构建OpenCV的CUDA工具包版本,如果在没有CUDA支持的情况下构建OpenCV,则该变量为空。您可以检查此变量:

if(OpenCV_CUDA_VERSION)
    # Have CUDA support
endif()

OpenCV_USE_CUBLAS - 如果使用CUBLAS支持构建OpenCV,则为true

OpenCV_USE_CUFFT - 如果使用CUFFT支持构建OpenCV,则为true

OpenCV_USE_NVCUVID - 如果使用NVCUVID支持构建OpenCV,则为true