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

IGHOR

Пользователи
  • Количество публикаций

    4
  • Зарегистрирован

  • Посещение

Все публикации пользователя IGHOR

  1. Работа с камерами

    Сейчас тоже пишу программу для нескольких камер и тестировал только с одной камерой. попробуйте захват делать в отдельных трэдах на каждую камеру, я именно так собирался делать
  2. Я начал изучать OpenCV недавно, очень понравилось, но я столкнулся с проблемой, захватываю видео с камеры а в результате получается видео с рассинхронным временем, оно длиннее/короче за реальное время записи. Вот пример кода: ... CvVideoWriter *cvVideoWriter=cvCreateVideoWriter("video.avi",CV_FOURCC('f', 'f', 'd', 's'),25,cvSize(320,240),1); ... while(true) { c_frame = cvQueryFrame(capture); ... cvWriteFrame(cvVideoWriter,c_frame); ... if(cvWaitKey(40)>=0)break; } в результате получается алгоритм: цикл { захват картинки обработка картинки запись видео кадра пауза 40 мс } в идеале задержка 40 мс дает ровно 25 кадров, но на захват обработку и сохранение тоже уходит время, в результате получается задержка между кадрами 40мс+обработка == неопределенное время задержки которое зависит от загрузки цпу а значит и неверно рассчитвыается FPS в результате видео записывается ровно в 25 кадров, но длительность видео не совпадает с реально записанным временем. Скажите как разобраться в этом, как обрабатывается нормализация продолжительности видео?
  3. Спасибо, такой вариант хороший, думаю если устроить Frame Skipping то ничего зависать не будет.
  4. Smorodov, спасибо, попробую, но если вычесть среднее значение а видео надо снимать много чесов подряд при том нагрузка ЦП может быть разная и от этого будет меняться задержка, неужели никто с таким не сталкивался? все примеры что нахожу в инете без учитывания такой задержки, странно в общем, буду пробовать
×