【问题标题】:OpenCV / VideoCapture / adding cameras, debugging parameters to existing camerasOpenCV / VideoCapture / 添加摄像头,调试现有摄像头的参数
【发布时间】:2015-03-01 02:11:33
【问题描述】:

我想使用 OpenCV / VideoCapture 类为各种相机(IEEE 1394、Logitech Webcam)设置曝光/增益参数。大多数关于这个主题的帖子都表明这是反复试验

难道没有办法更有条不紊地解决这个问题吗?

搜索 videocapture.cpp 不会显示 opencv-3.0-beta 中的代码。没有专门针对 videocapture 类的头文件;它必须埋在其他头文件中。

如何详细了解视频捕捉(Ubuntu 和/或 Windows)的工作原理?它如何与 O/S 中的驱动程序通信?

【问题讨论】:

    标签: windows opencv ubuntu camera drivers


    【解决方案1】:

    查看 modules/videoio/src/cap.cpp 中 cvCreateCameraCapture() 的来源,了解为什么难以预测功能。根据您的系统,可以使用多种相机 API:

    // try every possibly installed camera API
        for (int i = 0; domains[i] >= 0; i++)
        {
    #if defined(HAVE_MSMF)         || \
        defined(HAVE_TYZX)         || \
        defined(HAVE_VFW)          || \
        defined(HAVE_LIBV4L)       || \
        defined(HAVE_CAMV4L)       || \
        defined(HAVE_CAMV4L2)      || \
        defined(HAVE_VIDEOIO)      || \
        defined(HAVE_GSTREAMER)    || \
        defined(HAVE_DC1394_2)     || \
        defined(HAVE_DC1394)       || \
        defined(HAVE_CMU1394)      || \
        defined(HAVE_MIL)          || \
        defined(HAVE_QUICKTIME)    || \
        defined(HAVE_QTKIT)        || \
        defined(HAVE_UNICAP)       || \
        defined(HAVE_PVAPI)        || \
        defined(HAVE_OPENNI)       || \
        defined(HAVE_OPENNI2)      || \
        defined(HAVE_XIMEA)        || \
        defined(HAVE_AVFOUNDATION) || \
        defined(HAVE_ANDROID_NATIVE_CAMERA) || \
        defined(HAVE_GIGE_API) || \
        defined(HAVE_INTELPERC)    || \
    

    在 Windows 中,它可能会使用 VFW (cvCreateCameraCapture_VFW) 打开一个网络摄像头,如果你想调试它会导致 class CvCaptureCAM_VFW 使用 VFW 的 capCaptureSetSetup() 函数用于设置参数。在 Linux 中,您可能必须尝试在系统上使用 CMake 来查看可以链接哪些 API,但支持 GStreamer 和 XIMEA 等

    【讨论】:

    • 好的...看了一下。我知道它是如何寻找其他司机的。但是,它需要指向 CvCaptureCAM_VFW 之类的东西(例如)。这段代码在哪里?似乎通用在 DLLso 中。有些人建议使用直接为相机驱动程序编写的代码来获取您的视频/静止图像,而不是为 OpenCV 做出贡献。想法?
    猜你喜欢
    • 1970-01-01
    • 2019-11-20
    • 2017-05-28
    • 2012-06-19
    • 2018-03-31
    • 2021-03-02
    • 2014-07-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多