VIDEOIO ошибка выскакивает, когда я хочу запустить VideoCapture в opencv - PullRequest
0 голосов
/ 18 июня 2019

когда я запускаю приведенный ниже код, выскакивает окно камеры.Но после того, как я нарисовал ROI, нажав I. Получился дамп.и при повторном его запуске возникают ошибки.

Я попытался перекомпилировать OpenCV, добавив libv4l / v4l2, и я уверен, что получил правильный интерфейс камеры.

#include "particleFilterTracking.h"

#include "getInitialRect.h"

#include <iostream>

using namespace std;

int main (int argc, char** argv)
{
    //Mat img=imread("img2.jpeg");

    Mat img;

    VideoCapture video(0);

    while(1)
    {
        video>>img;
        imshow("GetInitialRect",img);
        char c= waitKey(100);
        if(c=='i')
                break;
    }

    InitialRect intialRect=InitialRect();
    Rect toTrack= intialRect.getInitialRect(img);
    ParticleFilterTrackor trackor=ParticleFilterTrackor();
    trackor.Initialize(img,toTrack);
    float maxWeight=0;

    while(1)
    {
        video>>img;
        int t=trackor.ColorParticleTracking(img,toTrack, maxWeight);
        cout<<t<<"  "<<maxWeight<<endl;
        rectangle(img,toTrack,Scalar(10,10,200),5);
        imshow("img",img);
        char c= waitKey(100);
        if(c=='q')
                break;
    }

    return 0;
}

Вот ошибки, которые я получил до сих пор:

(процесс: 8010): GStreamer-CRITICAL **: 10: 34: 36.300: gst_element_get_state: утверждение 'GST_IS_ELEMENT(элемент) 'не удалось libv4l2: ошибка установки pixformat: устройство или ресурс заняты VIDEOIO ERROR: libv4l не удалось ioctl S_FMT libv4l2: ошибка установлена ​​pixformat: устройство или ресурс заняты libv4l1: ошибка установки pixformat: устройство или ресурс занят VIDEOIO ERROR: libv4l не удалось ioctlVIDIOCSPICT

завершить вызов после выброса экземпляра 'cv :: Exception'
what (): OpenCV (3.4.2) /home/jinhua/opencv-3.4.2/modules/highgui/src/window.cpp: 364: ошибка: (-215: подтверждение не выполнено) size.width> 0 && size.height> 0 в функции 'imshow'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...