1. CMakeLists.txt直接使用类似${OpenCV_INCLUDE_DIRS}、${OpenCV_LIB_DIR}这样的表述的原因。
find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
link_directories(${OpenCV_LIB_DIR})
find_package(OpenCV REQUIRED)会在系统中找到OpenCVConfig.cmake,该文件定义了OpenCV_INCLUDE_DIRS和OpenCV_LIB_DIR、OpenCV_LIBS 等变量,因而可以使用include_directories和target_link_libraries来访问这两个变量。