Захват потока с видеокамеры

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
Timid
постоялец
Сообщения: 290
Зарегистрирован: 21.11.2007 20:33:15

Захват потока с видеокамеры

Сообщение Timid »

Стоит задача организовать обработку видеопотока с USB вебкамеры для покадрового анализа изображения (определение движения и т.д.).
Существуют ли какие-нибудь библиотеки для получения данных с камеры в виде набора изображений.

Ближайший аналог - TVideoCapture для Delphi не подходит.

Подскажите, ПЛЗ
скалогрыз
долгожитель
Сообщения: 1804
Зарегистрирован: 03.09.2008 02:36:48

Сообщение скалогрыз »

DirectX (DirectShow), Windows Multimedia?
Timid
постоялец
Сообщения: 290
Зарегистрирован: 21.11.2007 20:33:15

Сообщение Timid »

2 скалогрыз, мерси, но не то.

Я уже нашел дельфовый DSPack, буду копать его. Но это под Win.

Нужно под Linux/BSD, чтобы реализовать специализированный "черный ящик" - захват видео, обработка, трансляция.

Есть еще варианты?
Аватара пользователя
FedeX
постоялец
Сообщения: 422
Зарегистрирован: 27.03.2006 09:25:34
Откуда: украина, житомир

Сообщение FedeX »

DSPack как раз и использует DirectShow.
А насчёт чёрного ящика, то тут только всё самому надо будет крутить - под Вин DirectShow, под лин Video For Linux:
http://v4l2spec.bytesex.org/spec-single/v4l2.html
Timid
постоялец
Сообщения: 290
Зарегистрирован: 21.11.2007 20:33:15

Сообщение Timid »

ну ясно, что не кроссплаторм. Хм, можно же библиотеку сделать. Попробую.
Logo
постоялец
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Сообщение Logo »

Timid писал(а):2 скалогрыз, мерси, но не то.

Я уже нашел дельфовый DSPack, буду копать его. Но это под Win.

Нужно под Linux/BSD, чтобы реализовать специализированный "черный ящик" - захват видео, обработка, трансляция.

Есть еще варианты?

mencoder или mplayer сбрасываешь в файл, а потом обрабатываешь своей программой под личные нужды.

Добавлено спустя 1 минуту 8 секунд:
Какой девайс на захвате?
Timid
постоялец
Сообщения: 290
Зарегистрирован: 21.11.2007 20:33:15

Сообщение Timid »

USB веб-камера Logitech. Хотя это не важно, важно то, что графическая оболочка не должна задействоваться. Т.е. mplayer и иже с ними не подходят.

А файл мне не нужен, нужен поток в реальном времени (т.е. с временем реакции -> к 0)
Logo
постоялец
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Сообщение Logo »

MPlayer и MenCoder это консольные приложения. MPlayer проигрывает на FrameBuffer, но есть обверти для GUI. Для захвата и записи ну только консоль
Timid
постоялец
Сообщения: 290
Зарегистрирован: 21.11.2007 20:33:15

Сообщение Timid »

Ок, ссылку на пример использования можно? Если не секрет.
Logo
постоялец
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Сообщение Logo »

Timid писал(а):Ок, ссылку на пример использования можно? Если не секрет.

Позже выложу, так-как по памяти могу могу дать не то.
Timid
постоялец
Сообщения: 290
Зарегистрирован: 21.11.2007 20:33:15

Сообщение Timid »

Мерсибо еще раз, буду ждать ссылку.
Аватара пользователя
carrots
постоялец
Сообщения: 138
Зарегистрирован: 28.03.2008 01:13:02

Сообщение carrots »

Timid писал(а):Стоит задача организовать обработку видеопотока с USB вебкамеры для покадрового анализа изображения (определение движения и т.д.).
Существуют ли какие-нибудь библиотеки для получения данных с камеры в виде набора изображений.

Ближайший аналог - TVideoCapture для Delphi не подходит.

Подскажите, ПЛЗ

Если вам нужно брать кадры сразу в оперативную память и там обрабатывать – используйте ffmpeg, но я вам так делать не советую, с таким вариантом вы больше провозитесь, а результат будет менее выгодным (вы будите терять кадры или перегружать оперативную память).
Легче всего использовать mencoder, и записывать каждый кадр отдельным рисунком, проанализированные рисунки удалять.
Это можно сделать методами fpc в консоле при помощи tprocess.

Подробная документация к mencoder и mplayer на русском языке:
http://www.mplayerhq.hu/DOCS/man/ru/mplayer.1.html
http://www.mplayerhq.hu/DOCS/HTML-singl ... layer.html
Здесь есть подробное описание, как, что делается и примеры.
Logo
постоялец
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Сообщение Logo »

Carrots этим занимался и занимается, поэтому я попросил его ответить. Вообще-то, он в этом "графомонстр" :)
Timid
постоялец
Сообщения: 290
Зарегистрирован: 21.11.2007 20:33:15

Сообщение Timid »

Ну, нет слов,.. какое горячее спасибо! :)

Буду изучать.

Кстати, Carrots, а какой проект реализуется сейчас, если не секрет?
Steve
незнакомец
Сообщения: 5
Зарегистрирован: 24.11.2009 19:58:37

Сообщение Steve »

Для Windows есть хороший модуль - http://wiki.lazarus.freepascal.org/SysRec. К этой библиотеки есть пример, правда запускать надо без отладчика - GDB глючит. ФТП под паролем правда. Если надо - могу выложить. Но сам в сети находил где-то.

Для Linux
http://wiki.lazarus.freepascal.org/5dpo
компонент TSdpoVideo4L2, работает с UVC (USB video class)
TSdpoVideo4L2 allows the control of UVC compliant USB cameras, tested with:

* Logitech Quickcam Orbit/Sphere AF
* Logitech Quickcam Pro 9000
* Logitech Quickcam Ultra Vision
* Acer CrystalEye webcam (Acer Aspire One)
* Imaging Source industrial and astronomy cameras
Ответить