虚位以待(AD)
虚位以待(AD)
首页 > 脚本专栏 > linux shell > Linux下利用Opencv打开笔记本摄像头问题

Linux下利用Opencv打开笔记本摄像头问题
类别:linux shell   作者:码皇   来源:互联网   点击:

这篇文章主要介绍了Linux下利用Opencv打开笔记本摄像头问题,需要的朋友可以参考下

新建test文件夹,文件夹存在test.cppCMakeLists.txttest.cpp#include <iostream>

    #include <string>#include <sstream>#include <opencv2/core.hpp>#include <opencv2/highgui.hpp>#include <opencv2/videoio.hpp> using namespace cv;
    using namespace std;
    const char* keys = {
    "{
    help h usage ? | | print this message}
    " "{
    @video | | Video file, if not defined try to use webcamera}
    "}
    ;
    int main(int argc, const char** argv){
    CommandLineParser parser(argc, argv, keys);
    parser.about("Reading a video and camera v1.0.0");
    if (parser.has("help")) {
    parser.printMessage();
    return 0;
    }
    String videoFile = parser.get<String>(0);
    if (!parser.check()) {
    parser.printErrors();
    return 0;
    }
    VideoCapture cap;
    if (videoFile != "") {
    cap.open(videoFile);
    // read a video file }
    else {
    cap.open(0);
    // read the default caera }
    if (!cap.isOpened())// check if we succeeded {
    return -1;
    }
    namedWindow("Video", 1);
    while (1) {
    Mat frame;
    cap >> frame;
    // get a new frame from camera imshow("Video", frame);
    if (waitKey(30) >= 0) break;
    }
    // Release the camera or video file cap.release();
    return 0;
    }

CMakeLists.txt

    project(test)cmake_minimum_required(VERSION 2.8.7)# option to enable OpenMP;
    only relevant for the KCF version with the# VOT scale estimationoption(WITH_OPENMP "Enable OpenMP" OFF)if(WITH_OPENMP) find_package(OpenMP REQUIRED) set(CMAKE_CXX_FLAGS "${
    CMAKE_CXX_FLAGS}
    ${
    OpenMP_CXX_FLAGS}
    ") set(CMAKE_EXE_LINKER_FLAGS "${
    CMAKE_EXE_LINKER_FLAGS}
    ${
    OpenMP_EXE_LINKER_FLAGS}
    ")endif(WITH_OPENMP)# add c++11 supportif(CMAKE_COMPILER_IS_GNUCC) ADD_DEFINITIONS ( -std=c++11 )endif(CMAKE_COMPILER_IS_GNUCC)# add OpenCVset(OPENCV_DIR_HINT "")if(WIN32) get_filename_component(OPENCV_DIR_PLATFORM $ENV{
    OPENCV_DIR}
    DIRECTORY) get_filename_component(OPENCV_DIR_HINT ${
    OPENCV_DIR_PLATFORM}
    DIRECTORY)endif(WIN32)set(OpenCV_STATIC OFF)find_package(OpenCV REQUIRED HINTS ${
    OPENCV_DIR_HINT}
    )

编译过程:

    > cd test> g++ test.cpp -o test `pkg-config --cflags --libs opencv`> ./test

总结

以上所述是小编给大家介绍的Linux下利用Opencv打开笔记本摄像头问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关热词搜索: linux opencv 笔记本摄像头