我正在将 opencv 与另一个库一起使用。所以如果 OpenCV 有 CUDA,我想编译一个类。我需要在 Cmake 文件中实现这一点。但我找不到任何变量来告诉 OpenCV 是否有 CUDA。
FindOpenCV.cmake 定义了这些变量
OpenCV_FOUND OpenCV_LIBS OpenCV_INCLUDE_DIR OpenCV_VERSION
现在我怎样才能从这个 cmake 文件中找出 OpenCV 是否使用 CUDA 编译?
这是 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
- 如果 OpenCV 是使用 CUBLAS 支持构建的,则为真
OpenCV_USE_CUFFT
- 如果 OpenCV 是使用 CUFFT 支持构建的,则为 true
OpenCV_USE_NVCUVID
- 如果 OpenCV 是使用 NVCUVID 支持构建的,则为真