мации стало возможным в основном за счет использования трехмерных моделей корпусов используемых компонентов.
В заключение следует отметить, что разработанные программные средства позволяют в значительной мере сократить время пользователя на описание информации о компоненте путем применения автоматизированных процедур использования имеющейся информации и создания новой, что выделит большее количество времени для непосредственного моделирования электронного устройства. Использование в системе трехмерных моделей позволит осуществить в системе проекти-
рования получение всего необходимого пакета документации на проект без применения дополнительных систем, что невозможно в существующих САП Р (как правило, совместно используются радиоэлектронная и конструкторская САПР).
Реализация указанных принципов позволяет создать подсистему информационного обеспечения принципиально нового уровня, в которой практически полностью исключена необходимость ручной прорисовки изображений, контролируется правильность вводимых данных, исключается повторный ввод информации и значительно уменьшены объемы хранимых данных.
СПИСОК ЛИТЕРАТУРЫ
1. Тихомиров Ю.В. Microsoft SQL Sever 7.0: разработка приложений. СПб.: БХВ-Петербург, 2000.
2. Мешков А.В., Тихомиров Ю.В. Visual С + + и MFC. СПб.: БХВ-Петербург, 2002.
3. Вирт Н. Алгоритмы и структуры данных: Пер. с англ. 2-е изд. СПб.: Невский диалект, 2001.
4. Кнут Д. Искусство программирования. Т. 4. Вып. 4. Генерация всех деревьев. История комбинаторной генерации. М.: Вильяме, 2007.
УДК 004.932.2
A.B. Близнюк
СИСТЕМА ВИДЕОНАБЛЮДЕНИЯ С ОБЩИМ СЕРВЕРОМ
В СЕТИ ИНТЕРНЕТ
Системы видеонаблюдения — неотъемлемая часть охранных систем государственных и частных объектов. По данным многих экономических изданий рынок систем видеонаблюдения испытывает большой рост. Системы видеонаблюдения сегодня состоят из множества модулей, в том числе решающих наукоемкие трудноформализуемые задачи, такие, как обработка изображений (информации, поступающей с видеокамер), хранение и передача больших объемов данных [1]. Результатом обработки видеоизображения могутбытьлибо видоизмененные изображения, либо другая информация, которая представляет определенную ценность (распознавание образов, лиц, текста) [2].
Системы видеонаблюдения
Существующие системы видеонаблюдения.
Рассмотрим имеющиеся предложения производителей и поставщиков систем видеонаблюдения. Сложившаяся модельсистемы видеонаблюдения представляет собой связку "видеокамеры — сервер — дисплей" (рис. 1). Это втом или ином виде локально-замкнутая система, где с видеокамер данные попадают на сервер и, используя дисплей, специальный работник — оператор "следит" за происходящим [1]. Данные могут обрабатываться, записываться и далее при необходимости использоваться.
Перечислим недостатки такой модели системы видеонаблюдения.
Рис. 1. Сложившаяся модель системы видеонаблюдения
1. Высокая стоимость. Многие частные лица не могут позволить себе слишком дорогую систему видеонаблюдения.
2. Сложность установки систем. Для установки такой системы видеонаблюления требуются сложные монтажно-технические работы, что не обойдется без вызова мастера [11.
3. Что особенно важно — данные системы тем или иным образом локально замкнуты, доступ к ним есть только у определенного работника (оператора).
Новая модель системы видеонаблюдения. Один из способов решения проблемы — уменьшение стоимости установочного пакета видеонаблюдения. Еше раз вернемся к рассмотрению связки видеокамера — сервер — дисплей.
Удешевить предложение можно было бы исключением каких-либо составляющих комплекта. Что если избавиться от самого дорогого элемента — сервера? Разместить единый сервер в Интернете для всех клиентов, а клиентам предлагать установочные пакеты, состоящие только из видеокамер. Нужда в дисплее также отпадет,
данные можно будет просмотреть с любого компьютера, подключенного к Интернету.
Итак, новая, кардинально отличающаяся схема видеонаблюдения выглядит следующим образом: серверный кластер расположен в сети Интернет, к нему подсоединяются через каналы Интернета видеокамеры, данные с которых идут на сервер. Клиент имеет возможность просматривать записанные данные с помощью любого компьютера, подсоединенного к Интернету (рис. 2).
Анализируя вышеизложенное, можно найти ряд преимуществ предложенной системы перед существующими сегодня на рынке, как для новых клиентов, так и для тех, которые могли бы модернизировать уже работающие системы видеонаблюдения:
1. Приемлемая стоимость. Пользователю необходимо будет приобрести только I Р-видеока-меру и подключить ее к сети Интернет. При этом наиболее затратный элемент системы — видео-сервер — будет представлен в сети. Пользователю останется зайти на определенный сайт, подключить камеру и начать пользоваться системой видеонаблюдения.
2. Простота установки. Пользователю не нужно производить какие-то сложные монтажные работы. Необходимо только подключить видеокамеру к Интернету.
3. Система видеонаблюдения становится доступной всем заинтересованным пользователям. Просматривать записанные данные они смогут с любого компьютера, подключенного к сети Интернет, влюбое удобное для них время.
Резюмируем вышеизложенное. Представленные на рынке системы видеонаблюдения изначально были ориентированы на охрану крупных объектов и слабо приспособлены для применения
Интернет
Рис. 2. Система вилеонаблюдения с общим сервером в сети Интернет
в бытовой сфере и малом бизнесе вследствие высокой стоимости и сложности в обслуживании. Обычная модель работы системы видеонаблюдения состоит в следующем: с множества камер (многие из которых еще аналоговые) поступает сигнал на единый пультуправления, и если у конечного пользователя возникает потребность в просмотре данных, ему нужно получить разрешение для физического доступа на этот пульт [ 1 ]. Случаи организации удаленного доступа на пульт наблюдения достаточно редки и не всегда возможны. Другая проблема существующих решений — зависимость от конкретного поставщика. Например, если система поддерживает некоторое количество аналоговых камер, то подключить 1Р-ка-меру весьма проблематично (вплоть до закупки новой системы). Еще одна проблема существующих решений состоит в большой стоимости эксплуатационных затрат.
Предлагаемое нами решение — предоставление единого интерфейса работы видеорегистраторами как со стороны камер (USB, IP. WiFi), так и со стороны клиента через WEB-интерфейс, а также единого хранилища данных. При таком подходе необходимо решить проблему масштабирования системы, поскольку нужно обеспечить одновременную работу множества пользователей. Решением данной проблемы станет построение системы на базе набора сервисов. В этом случаем можно переместить вычисления со стороны клиента в сторону внешнего распределенного видеосервера. А пользователю понадобится иметь только WEB-браузер, доступный на всех современных ОС. Таким образом, пользователь получит удобный интерфейс для доступа к результатам работы видеосервиса из любой географической точки мира.
Конкурентные решения
Нельзя сказать, что не существует систем, позволяющих "наблюдать" на расстоянии, но им присущ ряд недостатков. Чтобы данные с сервера можно было просматривать в Интернете, его делают как WEB-сервер, что означает приобретение "внешнего" IP-адреса. Кроме того, любой специалист по администрированию сетей постарается избежать присвоению серверу внешних I Р-адресов из-за угроз безопасности.
Из наиболее близких конкурентных решений можно выделить Pentabox [4] и Netavis |3|. Pentabox предлагает установку камеры, подклю-
ченной к их сети, позволяющую из любого места, где есть компьютер с доступом в Интернет, просматривать эту камеру. При этом данные с камеры нигде не хранятся. предлагает
сервер с подключаемыми к нему 1Р-камерами и клиентским приложением, позволяющим подсоединяться к серверу и просматривать записанное [3]. Но опять же это упирается в покупку камеры и сервера.
Особенности модели системы наблюдения с сервером в сети Интернет
Некоторые особенности такой системы видеонаблюдения:
возможность получать доступ к видеокамере и записанным данным с любого компьютера, у которого есть выход в Интернет;
не требуется специального приложения, чтобы просматривать данные через компьютер. Для этого нужен \УЕВ-браузер, который есть на любом компьютере;
общий сервер находится в сети Интернет, на охраняемом объекте имеются лишь видеокамеры;
пользователь может делиться записанными данными с другими пользователями системы:
пользователи могут создавать группы с разграничениями прав;
система может производить поиск объектов по имеющимся записанным данным.
Приведем несколько возможных сценариев использования такой системы видеонаблюдения.
1. Пользователь покупает 1Р-видеокамеру, подсоединяет ее к Интернету, на сайте создает себе учетную запись. Видеокамера появляется в списке его видеокамер. Он может ею управлять, просматривать записи.
2. У пользователя есть работающая система видеонаблюдения. Он хочет просматривать записанные данные не только непосредственно в физической близости с сервером, но и из любого другого места, где есть компьютер, подсоединенный к Интернету. Он устанавливает для этого специальное программное обеспечение на уже работающий сервер, регистрируется на сайте. В списке его видеокамер появляются все видеокамеры, подключенные к системе пользователя. Он может просматривать их, управлять ими.
3. Пользователь хочет установить видеонаблюдение там, где нет широкополосного выхода в Интернет. Он покупает мобильный телефон
с высокоскоростной поддержкой Интернета и со встроенной видеокамерой, устанавливает программное обеспечение на телефон и телефон там, где нужно производить видеонаблюдение. После этого на сайте, как и в других случаях, он видит подключенную видеокамеру и может просматривать записанное.
Реализация системы видеонаблюдения
Описание системы. Схема на рис. 3 представ-ляетлишь одну из возможных реализаций, когда 1Р-видеокамеры подсоединены к Интернету и отправляют видео на сервер.
Вместо I Р-камеры может быть любая сущность, способная принимать и передавать видео на сервер [ I ]. Это могут быть уже работающие системы видеонаблюдения, когда сервер такой системы ретранслирует данные на обший сервер, либо мобильные телефоны, подключенные к Интернету и имеющие видеокамеру.
Серверная часть представляет собой \VEB-приложение. Пользователь может создать на сайте учетную запись со своей личной страницей, где перечислены принадлежащие ему видеокамеры, подключенные к системе. Выбрав любую из видеокамер, пользователь может: просмотреть записанные данные; создать группу пользователей; установить разграничение прав на администрирование группы; добавить в эту группу видеока-
меры; добавить других участников; добавить в свою фуппу свои видеокамеры, а также разрешить другим участникам добавлять свои.
Пользователи могут делиться друг с другом видеокамерами, производить поиск объектов по имеющимся записанным данным.
Прототип системы. Если говорить о технических аспектах реализации проекта, то стоит отметить, что за прошедшее полугодие был создан прототип системы. Он состоит из серверной части и клиентского приложения и создан с использованием технологий Microsoft. Все основывается Ha.NET Framework 3.5 (5). Видео с камеры получается с помощью DirectShow [6], далее кадр за кадром отправляется на сервер с помощью WCF [7], где сохраняется в базу данных SQL Server 2008 [8] с помощью LINQ. Для просмотра данных с сервера используется Silverlight 2.0 [9].
Обусловленность выбора технологий. Поскольку пользователи привыкли к богатому графическому интерфейсу настольных компьютеров, необходимо и WEB-интерфейс системы сделать максимально удобным, дружелюбным и привычным для пользователя (9]. В качестве решения предлагается Silverlight 2.0, так как она предоставляет пользователю богатый графический интерфейс, поддерживаемый большинством современных браузеров.
Рис. 3. Видсонаблюдснис на основе IP-камер
Для обеспечения производительности и масштабируемости планируется реализовать систему на базе набора WEB-служб, поэтому необходим механизм для создания подобных сервисов. В качестве базового механизма разработки наших сервисов выбрана технология Windows Communication Foundation, поскольку она богата возможностями для реализации сервисов и обмена данными между частями системы |7j.
Как отмечалось, для реализации проекта нужна мощная база данных, способная одновременно обслуживать большое количество пользователей и работать с большими объемами мультимедийных данных. В качестве такой базы выбрана MS SQL Server 2008 [8].
Методы обработки видеоизображений. В создаваемом прототипе активно применяются различные методы обработки видеоизображений для решения трудноформализуемых задач, например распознавание образов, текста |2|. На данный момент в прототипе реализовано несколько вариантов детектора движения. Наиболее интересный — детектор движения с возможностью избавления от помех, которые могут возникать при записи с видеокамеры, даже если никакого движения не было. Основной способ сглаживания помех в создаваемой системе — применение быстрого преобразования Фурье. Возникают проблемы при работе с большими изображениями, когда при раскладывании в ряд появляетсямножество чл е н о в с бол ьш и м и сте -пенями. Они решаются изменением первоначального размера изображения до более мелких размеров. Для этого в программе используется метод сплайнов как наиболее быстродействующий. Затем изображение преобразуется в черно-белое и уравнивается с предыдущим. После этого применяется метод быстрого преобразования Фурье [2].
Этапы реализации. Поскольку проект будет построен на наборе WEB-служб, планируется осуществлять его реализацию отдельными шагами, на каждом шаге добавляя некоторое количество службе определенной функциональностью.
В качестве первого шага проекта планируется решить проблему предоставления пользователям уже существующих систем удаленного доступа к информации на видеосервере посредством WEB-интерфейса. Поскольку формат данных для имеющихся систем различный, предполагается исследовать различные форма-
ты хранения и транспортировки видеоданных и, возможно, использовать универсальный (оптимальный) формат этих данных.
В данный момент на базе математико-меха-нического факультета СПбГУ и компании "Ла-нит-Терком" ведется студенческий проект, предварительным результатом которого стал прототип сайта, позволяющий просматривать имеющиеся данные с видеокамеры.
На следующем шаге планируется создать распределенные видеосерверы, доступные через сеть Интернет, способные обрабатывать данные, поступающие с видеокамер пользователей и поддерживающие определенный набор интерфейсов этих видеокамер. То есть реализовать набор сервисов, позволяющих осуществлять следующие базовые функции:
регистрацию камеры в системе; захват видеопотока с камеры; первичную обработку видеоизображения; сохранение данных в базе; доступ к данным, сохраненным на сервере. На третьем шаге планируется предоставить набор средст в для управления этими ресурсами и средства видеоаналитики. Например, оповещать пользователей по электронной почте или MMS о наличии движения вданном секторе на данной камере, а также осуществлять поиск определенного объекта в базе.
В рамках проведения другого студенческого проекта реализованы сервисы, обеспечивающие некоторые функции обработки изображений. Разработка велась на языке С#, в проекте применялись технологии WCFи WPFl7]. Результа-
г lb
т -о
Рис. 4 Ретрансляция данных с локальных серверов
ты обоих указанных студенческих проектов доступны на £оо§1е-сос1е как проекты с открытым кодом.
Вышеизложенное позволяет сделать следующие выводы:
до сих пор не существует общего удобного интерфейса для использования услуг видеонаблюдения, и в статье описан один из способов создания такого интерфейса;
приведенный способ построения системы видеонаблюдения позволит создать единый сер-
вер для хранения записанных данных, а не разрозненные серверы, что позволит упростить доступ к записанным данным и их обработку;
создаваемый УУЕВ-интерфейс позволит обеспечить удобный доступ к данным для пользователей системы, а также решить проблему кросс-платформен ности.
Кроме того, в период создания прототипа системы видеонаблюдсния исследовались и были выявлены наиболее удачные методы обработки изображений (изменение размеров, избавление от помех).
СПИСОК ЛИТЕРАТУРЫ
1. Дамьяновски В. CCTV. Библия видеонаблюдения. Цифровые и сетевые технологии. Ай-Эс-Эс Пресс, 2006.
2. Дьяконов В. Обработка сигналов и изображений. СПб.: Питер, 2002.
3. Сайт компании Netavis— http://wwwnetavis. net/.
4. Сайт компании Pentabox — http://www.pen tabox.ru/.
5. 1>оелсен Э. С# и платформа .NET. СПб.:
Питер, 2008.
6. Флеиов М. DirectX и С + +. СПб.: БХВ-Пе-тербург, 2006.
7. Scott С. Professional WCF programming. WROX, 2007.
8. Walters R.E., Coles M., Rae R., FerTacchiati F., former D. Accclcratcd SQL Server 2008. Williams. 2008.
9. Морони Jl. Введение в Microsoft Silverlight 2. Microsoft Press, 2008.