Перейти к содержимому
Compvision.ru
Wade

Зависает веб камера при долгой работе с OpenCv

Recommended Posts

Добрый вечер. 

У меня проблема с opencv+linux+logitech c920

Имеется софт, который работает с вебкамерой. Камера постоянна включена( logitech920) Программа на Qt, операционка Ubuntu 14.04, opencv 3.0

Программа показывает постоянно изображение и может применять фильтр opengl к получившейся картинке.

И я столкнулся с такой проблемой - при долгой работе или при перезагрузке после работы - камера пропадает из системы.

Т.е. работает программа, показывает картинку, перезагружаем, бывает показывает, а бывает нет. Либо просто долго работает, и зависает

В lsusb камеры нет. 

Помогает только либо выдергивание камеры из юсб, либо выключение компьютера и отрубание питания.

Работает в режиме 1280 на 720

Появляется в основном на клиентских терминалах - там стоят матплаты на свежем чипсете h81.
У меня на машине разработчика более старая мать и таких проблем я не наблюдал, пока не попало в боевой режим клиентам
Пробывал уже разные варианты и usb2 и usb3. И плату расширения usb3 с отдельным питанием. 
Итог один и тот же - камера отваливается наглухо либо после перезагрузки рандомно, либо после длительной работы.

Может быть кто сталкивался? В какую сторону копать? 
Поможет ли умешение разрешения до 640 на 480, например?
Какие еще возможны варианты?

ПС камер и терминалов попробовал штук 20 - везде такие симптомы

Заранее спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня 920 логитеки работают прекрасно, и по одиночке и в паре, и в Win и в Ubuntu (сейчас 14.04, но и до этого проблем не было).

На материнке есть UBS 3.0 (на чипсете Etron), так вот с ними почти все глючит.

Поэтому покупал отдельную плату расширения на чипсете NEC Renesas (на самом деле для кинекта).

С родными USB 2.0 и с NEC Renessas никогда никаких проблем не было.

Насколько я понимаю, их родной режим 640х480, остальное цифровой зум, да они у меня и включаются все время в 640х480, по умолчанию.

Изменено пользователем Smorodov

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня 920 логитеки работают прекрасно, и по одиночке и в паре, и в Win и в Ubuntu (сейчас 14.04, но и до этого проблем не было).

В паре вы стереокамеру из них собирали? А как синхронизировали? Ведь по USB задержки офигенные получаются, вплоть до 100+ms...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нет стерео на них не делал, я проект панорамного видео из трех камер делал, для того и покупал.

Там задержки на глаз не видны были.

Изменено пользователем Smorodov

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нет стерео на них не делал, я проект панорамного видео из трех камер делал, для того и покупал.

Там задержки на глаз не видны были.

И какие результаты проекта, если не секрет? Демо-видео случаем нету? В реалтайм панораме тоже проблемы с синхронизацией видео остро встают, особенно если склеивать что-то аутдорное.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Друзья, с моим вопросом может кто-нибудь что подсказать?)

Я уже поставил и на отдельную pci-express usb плату espada. Результат тот же самый. Перезагрузки не выдерживает(((

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

И какие результаты проекта, если не секрет? Демо-видео случаем нету? В реалтайм панораме тоже проблемы с синхронизацией видео остро встают, особенно если склеивать что-то аутдорное.

Нашел один скрин, прикрепил, примерно так и работало, в реалтайме, никаких тормозов не наблюдал. Проект под VS + Qt, лень собирать.

Шов видно, но это из за не отключенной авто-экспозиции камер.

result.jpg

Друзья, с моим вопросом может кто-нибудь что подсказать?)

Я уже поставил и на отдельную pci-express usb плату espada. Результат тот же самый. Перезагрузки не выдерживает(((

Может код приведете, а то так не достаточно информации.

Например со скайп такие проблемы есть ?

Изменено пользователем Smorodov

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Может код приведете, а то так не достаточно информации.

Например со скайп такие проблемы есть ?

void FrameShow::run()
{
 
 
 
    bool open = cap.open(-1);
 
 
    if ((cap.isOpened())&&(open))
    {
 
        cap.set(cv::CAP_PROP_FRAME_WIDTH,1280);
        cap.set(cv::CAP_PROP_FRAME_HEIGHT,720);
 
        qDebug()<<cap.get(cv::CAP_PROP_FRAME_WIDTH);
        qDebug()<<cap.get(cv::CAP_PROP_FRAME_HEIGHT);
 
 
 
        for(;;)
        {
            cap >> img;
            //cv::cvtColor(img,gray,cv::COLOR_RGB2GRAY);
 
            //perspMat = cv::getPerspectiveTransform(p[0],p[1]);
 
            QImage res = QImage((const unsigned char*)(img.data),img.cols,img.rows,img.step,QImage::Format_RGB888);
            emit newImage(res);
        }
    }
 
}

Открывается камера и постоянно идет вызов передается картинка в слот

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нашел один скрин, прикрепил, примерно так и работало, в реалтайме, никаких тормозов не наблюдал. Проект под VS + Qt, лень собирать.

Шов видно, но это из за не отключенной авто-экспозиции камер.

Любопытно. А эффект паралакса у вас не наблюдался при сшивке с трех камер? Или камеры были близко друг к другу? FOV я так понимаю в районе 100-110 градусов?
Ну и насчет динамических швов тоже инетересно: насколько стабильно находились правильные швы? А то я по моему еще не встречал ни одного алгоритма с художественными швами, которые бы стабильно правильно находились)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Изменено пользователем Smorodov

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Wade А если без Qt, те же проблемы ?

Есть большое подозрение на утечку памяти или проблемы с потоками.

А куда именно копать? Камеру можно завесить каким то рандомным набором байт?
Просто по утечки - камера не работает сразу после перезагрузки - там и память то не кушается.

Такое ощущение, что при внезапном завершении  программы зависает камера. 
Причем это случается на свежих процессорах  intel g3250,а на моем core i7 или на соседнем старом пентиуме такого нет
Толи уменьшить скорость обработки кадров, то ли как то завершать работу с камерой?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня тоже core-i7, и тоже нет проблем.

Может быть проблемы с новыми чипсетами/драйверами.

Попробуйте стандартные программы, работающие с камерами, видеоредакторы, скайп, программу идущую вместе с камерой ...

Если и с ними то же самое, то точно проблема в системе, а не в программе.

Изменено пользователем Smorodov

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Топикстартер, а логи кто выкладывать будет?

dmesg, cat /var/log/syslog ?

Что пишет в момент слетания камеры. Пришли бы на ночь поставили, и смотрели по удаленке.

У меня похожая Logitech снимала в 1280 круглосуточно в паре с ZoneMinder на openSUSE 11.4, если память не изменяет. "Ни единого разрыва". Может ядро хреновое, поставьте постарее. В убунтах оно через раз. То сеть отвалится, то ещё какая железяка на ноуте. Хотя вроде 14.04, стабильный релиз... Поэтому без нужды его вообще не обновляю.
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×