ВИЗУАЛИЗАЦИЯ РАСПОЗНАННЫХ ОБЪЕКТОВ НА КАРТАХ ПО КООРДИНАТАМ
ORCID: 0000-0002-6105-2897, Аспирант,
Институт проблем информатики и автоматизации
ВИЗУАЛИЗАЦИЯ РАСПОЗНАННЫХ ОБЪЕКТОВ НА КАРТАХ ПО КООРДИНАТАМ
Аннотация
Обнаружение объекта применяется для поиска таких реальных объектов, как лица, велосипеды и здания в изображениях и видео. Алгоритмы обнаружения объектов также выполняются для различения объектов по категориям. Они востребованны в таких областях как поиск изображений, безопасность, видеонаблюдение, автоматическая система парковки автомобилей и т.д. Существует множество способов обнаружения объектов. При видеонаблюдении на местности с разных видеокамер каждая видеокамера обнаруживает свой объект, который рассматривается как отдельная единица. Таким образом, цельное изображение пространства не получается, и оно остается неизвестным. Но есть задачи, для решения которых необходимо видеть целостную картину, рассматривая взаимосвязанность объектов, обнаруженных разными видеокамерами.
Возникает необходимость объединить все объекты, обнаруженные разными видеокамерами в одной системе, определить координаты объектов и их положение в отношении друг друга, анализировать и проводить вычисления в объединенной системе.
В данной статье описаны выбранный метод для решения данной задачи и ее программное осуществление.
Целью программы является демонстрация объединенных объектов (мониторинг) на одной платформе (например, топологическая карта [6]), а также сохранение в дальнейшем траектории и истории передвижения объектов в предыдущие дни для их изучения и анализа. Предусмотрена также синхронная демонстрация обнаруженных с помощью видеокамер объектов на картографической платформе [4][5], т.е. мониторинг прямого эфира.
Ключевые слова: визуализация объектов на картах, картографический инструмент для визуализации объектов, распознавание объектов при видеонаблюдение, приложение с открытым исходным кодом для рисования объектов, создание макета.
Simonyan R.A.
ORCID: 0000-0002-6105-2897, Postgraduate Student,
Institute for Informatics and Automation Problems
VISUALIZATION OF OBJECTS, RECOGNIZED ON MAPS IN COORDINATES
Abstract
Object detection is used to search for real objects such as faces, bikes, and buildings in images and video. Algorithms for object detection are also performed to distinguish objects by category. They are in demand in such areas as image search, security, video surveillance, automatic parking system for cars, etc. There are many ways to detect objects. At video surveillance on the terrain from different video cameras, each video camera detects its object, which is treated as a separate unit. Thus, an integral image of space is not obtained, and it remains unknown. But there are tasks for the solution of which it is necessary to see the whole picture, considering the interconnectedness of objects detected by different video cameras.
There is a need to combine all objects detected by different cameras in one system, determine the coordinates of objects and their position concerning each other, analyze and perform calculations in the integrated system.
This article describes the chosen method for solving this problem and its software implementation. The program is aimed to demonstrate the combined objects (monitoring) on one platform (for example, the topological map [6]), and also to save the trajectory and the history of the movement of objects in previous days for their study and analysis. There is also a synchronous demonstration of the objects detected on the cartographic platform using camcorders [4] [5], i.e., monitoring live broadcast.
Keywords: visualization of objects on maps, a cartographic tool for visualization of objects, recognition of objects for video surveillance, application with open source for drawing objects, creating a layout.
Сначала опишем методы, которые необходимо разработать для достижения цели.
Ниже представим функции(методы) для решения задачи.
- Отображение объектов по координатам на одной топологической платформе.
- Осуществление мониторинга прямого эфира.
- Сохранение расположения объектов на карте в виде проекта.
- Загрузка ранее сохраненных проектов.
- Проведение изменений в проекте (перемещать объекты, стереть, добавить новый, увеличить и т.д,).
Для осуществления всех указанных пунктов в объединенной системе разработан и создан инструмент программного обеспечения с открытым исходным кодам. Благодаря открытому исходному коду пользователь может с легкостью редактировать программный инструмент (например, добавить функциональный блок и т.п.). Систему можно использовать при решении разных топологических задач (картография, топологический дизайн микросхем). Что касается пунктов 1 и 2, то следует подчеркнуть, что в первую очередь система должна иметь экран и средство отображения объекта на экране.
Изучены сфера обнаружения объектов с помощью видеонаблюдения [1], [2], [3], общей картографии [4], а также средства разработки картографического редактора (в том числе языки описания Java Script, HTML, и CSS) [6], [7], [8], [9], [10].
Как уже было отмечено, система должна иметь экран для отображения объектов, кнопки для управления действиями на экране, а также возможности сохранения и загрузки созданного проекта.
Структура и возможности системы
Система состоит из трех частей – внутреннего представления, собрания функций, внешнего вида (рис. 1).
Рис. 1 – Общая структура системы
Система работает следующим образом. Пользователь видит “Внешний вид” системы, потом для выполнения действий обращается к “Собранию функций”. Последний, в свою очередь, устанавливает связь с “Внутренним представлением”, который после осуществления действий отображает результат во “Внешнем виде”. “Внутреннее представление” и “Собрание функций” являются кодом общей программы.
Действия осуществляются кнопками, экран показывает процесс всех действий и их результаты.
В программном инструменте разработаны команды. Каждая команда представлена отдельным алгоритмом.
Первичной командой является - начертить/добавить объект по координатам.
Для введения изменений в проекте разработаны многочисленные команды, например, добавить дополнительные объекты с целью их рассмотрения, вычисления и анализа по отношению к присутствующему объекту. В число дополнительных команд входят следующие: добавить новый объект, перемещать, растянуть, копировать, стереть, выбрать, перевернуть, добавить текст, вместить точки или сетку, изменить межточечное расстояние, начертить линейку, стереть все с экрана.
Для добавления дополнительных объектов на экране в системе имеются стандартные образцы объектов, которые можно добавить или вывести в программном инструменте.
Рассмотрим функцию отображения объектов на экране.
Команда добавления объекта работает следующим образом: после выбора объекта в момент, когда его начинают чертить (на экране новый объект еще не отображается), в коде фиксируются следующие параметры объекта – координаты х, у, ширина, длина и цвет. С помощью этих параметров формируется объект, который регистрируется в том массиве, где уже хранятся объекты, начерченные на экране (рис. 2).
Рис. 2 – Программное представление добавления объекта на экране
Моментально происходит следующее действие: объекты стираются с экрана, и функция добавления объектов по циклу считывает все элементы массива и чертит на экране.
Так как система позволяет пользователю производить действия с объектами, обсудим некоторые из них.
Среди основных команд имеются такие, как перемещение и копирование объекта.
Разработанный алгоритм для перемещения объекта следующий: выбирается объект, пока мышка находится в нажатом состоянии, а курсор - в движении, объект стирается с экрана, и начерчивается новый объект по координатам курсора (рис. 3).
Это происходит непрерывно, с очень малыми интервалами (примерно 20 м/с), пока курсор находится в движении. Величина этого временного периода произвольная, но должна быть очень маленькой, чтобы отсутствие объекта не было замечено. В результате объект перемещается на экране (рис. 4).
Рис. 3 – Блок-схема перемещения объекта
Рис. 4 – Перемещение объекта на экране
При копировании объекта создается копия выбранного объекта (с помощью функции добавления), которая ничем не отличается от предыдущей. При вызове функции копировани функция перемещения тоже активизируется, с помощью которой можно перемещать копию. На примере, приведенном на рис. 5, скопированный объект переместился из положения курсора 1 в положение курсора 2.
Рис. 5 – Скопированный объект и его перемещение
Структура интерфейса программного инструмента
В структуре имеются кнопки и экран (рис. 6). На экране размещается карта. Экран отображает объекты по координатам. С помощью кнопок на экране добавляются новые объекты и осуществляются действия с этими объектами. Экран показывает все действия и их результаты.
Рис. 6 – Структура интерфейса
Редактор предусмотрен для осуществления картографических работ в разных целях. Рассмотрим некоторые виды работ:
- картография географической местности (рис. 7);
- картография города (рис. 8 и рис. 9);
- картография местности завода или другой территории особого назначения (рис. 10);
- анимационная картография (рис. 11);
- пример общей картографии (рис. 12).
Рис. 7 – Картография географической местности
Рис. 8 – Картография города
Рис. 9 – Пример картографии города
Рис. 10 – Пример картографии местности завода или территории особого назначения
Рис. 11 – Анимационная картография
Рис. 12 – Пример общей картографии
Сохранение и загрузка проекта
В программном инструменте разработана функция для сохранения и загрузки. Для программного осуществления была использованы база данных MS SQL и язык программирования Python. Для сохранения проекта необходимо ввести наименование проекта, далее информация графических моделей путем частого опроса нажатием кнопки “Сохранить” отправляется к серверу, где и вводится в базу данных. Создана возможность загрузки уже сохраненного проекта из базы данных. Эта функция также осуществляется путем частого опроса, после чего из базы данных забирается вся информация проекта и отправляется назад клиенту, где и отображается на экране через браузер. Разработан промежуточный этап, позволяющий пользователю при загрузке, до показа проекта на экране, увидеть проект в текстовом формате, изменить его, а потом загрузить на экран.
Заключение
Таким образом, разработан метод, позволяющий объединить обнаруженные всеми видеокамерами объекты в одну систему, т.е. отобразить объекты в одной топологической платформе – карте по координатам, осуществить мониторинг прямого эфира, сохранить положение объектов на карте в виде проекта, загрузить ранее сохраненные проекты и ввести изменения в проекте (перемещать объекты, стереть, добавить новый, увеличить и т.д.).
Разработанный программный инструмент является программный инструмент с открытым исходным кодам. Благодаря этому его можно легко изменить.
Система может служить для решения разных топологических задач (картография, топологический дизайн микросхем).
Список литературы / References
- Simonyan R. A. Hidden and Unknown Object Detection in Video // International Journal of New Technology and Research (IJNTR). – – Vol. 2. – № 11. – P. 22–25.
- Simonyan R. A. Detection and ignorance method of false targets during object detection / D. A. Simonyan // Computer Science and Information Technologies (CSIT) Conference. – 2017. – P. 372-375
- Collins R. Introduction to the special section on video surveillance / A. Lipton, T. Kanade // IEEE Trans. Pattern Anal. Machine Intell. – 2000. – Vol. 22. – № 8. – P. 745–
- Muukkonen P. Biomass Estimation Over a Large Area Based on Standwise Forest Inventory Data and ASTER and MODIS Satellite Data: A Possibility to Verify Carbon Inventories / J. Heiskanen // Remote Sensing of Environment. –Vol. 107. – № 4. – P. 617–624.
- Bohmand H. D. V. Remote Sensing Verification by Aerial Surveys and Ground Truth Campaigns 1997 and 1998 in Central Kalimantan, Indonesia-Peat Swamp Forest, Mega-Rice-Project and Fires / F. Siegert // Workshop on Tropical Forest and Remote Sensing. – 1999.
- Phuon D. Field Observation Using Flying Platforms for Remote Sensing Education / Nogami, M. Kusanagi // Asian Conference of Remote Sensing. – 2002.
- Cosentino A Systematic Mapping Study of Software Development With GitHub / Cánovas Izquierdo J. L., Cabot J. // J. IEEE Open Access. – 2017. –Vol. 5. – P. 7173–7192.
- Fett An Expressive Model for the Web Infrastructure: Definition and Application to the Browser ID SSO System / Küsters R., Schmitz G. // J. IEEE Symposium on Security and Privacy. – 2014
- Babovic B. Web Performance Evaluation for Internet of Things Applications / Protic J., Milutinovic V. // J. IEEE Open Access. –2016. – Vol. 4. –P. 6974–6992.
- Ofuonye Resolving JavaScript Vulnerabilities in the Browser Runtime / Miller J. // 2008 19th International Symposium on Software Reliability Engineering (ISSRE). – 2008