roboforum.ru

Технический форум по робототехнике.

Организация управления pan&tilt WiFi-камерой: Нужен совет

Организация управления pan&tilt WiFi-камерой: Нужен совет

samcov » 20 апр 2011, 21:09

Есть wifi камера с 2 степенями свободы (по горизонтали и вертикали)просмотр и управление через IntExp. Камера будет установлена на земельном участке хотелось бы сделать следующее что бы при попадании в кадр человека камера фокусировалась на нем и двигалась за человеком используя ее степень свободы. заранее благодарен.

Re: Нужен совет

yak-40 » 20 апр 2011, 22:14

samcov писал(а):Камера будет установлена на земельном участке

Каким образом камера будет подключена к интернету?

Re: Нужен совет

samcov » 21 апр 2011, 00:08

через wifi роутер

Re: Нужен совет

yak-40 » 21 апр 2011, 08:12

А к интернету-то как? Я же про это спрашивал. Через сотового оператора или как?

Re: Нужен совет

HarryStar » 21 апр 2011, 08:21

А если в кадре 2 человека? :)
Вообще задача не простая, если ее с нуля делать.
Видится мне такой алгоритм:
1) Нужно по соседним (возможно нескольким) снимкам вычислить изменившиеся участки. По-пиксельно не получится, в реальной жизни оно будет даже на статичной картинке менятся, нужно блоками небольшими и ессно с некоторой точностью.
2) Вычислить соседние движущиеся блоки и ввести понятие "объект" - это "что-то движущееся"
3) Если объект по размерам вертикально-прямоугольный то это скорее всего человек и можно начинать следить за ним.

Re: Нужен совет

RootAdmin » 21 апр 2011, 10:55

Берем ZoneMinder. http://www.zoneminder.com/ Это сервер видеонаблюдения такой. :) В смысле - софт.
В настройках ZM указываем "область детекции" на все поле зрения камеры. Чувствительность настраиваем ессно...
Пишем скрипт, который по появлению в базе данных MySQL новых записей о "событии" анализирует файл analyse.jpg (туда пишутся изменения картинки, результат детекции) и оценивет - насколько далеко "изменения" от центра. И доворачивает камеру. Скрипт "доворота" (управление движением) - готовый - или пишется для редких камер.
Если взять обычную FosCam - проблем меньше, скрипты есть готовые.
Времени нету прикрутить это к ZM - сам давно хочу...
Вижу несколько проблем - Надо для разных положений камеры в режиме "патруль" доработать детекцию, чтобы "базовый" образ хранился для каждого положения.

Модель камеры какая? Есть доки по API управления положением? Есть ли возможность установить камеру в определенное положение?
Добавлю: объем допиливания серьезно падает если использовать
zmtrack.pl � This script is used to manage the experimental motion tracking feature. It is responsible for detecting that an alarm is taking place and moving the camera to point to the alarmed location, and then subsequently returning it to a defined standby location. As well as moving the camera it also controls when motion detection is suspended and restored so that the action of the camera tracking does not trigger endless further alarms which are not justified.

Еще через минуту: А пожалуй попробую прикрутить на один из серверов...

Re: Нужен совет

RootAdmin » 22 апр 2011, 16:57

Попробовал, изучаю скрипт на предмет "почему не работает". Через интерфейс ZM камера отлично крутится, теперь надо заставить отслеживать... Если получится - напишу инструкцию.
UPD: похоже топикстартеру оно уже неинтересно.
Все равно задача интересная, но пока абстрагируюсь от задачи "определить что движущийся объект - человек" и покопаюсь.

Добавлено спустя 2 часа 14 минут 26 секунд:
Покурил доки от камер в наличии. Выяснил что в них не описана возможность задавать координаты произвольно. Попробую сэмулировать...

Re: Нужен совет

avr123.nm.ru » 22 апр 2011, 20:43

RootAdmin писал(а):Через интерфейс ZM камера отлично крутится,
а команды камере можно на COM порт вывести ? Как ?

RootAdmin писал(а):абстрагируюсь от задачи "определить что движущийся объект - человек"
слышал что за человека принимают движущийся прямоугольник :D

Мне очень интересна эта тема. Жду материалов.

Re: Нужен совет

samcov » 23 апр 2011, 13:01

Yak-40 - подключение к интернету будет через домолинк.
HarryStar - хотелось бы отработать алгоритм для начала на одном человеке.
RootAdmin - спасибо за ссылку но с английским плоховато, напишешь инструкцию будем признательны.

Re: Нужен совет

RootAdmin » 23 апр 2011, 14:26

В соседней теме писал. [url]post204964.html#p204964[/url]
То есть посылку (длиной до 256) вставляем вместе с параметрами (номер порта, скорость) вставляем в POST запрос к камере. Это НЕ команды камере, это то, что камера может передать подключенному устройству.
Пример: http://IP/comm_write.cgi?port=0&baud=13 ... in&pwd=***
где
&baud=13 : скорость порта 9600 из таблицы
&port=0 :первый порт устройства (может быть и 2, 4 не видел)
&bytes=10 :количество байт в посылке, до 256
&data=1234abc%5E:! :посылка, байты кодируются url code, закодирована строка "1234abc^:!" (содержимое кавычек) как пример
&user=admin&pwd=*** :логин-пароль, если стоит. (с правами пользователя на устройстве некоторые камеры не позволяют метод comm_write.cgi)
Если строку вставить хоть в адресную браузера - камера выдаст в порт то, что передали.
Вот как принять из порта - не знаю...

Продолжаю экспериментировать, так как камера у меня простая (на точках стоят и подороже, с более богатым API, но снять не получится для экспериментов) пишу скрипт, который должен преобразовывать координаты в "шаги" перемещения по горизонтали-вертикали.
На входе - центр "области тревоги" в виде х-у координаты кадра, генерируется ZM. В простом случае камере передаются разница между этими координатами и центром кадра с соответствующим знаком. И она поворачивается.
Я попробую груюо поворачивать камеру, подавая нужное количество "Шагов".
Последний раз редактировалось RootAdmin 23 апр 2011, 14:33, всего редактировалось 1 раз.

Re: Нужен совет

=DeaD= » 23 апр 2011, 14:30

До кучи - тут человек прикрутил камеру к роботу :)
и тоже расстроился, что нету comm_read.cgi :(

http://vapps.co.cc/en/?p=6

Re: Нужен совет

RootAdmin » 23 апр 2011, 14:34

Dead, благодарю. Эх, жаль, сам хотел сделать подобную тележку. :)
Вообще - есть возможность экспериментировать, так как я на одной камере спалил сенсор - получил подопытного - и сейчас разбираю прошивку. Задача один - пропустить инициализацию самой камеры, а то без нее не грузится.
ЗЫ. Порт на клонах на передачу точно работает - проверил тупо светодиодом. :) На работе почти нет средств разработки...

Re: Нужен совет

samcov » 23 апр 2011, 14:42

Камера проигрывается и управляется в Int.exp. может как то подойти к решению вопроса через html редактор (в технических вопросах не силен извиняйте если спросил глупость)

Re: Нужен совет

RootAdmin » 23 апр 2011, 15:08

Ну не только в IE...
Из php получить данные из порта возможно, далее обработать на веб-сервере камеры и вывести в удобном виде.
Да хоть свою программу написать на сях. Как раз читаю про разборку фоскамовского формата прошивки. :)

Добавлено спустя 16 минут 55 секунд:
http://www.vkartinke.ru/stati/foscam/lomaem-foscam-fi8908w

Re: Нужен совет

avr123.nm.ru » 24 апр 2011, 01:38

Может там у ребят спросить ? http://www.foscam.ru/chastye-voprosy-faq/


Rambler\'s Top100 Mail.ru counter