Видеонаблюдение в домашних условиях

Автор: Rebel
Дата: 07.03.2006
Все фото статьи

Введение


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

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

Постановка задачи


Требования... Естественно, они определяются целями. Поэтому первейшим требованием системы видеонаблюдения является ее способность выполнять слежение за определенной территорией (предметом) в автоматическом режиме без участия человека. Следующими укажем ведение архива либо прямой трансляции снимаемого изображения по выбору владельца системы. В качестве альтернативы может быть оповещение владельца в случае принятия системой решения об инициировании тревоги. Надежность и защищенность системы, прежде всего от потенциальных недоброжелателей, в расчете на которых камера и ставится. Последние должны быть адекватными ценности получаемой информации и относятся как к самой системе физически, так и к собираемому ею материалу.

В качестве ограничивающих условий заложим в основу нашего проекта следующие принципы:

1. У нас дешевая камера, одна из простейших, что оказались в компьютерном магазине. Ведь если и она показывает вполне сносно, зачем платить больше?

2. У нас узкий Интернет-канал. Может быть даже dial-up. Иметь выделенную линию или относительно шустрый DSL модем - хорошо. Но не каждый пользователь, к сожалению, может похвастаться быстрым домашним Интернетом. А уж если вы живете в провинции, то проблема качественного Интернета, вероятно, будет для вас весьма актуальна.

3. Нам не очень хочется платить еще и за программное обеспечение. Нет, конечно, мы уважаем авторское право и не будем обращаться за помощью к крэкспайдеру, но почему бы не воспользоваться открытыми разработками инициативных программистов? А уж применение вырученным средствам найдем не менее достойное...

А что же, если, скажем, камеру купим не самую дешевую, может, мы с ней и видеоконференции устраивать будем? А что, если выделенный Интернет с безлимитным по времени тарифом уже проведен к нам? И что, если нам совсем не накладно поддержать разработчика дельной программы, честно заплатив небольшую сумму? Да ничуть это не проблема, наоборот. Если мы потратим больше денег, то наша система станет только лучше, более ли надежной, более качественной или удобной - не суть важно. Главное в том, что с минимальными затратами мы создадим вполне неплохое видеонаблюдение. А уж, исходя из персональных предпочтений и возможностей, вы сможете масштабировать собственную систему до нужных показателей.

Еще несколько слов скажем в защиту системы с минимальными затратами. Качества изображения современных камер, пусть и с дешевыми датчиками - вполне достаточно для визуального определения объектов и участников снимаемой сцены, характера их действий, а также идентификации лиц. Конечно, на удалении мелкие черты будут смазанными, но в пределах небольшого помещения (комнаты) всех показателей будет достаточно. От доступа в Интернет тоже не стоит требовать многого, поскольку нам совсем не обязательно вести передачу непрерывного видео. Чтобы убедиться, что дома все в порядке, вполне достаточно пары фотографий в минуту. Это только в голливудских фильмах грабители банков точно рассчитывают время и успевают уложиться в полминуты, чтобы выполнить умопомрачительный трюк. Реально же полуминуты хватит на то, чтобы оценить обстановку. Ну и, в конце концов, бесплатное ПО не является синонимом плохих программ. Часто бывает, что свободно распространяемые продукты ничуть не уступают по функциям многим коммерческим аналогам. Нужно отдавать себе отчет о предназначении программ и учитывать, что переплачивать за избыточный, неиспользуемый функционал - нет никакого резона.

Техническая реализация


Итак, к чему мы приходим в результате... Для построения простейшей, но вместе с тем - эффективной системы нам понадобится приобрести недорогую web-камеру, обеспечить соединение с Интернет, а также подобрать и настроить комплекс программ, которые, собственно, и будут все делать. Передача потокового видео может быть реализована, но не всегда целесообразна и оправданна, а потому будем ориентироваться на работу с отдельными кадрами, частота которых может быть настроена самим пользователем по ситуации.

Касаясь общих вопросов надежности и защищенности, отметим следующие моменты. Прежде всего, стабильным должен быть сам компьютер, к которому присоединяется камера и который осуществляет передачу данных "наружу" и прием команд для собственных программ. Стабильность подразумевает как устойчивость операционной системы, так и параметров железа. Поскольку ему придется долгое время работать без присмотра человека, тепловыделение должно находиться в разумных пределах, а охлаждение - достаточным. Ни в коем случае не должна создаваться огнеопасная обстановка. Кстати, ознакомиться с требованиями безопасности для электрических приборов будет в любом случае полезно.

Поскольку электричество в помещении с компьютером может быть предварительно выключено злоумышленником, я бы рекомендовал установить источник бесперебойного питания. Он же защитит устройства от случайных скачков напряжения в сети и предотвратит сброс системы.

Камеру необходимо устанавливать в местах, не бросающихся сразу в глаза, замаскировав ее по возможности внешними предметами. В то же время не стоит забывать и о главном ее предназначении - съемке. То бишь, маскирующие предметы не должны закрывать поле зрения видеосенсора, а сама камера должна охватывать всю намеченную сцену. Конкретного места я вам не назову, все это очень индивидуально и зависит от наполнения помещения, в котором предстоит работать.



Вариант расположения камеры наблюдения

В случае рутинной съемки с редкой частотой - нецелесообразно направлять камеру на дверные проемы, так как злоумышленник не будет надолго задерживаться в этой области и, возможно, останется незамеченным. Обратите внимание лучше на сейф, шкафчики, тумбочки, ящики стола и другие подобные места, которые могут привлечь внимание. Если же программа работает в режиме детектора движения, то в этом случае наоборот, дверной проем является отличным вариантом - миновать его никак не получится. Более того, вследствие изначального некоторого перепада освещения в проемах, настройка детектора движения для этих мест будет, вероятно, производиться немного легче.



Оставаясь в тени корпуса, камера будет давать отличную картинку освещенной сцены

Монитор рабочей станции с камерой стоит выключить для снижения заметности и энергопотребления. Корпус компьютера лучше спрятать под или за стол, диван и т.п. Хорошо бы он при этом не шумел. Индикаторы клавиатуры (Caps, Num, Scroll и другие, если есть) следует выключить, а мышку использовать старой модели, с шариком; оптическая может ярко светиться, привлекая внимание.

Конечно, мы можем обойтись и без Интернет (как частного случая какой-либо сети), но в этом случае рамки использования системы будут крайне узкими. Тут уж никакой удаленной работы. Единственное, для чего можно будет использовать такое видеонаблюдение - это для записи на локальный диск событий, происходивших перед объективом камеры за определенное время с целью дальнейшего их просмотра. Этим мы сможем закрыть лишь первое из предъявленных требований, но никак не следующие. Конечно, в определенных условиях этого будет достаточно, но мы хотим добиться большего. И в дальнейшем мы будем ориентироваться именно на связь через глобальную сеть, хотя удаленная работа с камерой возможна и при работе с локальной сетью. Локальная сеть обычно дает быстрый легкий доступ и высокую пропускную способность.

Многие программы предоставляют возможность закачки снимаемого материала через HTTP или FTP. Выбирать, конечно, пользователю, но я рекомендую второй. Не заостряя внимания на особенностях протоколов передачи данных, скажу, что FTP более надежен, и в целом более подходит для наших задач. На практике же работа с FTP не представляет существенных трудностей, и в рамках настройки под систему наблюдения - не многим отличается от HTTP.

В этом месте, должно быть, встанет вопрос: "а у меня нет FTP-сервера, где его взять?". К счастью, в настоящее время в Интернет достаточно мест, где можно разжиться вполне сносным и совершенно бесплатным хостингом. В качестве теста я зарегистрировался на одном из доменов pochta.ru, где вместе с почтовым ящиком мне предоставили место под персональную страничку объемом до 20 Мбайт. Что ж, вполне годится для наших целей. При том, что картинка с web-камеры имеет размер от 10 до 30 Кбайт, мы сможем без проблем "залить" туда несколько сотен снимков. Ну а точное их количество уже будет зависеть от вас, ваших нужд и реальностей. Если, скажем, у вас есть возможность на работе периодически заглядывать в Интернет и просматривать последние снимки, то хранить все с утра вовсе и не обязательно. Кстати, на всякий случай отмечу, что для просмотра высланных фотографий с камеры не нужно непременно залогиниваться и через довольно медленную систему доступа по HTTP (для того же pochta.ru) следовать до папки, указанной для хранения снимков. Просто выставьте доступ на чтение содержимого этой папки для гостей и вбейте путь в строке браузера - теперь снимки сможете просматривать и вы сами, и все, кому вы этот путь скажете, то бишь проверять смогут и ваши домашние, и доверенные товарищи без паролей и специального доступа к вашей почте и сайту.

Теперь вроде бы изложение общих аспектов закончили. О том, в каком магазине покупать web-камеру и как устанавливать драйверы, я рассказывать не буду. Остановимся на том, что камеру вы выбрали, подключили к настроенному компьютеру и разместили в каком-либо месте, согласно вышеприведенным рекомендациям. Перейдем, наконец, к тестированию программного обеспечения для наших нужд. Будут как коммерческие продукты (хотя бы для сравнения), так и бесплатные, наравне со свободно распространяемыми облегченными версиями платных продуктов - в большинстве случаев их возможностей должно быть нам достаточно. Отобраны были следующие программы: Willing Webcam 3.2 - платная, однако с хорошим набором функций и достаточно популярная, Dorgem 2.1.0, Webcam Plus! 1.3 Lite, Comcam 1.02c - три бесплатные программы, достаточно близкие по своим возможностям - посмотрим какая же из них лучше. Затем - Video Manager - набор из двух свободно распространяемых утилит для сокетного соединения, и VintaSoft Webcam 3.8 - хоть и платная, но очень полезная отечественная программка для работы с web-камерой.

Willing Webcam 3.2



Официальный сайт: http://www.willingsoftware.com/

Willing Webcam - отличная по своим возможностям программа. Полностью удовлетворяя нашим требованиям, она может быть применима и в гораздо более широких задачах. Интерфейс - приятный и понятный, перевод выполнен на хорошем русском языке. Есть, правда, один недостаток - программа платная. Но, право, она того стоит. Ценность получаемой информации, наверное, несравнимо выше. Я ни в коем случае не настаиваю, чтобы вы пользовались именно этой программой, но можно хотя бы попробовать - в течение 21 дня вам доступны все ее функции.

Итак, не вдаваясь в детали, опишем возможности Willing Webcam 3.2. Выбирая источник изображения, можем указать даже сетевую камеру, а не только локально подключенную, зададим параметры снимаемой картинки или видеопотока, настроим вид и качество передаваемого материала. При желании картинка может снабжаться дополнительными эффектами.

Далее можно настроить закачку по HTTP или FTP протоколам и реализованный датчик движения. Очень широки настройки как программы в целом, ее интерфейса, параметров запуска, так и конкретных отдельных пунктов меню. Возможности управления расширяются дополнительными опциями - к примеру удаленным управлением через e-mail. Вы отправляете письмо с определенным заголовком и определенного содержания на адрес, указанный Willing Webcam, и она исполняет записанную в послании команду!



Почтовые команды. Можно редактировать существующие и создавать новые

Теперь чуть подробнее о "наших" функциях. Тут будет очень важна возможность работы по расписанию. Его можно составить достаточно подробно. Скажем, с 9 часов утра до 4 вечера по понедельникам, вторникам и четвергам. И не забудьте в опциях программы выставить локальное время (московское GMT+3), а то потом будете удивляться, почему программа все делает не вовремя :).

Для заливки картинок на FTP-сервер надо предварительно установить параметры меню "Снимок". Здесь указываем путь к файлу, его имя, включаем цикл (периодичность, с которой будет производится фотографирование), задаем расписание.



Willing Webcam 3.2. Установки снимков

Весьма полезно будет использование опции "Включить последовательность". С ее помощью можно задать программе создание цепочки последовательных снимков. Если ее не применять, то картинка будет сниматься всего одна. Предыдущая будет затираться только что сделанной. Таким образом, чтобы иметь ряд снимков, сделанных за определенный период (который будет определяться циклом съемки и размером последовательности), необходимо использование именно этой опции. Затем идем в меню "FTP закачка", настраиваем соединение с сервером, записав адрес и пароль, и выставляем цикл (рекомендую синхронизировать с циклом съемки) и папку на своем компьютере, с которой будет синхронизироваться папка на удаленном сервере. Этого вполне достаточно.



Опции FTP-закачки

Теперь активируйте процессы съемки и FTP-закачки и ждите картинок на воем сервере. Прочими опциями (которые ясны без комментариев и похожи для различных пунктов меню) можно довести настройку программы до оптимального для вас состояния.

Детектор движения. Работает, вполне корректно. Если вы не хотите забивать сервер большим количеством в общем-то ненужных снимков, можете попробовать использовать данную возможность. Правда, не все тут гладко. Предварительно следует настроить детектор движения. Проблема заключается в другом. Все настройки вашего детектора будут сбиты при непостоянном освещении. И если, скажем, если вы настраивали детектор днем, то при наступлении сумерек, он, вероятно, сработает сам по себе, поскольку будет выполнено условие, адекватное движению при нормальном освещении. Таким образом, к детектору нужно подходить аккуратно, тщательно настраивать и тестировать при различных условиях. Или, если есть возможность, эти условия ему и обеспечить, то есть постоянство освещения, отсутствие случайных "раздражителей" и т.д.

Одним из недостатков программы следует, наверное, назвать не всегда корректную работу с удаленным FTP-сервером. Не всегда происходит соединение, и в результате в трансляции возникают перерывы по 15-20 минут (при частоте передачи 1 кадр в минуту). Впрочем, недостаток этот в значительный степени условный, поскольку при работе с платным хостингом подобных проблем не возникало. С другой стороны, подобного не было замечено за другими, ниже рассмотренными программами - у тех, если и случались сбои, то единичные. Поэтому ответственность разработчики Willing Webcam тоже несут. Таким образом, если вы используете узкий Интернет-канал или бесплатный хостинг, убедитесь сначала, что это программа будет работать корректно и надежно при данных условиях, а уж затем доверяйте ей слежение.

Dorgem 2.1.0



Официальный сайт: http://dorgem.sourceforge.net/

Dorgem, в отличие от предыдущей программы является open-source разработкой. Да-да, всякий грамотный пользователь, обладающий знаниями языка С++, может скачать исходники этой совсем неплохой программки и модифицировать ее по собственным нуждам: добавить дополнительные функции или исключить лишние. Скомпилируйте экзешник и работайте уже со своей программой. Если же вас все устраивает в оригинале - используйте его. Большинство необходимых нам возможностей Dorgem предоставляет. Единственное, что мне захотелось добавить - это возможность размещения текущего времени на снимке, отправляемом по FTP. Ну, уж в этом-то проблем быть не должно. Функция добавления текста (или даже картинки) в захватываемое изображение в программе имеется. Текст этот может храниться и во внешнем файле, и внутри, в переменной (strText из CaptionText.cpp). Теперь текущее системное время переведем в строку TimeToStr(Time()) и присвоим ее переменной strText - все готово! Опционально можем конвертировать и дату посредством функции DateToStr(Date()), сложить ее вместе со временем и уже итоговое значение помещать на картинку.

Со всем остальным Dorgem прекрасно справляется и сам. Забирает картинки или видеопоток с камеры с заданными установками (разрешение, качество сжатия), устанавливает связь с удаленным сервером, производит закачку туда изображений. Может как удерживать соединение до следующей отсылки, так и разрывать его. Для этих процедур программа использует указанное ей расписание, точнее временной интервал, потому что по конкретным дням или часам запускать процессы нельзя. Впрочем, опять же для наших целей данная опция - скорее избыточная, чем необходимая. Отходя от компьютера, программу можно вручную запускать, а, возвращаясь, отключать - и расписание тут, получается, не при чем.



Окно предварительного просмотра существует отдельно и может быть отключено

Кстати, при работе с закачкой файлов на сервер у меня появилось еще одно пожелание, которое можно реализовать в коде. Дело в том, что отправляемый на сервер файл все время записывается поверх предыдущего, - то есть, тут отсутствует возможность сохранения серии снимков. А исправлений нам опять вносить немного: устраиваем инкрементный счетчик, привязанный к операции отправки картинки на удаленный сервер. И теперь, перед следующим циклом соединения по FTP, к строковой переменной, хранящей название файла, задаваемого из оболочки (m_strFile из StoreFTP.cpp), прибавляем значение счетчика. Сделано. Вот бы все разработчики были такими щедрыми в отношении своих кодов! :)

Webcam Plus! 1.3 Lite



Официальный сайт: http://www.akcentplus.ru/webcam/webcamlite.html

Неплохое впечатление оставила и эта бесплатная программа. Тут, в отличие от Dorgem webcam capturer, уже предусмотрена функция вставки даты и времени снятия кадра. Правда, делается это не вставкой текста в картинку, а наложением панели с данными поверх кадра - в результате некоторая его часть оказывается невидимой. Из серьезных недостатков следует отметить лишь невозможность сохранения на сервере последовательности снимков за определенный временной интервал: "заливается" лишь одиночный кадр с заменой предыдущего, находившегося там. А поскольку здесь авторы не предоставляют исходных текстов программы, то и дополнить ее собственными расширениями не получится.

Первоначально, еще одно мое опасение вызывала относительно большая загрузка процессора при работе с WebCam Plus! Lite, поскольку при автономной долговременной работе постоянный "подогрев" процессора мог привести к неприятным последствиям. Однако этот показатель удалось значительно снизить, уменьшив количество снимаемых в секунду кадров. Но ведь этот показатель и вовсе нам не критичен, коли собираемся снимать не чаще 2 кадров в минуту. Хотя более рационально, пожалуй, было бы сделать как в Dorgem, где окно просмотра можно вообще закрыть.



Webcam Plus! 1.3 Lite надежно работает даже на слабых линиях

Все же остальное - в полном порядке. Достаточно широкие настройки, приятный и удобный в работе интерфейс. Помимо облегченной бесплатной версии, есть еще и стандартная Webcam Plus! 1.3. Основные отличия от облегченной версии состоят в возможности работы с потоком видео, а не только отдельными картинками, и работе по расписанию. Впрочем, нам вполне хватает и Lite-версии, а потому нет даже смысла обращаться к платной разработке.

Comcam 1.02c



Официальный сайт: http://www.at32.com/doc/index.htm

Следующей была рассмотрена программа с занятным названием Comedy Camera, т.е. "Веселая камера". Уж не знаю, чем оно вызвано (наверное идеей, что "приготовление картинок должно приносить радость и удовольствие", перефразируя слоган из одной известной в прошлом телепередачи). Тем не менее, в работе - все серьезно.



Оригинальный интерфейс не мешает удобству работы с программой

Неординарен интерфейс - при запуске программы отображается лишь окошко с изображением. Больше никаких загромождающих элементов. Все опции доступны при вызове из контекстного меню. Опустим ненужные нам спецэффекты. Два основных пункта, что нам понадобятся - находятся в подменю output. Это Image Settings и FTP Settings. В первом устанавливаем параметры картинки (качество, частота обновления, путь для сохранения на локальный диск), а во втором параметры удаленного доступа (адрес и порт, назначенный файл, причем можно указать абсолютный путь к папке на сервере, имя и пароль для доступа). Для FTP еще рекомендуется отметить галку "FTP to temp file first" - это предупредит проблемы одновременного доступа внешнего пользователя и самой программы во время закачки очередного файла. Кроме того, настроить добавление времени и даты в снятую картинку можно в пункте "Date and Time" из подменю "Basic Processing". Теперь базовую настройку можно считать законченной, и отметить пункт "Run" для начала закачки картинок на сервер с указанным интервалом.

Из положительных черт программы отмечу низкую загрузку процессора. А недостаток достаточно распространенный - невозможность сохранения серии снимков, только по одному, каждый следующий поверх предыдущего. Отсутствует также детектор движения, поэтому включение закачки по необходимости нельзя реализовать.

Video Manager



Официальный сайт: http://www.tdera.ru/VOICEMAN/vidcl.htm

Это - отечественная разработка, по признанию автора - ее написание вызвано очередным ограблением его машины. Так что цели, преследуемые им, схожи с нашими.



Пожелания автора программы Video Manager

Однако работает данная программа по несколько иному принципу, нежели рассмотренные выше. Тут нет возможности отправлять полученные изображения на удаленный FTP или HTTP-сервер, но зато программа соединяется с программой-сервером, установленной на удаленном компьютере. Просто установите программу-клиент на компьютер с камерой, а программу-сервер на тот компьютер, с которого желаете наблюдать за происходящим.



Video Server 0.04 дает возможность просмотра изображений с удаленной камеры

Укажите в настройках клиента ip-адрес сервера, и вы сможете получать видеоизображение с камеры. Программа имеет детектор движения, поэтому постоянно "гнать" по сети довольно большой объем информации не требуется. Активизировавшись в нужный момент, клиент известит о тревоге сервер и начнет передачу видео. При этом для тех, кому все же интересно иметь представление о происходящем, есть опция фоновой передачи. То есть, изображение с камеры все же будет передаваться серверу, но не сплошным видео, а с указанным интервалом. Вследствие передачи потока видео программа требует неплохой пропускной способности сети. Впрочем, предусмотрена и возможность сжатия захватываемого видео на лету, именно с целью уменьшения его размера. Причем варьировать можно в широких пределах (различными кодеками и частотой захватываемых кадров). Недостатком в этом случае является достаточно серьезная нагрузка на процессор. При срабатывании датчика движения записывать можно не только видео, но и отдельные кадры. Кроме того, программа может записывать и звук, поэтому целесообразно использование камеры с микрофоном. Впрочем, сама по себе функция записи звука может быть не слишком нами востребована.



Настройки детектора движения, снимков, видео

Настройки программы достаточно богаты, поковыряться с ними будет интересно для оптимизации системы, ну и, разумеется, работоспособности (это касается настроек детектора движения и соединений).

Интересна опция "скрыть программу при старте". Когда я попробовал ее в первый раз, меня несколько смутила невозможность вызвать ни окно с изображением и опциями, ни меню. Впрочем, оказалось, что если попытаться запустить программу еще раз, то ее окно станет видимым. Но не будут доступны вкладки настроек, о программе и просмотра. Для их активации восстановите видимость программы через контекстное меню. В принципе удобно и полезно для уменьшения заметности и повышения защищенности.

Video Manager (Client и Server) поддерживает различные "шкурки", которые либо поставлены вместе с программой, либо могут быть скачаны отдельно. Программа бесплатна, что не может не располагать, а лицензионное соглашение вообще занимает несколько строк:

"Video Client" лицензия.
Программа распространяется "как есть" в почти свободное пользование.

В связи с этим автор программы не несет никакой ответственности за возможный ущерб (что маловероятно) нанесенный данной программой прямо или косвенно.

Vitalii D. Sen, С.Петербург,Петергоф, 2004.


Из недостатков отмечу необходимость использования двух различных программ для налаживания трансляции, хотя в моем понимании было бы проще объединить функции клиента и сервера в одном приложении и использовать его уже по необходимости, а также не очень удобные элементы управления. В качестве премии автор дает весьма подробную справку, написанную простым, доступным языком, из которой можно узнать, как лучше сжимать видео, и что означает тот или иной пункт меню.

VintaSoft Webcam 3.8



Официальный сайт: http://www.vintasoft.com/rus/webcam-index.html

Еще одна отечественная разработка. К сожалению, платная. Хотя программа - просто прелесть! Своих денег она стоит. К тому же и не дорогая, при оплате через систему WebMoney копия обойдется вам всего в 120 рублей. За эти деньги вы получите отличный набор инструментов, с помощью которых сможете получать с камеры видеозапись или отдельные кадры, встроенный конвертер для сжатия получаемого видео одним из кодеков с целью уменьшения размера выходного файла, детектор движения для корректного определения времени записи и уведомления владельца системы наблюдения, планировщик заданий по дням, часам и даже минутам (для максимально тонкой настройки системы), возможность удаленного управления, и многое другое.



Маленький и удобный инструмент для работы с web-камерой

VintaSoft действительно нетребовательна к ресурсам, и отвечает буквально всем нашим требованиям. Тут не надо ничего выдумывать с датой - она сама будет добавляться на каждый отправляемый на сервер кадр, не надо мучаться с невозможностью сохранения последовательности снимков - это тоже предусмотрено. С помощью планировщика вы сможете четко регламентировать работу программы, а предупреждение с помощью e-mail или даже SMS вовремя известит вас о тревоге.



Опции сохранения на локальный диск

Добавьте к вышеперечисленному отличную справку, в том числе и на русском языке, техническую поддержку и получение будущих версий программы бесплатно - кажется, это лучший вариант!

Кстати, помимо собственно готовой программы Webcam, VintaSoft предлагает еще и ActiveX Control и библиотеку .NET для самостоятельной работы с камерой. Если вас все же никакая из вышеперечисленных программ по каким-то причинам не устраивает, то подобный компонент будет просто незаменим. Говорю это по собственному опыту, поскольку уже работал с VintaSoft Twain ActiveX компонентом в Delphi и никаких неудобств не испытывал. Все очень просто и эффективно. Маленькая ложка дегтя - эти компоненты стоят в три раза дороже готовой программы. Так что, если программирование не входит круг ваших интересов, а функциональности других программ - вполне достаточно, то приобретение компонентов не будет оправданным.

Заключение


При создании системы видеонаблюдения я использовал QuickCam Messenger от Logitech, купленную более года назад. Вот какие характеристики указывает для нее производитель:

Захват видео: до 640x480 пикселей,
Захват фотографий: до 640x480 пикселей,
Частота кадров: до 30 кадров в секунду (с рекомендуемыми системными требованиями),
Высококачественный КМОП (CMOS) датчик, встроенный микрофон.



Logitech QuickCam Messenger

На мой взгляд, не ахти какая камера. Когда начинал работать с нею, вообще был зол на Logitech. Дело не в заявленных показателях, а реальных. Они достаточно разнятся с паспортными. Кроме того, серьезные проблемы имеются у драйверов и программного обеспечения, поставляемых с камерой. После того, как я изложил все свои претензии, их оказалось полтора десятка, хотя большая часть относится именно к характеристикам. Тут и плохая поддержка разрешения 640*480 (похоже, это просто цифровая интерполяция оптического 320*240), и невозможность получения 30 кадров в секунду, и некорректность параметров автоматической настройки, и плохая работа с медленными процессорами и небольшим количеством оперативной памяти. Ко всему прочему - проблемы с работой в Windows 98.

Тем не менее, раз устройство рабочее, его можно приспособить, и использовать - вполне успешно. Использование фото-, а не видеорежима благоприятно сказывается на требованиях камеры, а использование альтернативных драйверов и программного обеспечения решает многие другие проблемы. Покупка подобного устройства не будет разорительной для большинства пользователей, поэтому к использованию камеры до тысячи рублей (и даже значительно дешевле) - вполне рекомендую.

Все вышеперечисленные программы достаточно нетребовательны к системным ресурсам. Исключение составляют лишь случаи кодирования видеопотока на лету. Тем не менее, для построения системы вполне годится компьютер уровня Pentium-II, Pentium-III с 256 МБ оперативной памяти. Впрочем, скорее всего базовой системой будет обычный домашний компьютер. Какой у вас есть. А вот если есть возможность выбирать, тогда можно присмотреться к указанным недорогим конфигурациям на вторичном рынке.

Работа программ с удаленными серверами проводилась с выделенным Интернет-каналом с искусственным ограничением с помощью программы NetLimiter до 10 и 5 Кбайт/с (имитация модемного соединения). Для передачи отдельных изображений, оказалось, этого более чем достаточно. Впрочем, использование dial-up, скорее всего, будет невыгодно самому пользователю.

Хостинг использовался как платный (с гарантированными параметрами), так и бесплатный. И хотя в некоторых случаях лучше использовать более надежный платный, большую часть времени бесплатные серверы предоставляли доступ не намного хуже. Целесообразность платы проверяйте в своем конкретном случае, даже если при текущем положении работать со свободными серверами невозможно, попробуйте сначала найти другого хостера или использовать иное, не столь привередливое программное обеспечение.

Созданная по вышеописанным рекомендациям и соображениям система успешно используется уже почти месяц. Большая часть этого времени была потрачена на тестирование различного программного обеспечения, определении лучшего и наиболее мне подходящего. Вполне возможно, что в вашем конкретном случае более удобным будет использование иной программы. Тем не менее, описание я постарался дать всем примерно равные и, надеюсь, вы сами сможете выбрать наилучшее. Мои же соображения следующие... Willing Webcam - неплохой вариант с широкими полномочиями, однако за деньги, причем меньшие, и у "своих" - можно приобрести другую программу - VintaSoft Webcam. Dorgem порадовал открытыми кодами с возможностью дописать программу под себя. Webcam Plus! Lite показал себя очень надежной программой даже при работе с медленным Интернетом и бесплатными серверами. Аналогичен Comcam. Из этих программ выбирайте ту, с которой вам будет удобней работать. Среди общих недостатков некоторых программ еще отмечу невозможность закачивания последовательности снимков, а это может быть неприемлемо. Video Manager в составе Video Client и Video Server отличен от остальных программ принципом работы. И если этот принцип не расходится с вашими возможностями, применяйте этот пакет.

У себя в системе оставлю пока Webcam Plus! Lite, ей можно доверять. Возможно, если соберусь и реализую предложенные переделки, то перейду на Dorgem, или VintaSoft Webcam - если оплачу истекающую триальную лицензию.

Справиться о том, что происходит дома, находясь на рабочем месте - совершенно не зазорно. Да и сложного, как вы видите, тоже ничего нет. Если интересно, не затягивайте, и устройте видеонаблюдение уже сегодня. Может, оно пригодится уже завтра? Хотя, желаю вам видеть в ваше электронное "око" только то, чего вы там увидеть ожидаете...