如果只需要使用 opencv 部分功能,可以直接安装 opencv 相应的开发组件
apt install libopencv-*-dev
CMakeLists.txt:
cmake_minimum_required (VERSION 3.0)
set(CMAKE_CXX_STANDARD 17)
project(MyTest VERSION 1.0)
find_package(OpenCV 4.0 REQUIRED COMPONENTS core imgproc calib3d highgui objdetect)
if(${OpenCV_FOUND})
include_directories(${OpenCV_INCLUDE_DIRS})
MESSAGE("OpenCV_LIBRS: ${OpenCV_LIBS}")
else()
MESSAGE(FATAL_ERROR "OpenCV not found in the system.")
endif()
#find_package(dlib 19.13)
#if(${dlib_FOUND})
# message("dlib version: ${dlib_VERSION}")
# if (NOT TARGET dlib)
# add_library(dlib INTERFACE IMPORTED GLOBAL)
# endif()
#else()
# message(FATAL_ERROR "dlib not found in the system, please install dlib")
#endif()
add_executable(tt main.cpp)
target_link_libraries(tt ${OpenCV_LIBS})
#target_link_libraries(tt dlib::dlib)
# ---=== 打印一下目录情况 ===---
get_property(dirs DIRECTORY ${CMAKE_SOURCE_DIR} PROPERTY INCLUDE_DIRECTORIES)
message("Include_dirs = ${dirs}")
main.cpp:
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
VideoCapture capture("../default.wmv");
if(!capture.isOpened()) return -1;
cout << "Width : " << capture.get(CAP_PROP_FRAME_WIDTH) << endl;
cout << "Height: " << capture.get(CAP_PROP_FRAME_HEIGHT) << endl;
cout << "Count : " << capture.get(CAP_PROP_FRAME_COUNT) << endl;
cout << "Fps : " << capture.get(CAP_PROP_FPS) << endl;
Mat frame;
while (capture.read(frame)) cout << ".";
cout << endl;
return 0;
}