我正在使用opencv与另一个库。所以如果OpenCV有CUDA,我想编译一个类。 我需要在Cmake文件中实现这一点。但我找不到任何告诉OpenCV的变量 是否有CUDA。
FindOpenCV.cmake定义了这些变量
OpenCV_FOUND OpenCV_LIBS OpenCV_INCLUDE_DIR OpenCV_VERSION
现在我如何才能知道OpenCV是否使用CUDA从这个cmake文件编译?
答案 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