УДК 004.422.81
DOI:10.25729/ESI.2024.33.1.015
Разработка модулей каталогизации и визуализации данных в системе аграрного мониторинга
Пушкарев Александр Александрович1, Кузнецова Анна Сергеевна1, Кадочников Алексей Анатольевич2, Ерунова Марина Геннадьевна1, Якубайлик Олег Эдуардович2
Федеральный исследовательский центр «Красноярский научный центр СО РАН», Россия, Красноярск, flash550@yandex. ru
2Институт вычислительного моделирования СО РАН, Россия, Красноярск
Аннотация. В статье рассматриваются модули, отвечающие за каталогизацию и визуализацию данных в системе аграрного мониторинга ФИЦ КНЦ СО РАН. Представлены особенности программной реализации этих модулей, диаграммы взаимодействия компонентов, а также основные возможности пользовательского интерфейса системы.
Ключевые слова: аграрный мониторинг, веб-ГИС, визуализация данных, javascript, typescript, react, openlayers
Цитирование: Пушкарев А.А. Разработка модулей каталогизации и визуализации данных в системе аграрного мониторинга / А.А. Пушкарев, А.С. Кузнецова, А.А. Кадочников, М.Г. Ерунова, О.Э. Якубайлик // Информационные и математические технологии в науке и управлении. - 2024. - № 1(33). - С. 166-173. - DOI:10.25729/ESI.2024.33.1.015.
Введение. В настоящее время аграрный сектор является одним из ключевых направлений экономики многих стран. Однако, для его эффективного развития необходимо внедрять информационные технологии во многие производственные процессы. Системы аграрного мониторинга являются одним из основных инструментов, которые позволяют получать и анализировать данные о состоянии посевов, урожайности, погодных условиях и других факторах [1-4].
В мире существует множество аграрных систем, которые используются для мониторинга и управления аграрным сектором. Например, «OneSoil» (https://onesoil.ai/) - это онлайн-сервис для анализа посевов и урожайности на основе данных спутникового мониторинга. NASA «Worldview» (https://worldview.earthdata.nasa.gov/) - это еще одна система, которая предоставляет доступ к данным спутникового мониторинга для анализа погодных условий и других факторов, влияющих на аграрный сектор. Кроме того, существуют также системы управления растениеводством, такие как «Agroptima» (https://www.agroptima.com/) и «AgroSense» (https://www.agrosense.com/), которые помогают фермерам управлять посевами и увеличивать урожайность.
Разработка региональной системы аграрного мониторинга для Красноярского края имеет высокую актуальность в связи с необходимостью повышения эффективности сельскохозяйственного производства и улучшения управления аграрным сектором региона [5]. Создание такой системы позволит оперативно отслеживать состояние почвы, растений, погодные условия и другие факторы, что способствует принятию обоснованных решений и оптимизации процессов в сельском хозяйстве. Научная новизна данного проекта заключается в применении передовых технологий в веб-разработке и построении геоинформационных систем (ГИС). В статье рассматриваются особенности программного построения модулей, отвечающих за функции каталогизации и визуализации данных в разделе «Карта» системы «АгроМониторинг» (https://gis.krasn.ru/agro/), разрабатываемой в ФИЦ КНЦ СО РАН [6].
1. Материалы и методы. Данные являются основой любой информационной системы. Именно они несут в себе ценность, а программное обеспечение необходимо для удобства работы с этими данными. Все данные, представленные в системе, делятся на 4 типа:
спутниковые снимки Sentinel-2 и Landsat 8/9 [7], снимки с БПЛА, тематические карты, компьютерные модели Global Forecast System (GFS) [8] и Global Precipitation Measurement (GPM) [9]. Каждый тип данных имеет свои особенности визуализации и внедрения в систему. На нижнем уровне все типы данных, кроме тематических карт, представляют из себя растровые изображения. Доступ к этим изображениям предоставляется при помощи различных программных интерфейсов (API). Тематические карты представляют собой проекты QGIS (https://qgis.org/), состоящие из векторных SHAPE-файлов. На рисунке 1 представлена схема взаимодействия основных компонентов системы.
Рис. 1. Схема взаимодействия компонентов системы
Для визуализации растровых данных в веб-приложении необходимо организовать цепочку обработок, которая будет выполняться при добавлении клиентом данных на карту [10]. Все начинается с запроса клиента по протоколу HTTP, где он запрашивает определенный фрагмент изображения. Затем сервер должен обработать запрос, извлечь запрашиваемый фрагмент из исходного файла, преобразовать его в требуемый формат (JPEG или PNG) и отправить изображение в ответ по протоколу WMS. После этого изображение должно быть отображено на карте с учетом географической привязки. Существуют программные решения, позволяющие автоматизировать этот процесс. В данном случае серверная часть обработки выполняется Map Server (https://mapserver.org/), а за генерацию корректного запроса и визуализацию данных на карте отвечает JavaScript-библиотека OpenLayers (https://openlayers.org/). Проекты QGIS визуализируются аналогично, но серверную обработку выполняет QGIS Server, который преобразовывает векторные данные из проектов в изображения при каждом запросе и предоставляет их так же, как и растровые данные, по протоколу WMS.
В качестве базы данных используется MongoDB (https://www.mongodb.com/). Это NoSQL база данных, которая хранит сущности в формате JSON-объектов. Преимуществом
использования объектно-ориентированной базы данных в данном случае является простота реализации функциональности по выстраиванию определенной последовательности сущностей каталога. Так как все дочерние сущности хранятся в массиве, для изменения порядка элементов необходимо при обновлении родительской сущности передать массив с нужной последовательностью дочерних элементов. При использовании реляционных баз данных для решения данной задачи необходимо хранить позицию каждой сущности. В данном случае, когда один слой может находиться в нескольких группах, это может вызывать трудности при разработке данной функции.
Для удобной работы с библиотекой OpenLayers в React (https://react.dev/) были написаны компоненты «обертки» для каждого типа данных: вектор, растр и тайловые растры. Такой подход позволяет удобно работать с каждым отдельным слоем и изолировано обновлять параметры в зависимости от действий пользователя (прозрачность, очередность, раскраска и т.д.). На рисунке 2 представлена схема взаимодействия компонентов в модуле визуализации данных.
Рис. 2. Схема взаимодействия компонентов внутри модуля визуализации данных
Для визуализации вегетационных индексов (NDVI, GCI, VARI, SAVI, MSAVI2) [11] используется преобразование исходных значений пикселей в диапазон от 0 до 255, что образует градиент серого цвета, эти преобразования выполняет Map Server и отдает изображение по WMS, далее средствами библиотеки OpenLayers такое изображение раскрашивается в необходимую цветовую схему и визуализируется на карте. Такой подход позволяет использовать множество различных цветовых схем без необходимости генерировать дополнительные слои под каждую цветовую схему.
2. Основные результаты. В рамках исследования были разработаны модули каталогизации и визуализации данных, которые значительно улучшили процесс сбора, хранения и анализа информации о сельскохозяйственных угодьях в системе аграрного мониторинга. Эти модули предоставляют пользователям возможность оперативно получать доступ к актуальным данным и принимать обоснованные решения на основе достоверной информации. В этом разделе будут более подробно рассмотрены возможности разработанных модулей системы.
Каталог данных представляет из себя четырехуровневую систему, для удобного разделения данных по различным тематикам. Уровни расположены в следующей иерархии: вкладка - раздел - группа - слой. В системе предусмотрена возможность гибкой настройки
сущностей каждого уровня: выстраивание определённой последовательности сущностей внутри каждого уровня, добавление описания, изображений, ограничение доступа, перемещение сущностей в другую родительскую сущность. У администратора системы после авторизации появляются инструменты управления внутри самого каталога, что позволяет удобно настраивать внешний вид каталога для пользователей системы, а также наполнять каталог данными. На рисунке 3 изображен интерфейс каталога данных.
Рис. 3. Интерфейс каталога данных Интерфейс рабочей области представляет из себя карту, занимающую большую часть экрана, на которой отображаются все слои, которые были добавлены из каталога, и боковую панель для манипуляций с данными. Боковая панель имеет две секции, каждая из которой может быть свернута. В первой секции располагается меню выбора области исследования, после нажатия на соответствующий пункт меню система фокусируется на выбранной области: карта приближается до границ этой области, в каталоге отображаются только те слои, которые доступны выбранной области, а также появляются дополнительные подробности про область исследования, например, контуры и номера полей.
Во второй секции бокового меню отображается список слоев, добавленных из каталога данных. Каждый элемент списка представляет из себя карточку слоя, содержащую название, легенду (при наличии) и элементы управления слоем. К элементам управления относятся: флажок переключения видимости слоя, кнопка отображения легенды, кнопка настроек слоя и кнопка удаления слоя с карты. При нажатии на кнопку настроек слоя открывается дополнительное окно, в котором можно более гибко настроить визуализацию слоя. Настройки, находящиеся в данном окне, отличаются в зависимости от типа данных слоя, так, например,
для спутниковых данных уникальна настройка облачности, которая позволяет выставить максимально допустимую облачность данных, отображаемых на шкале времени. Также в данном окне находится выбор цветовой схемы, выбор контрастности слоя и общая для всех слоев настройка прозрачности. Также возможно менять очередность отображения слоев, путем перетаскивания карточек слоя внутри списка (слои на карте отображаются согласно последовательности их в списке).
Так как большая часть данных представлена в виде временных рядов, в нижней части рабочей области располагается шкала времени, которая позволяет переключать активную дату. Шкала представляет из себя последовательность доступных дат для выбранных слоев. Если на одну дату доступно более одного слоя, то фон этой даты будет темнее в зависимости от количества доступных слоев, также при наведении отображается список слоев, доступных на эту дату. Помимо шкалы времени переключать активную дату можно также при помощи календаря, который имеет схожий дизайн доступных дат.
Из дополнительных функций можно также выделить переключение базовой подложки, состоящей из четырех слоев (подложка на основе спутниковых данных Sentinel, топооснова, светлый и темный рельеф). Также из элементов управления на карте присутствуют кнопки приближения и отдаления и рулетка для измерения расстояния и площади. На рисунке 4 представлен пользовательский интерфейс рабочей области приложения.
Рис. 4. Интерфейс приложения Ещё одной немаловажной функцией системы является возможность сохранять и делиться текущим набором слоев, позицией на карте, активной датой и другим состоянием приложения. За хранение состояния приложения отвечает библиотека Zustand, которая предоставляет простой API для создания и управления состоянием приложения. Данная библиотека позволяет легко дублировать ключевые элементы состояния в SessionStorage за счет плагина Persist, благодаря этому при перезагрузке страницы приложение не теряет текущее состояние и полностью восстанавливается из данных, хранимых в SessionStorage. В то же время такая возможность позволяет легко сохранять в базе данных ту часть состояния, которая хранится в SessionStorage т.к. она не занимает много места и хранит в себе только идентификаторы активных сущностей приложения. При необходимости поделиться текущим состоянием приложения пользователю необходимо нажать на соответствующую кнопку на
боковой панели, после чего во всплывающем окне будет доступна ссылка, по которой любой, кто перейдет по данной ссылке, воссоздаст у себя такое же состояние приложения с поправкой на права доступа.
Заключение. Разрабатываемая система аграрного мониторинга («АгроМониторинг») является мощным инструментом для оценки состояния сельскохозяйственных территорий. Модуль каталогизации, рассмотренный в статье, позволяет пользователям системы удобно находить необходимые данные для дальнейшей аналитики, а модуль визуализации данных облегчает этот процесс, делая его доступным для пользователей системы. На данный момент описанные в статье модули полностью разработаны и внедрены в систему «АгроМониторинг» в раздел «Карта». В то же время разработка этой системы не стоит на месте, в ней регулярно появляются новые данные и функции, позволяющие улучшить пользовательский опыт применения системы «АгроМониторинг».
Список источников
1. Qingyu Feng, Dennis C. Flanagan, Bernard A. Engel, Lei Yang, Liding Chen. GeoAPEXOL, a web GIS interface for the agricultural policy environmental extender (APEX) model enabling both field and small watershed simulation. Environmental Modelling & Software, 2020, no. 123.
2. Mendas Abdelkader, Delali Amina Integration of multicriteria decision analysis in GIS to develop land suitability for agriculture: Application to durum wheat cultivation in the region of Mleta in Algeria. Computers and electronics in agriculture, 2012, no. 83, pp. 117-126.
3. Morteza Khazaei, Saeid Hamzeh, Najmeh Neysani Samani, Arnab Muhuri, Kalifa Goi'ta, Qihao Weng. A web-based system for satellite-based high-resolution global soil moisture maps. Computers & Geosciences, 2023, no. 170.
4. Kalliopi Avanidou, Thomas Alexandridis, Dimitris Kavroudakis, Thanasis Kizos Development of a multi scale interactive web-GIS system to monitor farming practices: A case study in Lemnos Island, Greece. Smart agricultural technology, 2023, no. 5.
5. Ерунова М.Г. Геопространственная база данных цифровизации системы земледелия Красноярского края / М.Г. Ерунова, А.А. Шпедт, О.Э. Якубайлик, Ю.Н. Трубников // Достижения науки и техники АПК, 2019. - № 7. - Т. 33. - С 56-61.
6. Pushkarev A.A. Yakubailik O.E. A web application for visualization, analysis, and processing of agricultural monitoring spatial-temporal data. CEUR workshop proceedings, 2021, no. 3006, pp. 231-237.
7. Blickensdorfer L., Schwieder M., Pflugmacher D. et al. Mapping of crop types and crop sequences with combined time series of Sentinel-1, Sentinel-2 and Landsat 8 data for Germany. Remote sensing of environment, 2022, vol. 269, p. 112831, DOI: 10.1016/j.rse.2021.112831.
8. The global forecast system (GFS). Available at: https://www.emc.ncep.noaa.gov/emc/pages/numerical_forecast_systems/gfs.php.
9. Hou A.Y. et al. The global precipitation measurement mission. Bulletin of the American meteorological society, 2014, vol. 95, no. 5, pp. 701-722, D0I:10.1175/BAMSD-13-00164.1.
10. Kadochnikov A.A. Software and technological support of geoinformation web system for the operative processing and visualization of satellite DATA. CEUR workshop proceedings, 2019, no. 2534, pp. 309-315.
11. Ботвич И.Ю. Оценка пространственного распределения урожайности ярового ячменя (Красноярский край) по наземным и спутниковым спектрофотометрическим данным / И.Ю. Ботвич, Д.В. Емельянов, А.А. Ларько, и др.// Современные проблемы дистанционного зондирования Земли из космоса, 2019. - Т. 16. -№ 5. - С. 183-193. - DOI: 10.21046/2070-7401-2019-16-5-183-193.
Пушкарев Александр Александрович. Младший научный сотрудник Федерального исследовательского центра «Красноярский научный центр СО РАН», AuthorlD: 1019386, SPIN: 5344-5762, ORCID: 0009-0000-5790-966X, [email protected], Россия, г. Красноярск, Академгородок, д. 50.
Кузнецова Анна Сергеевна. Младший научный сотрудник Федерального исследовательского центра «Красноярский научный центр СО РАН», AuthorlD: 1123552, SPIN: 4915-3961, ORCID: 0000-0002-8351-7536, [email protected], Россия, г. Красноярск, Академгородок, д. 50.
Кадочников Алексей Анатольевич. Кандидат технических наук, старший научный сотрудник Федерального исследовательского центра «Красноярский научный центр СО РАН», AuthorlD: 150608, SPIN: 6283-2922, ORCID: 0000-0003-0965-3609, [email protected], Россия, г. Красноярск, Академгородок, д. 50.
Ерунова Марина Геннадьевна. Кандидат технических наук, старший научный сотрудник Федерального исследовательского центра «Красноярский научный центр СО РАН», AuthorlD: 116643, SPIN: 5424-1229, ORCID: 0000-0002-1922-1036, [email protected], Россия, г. Красноярск, Академгородок, д. 50.
Якубайлик Олег Эдуардович. Кандидат физико-математических наук, зам. директора по научной работе Института вычислительного моделирования СО РАН, AuthorID: 99904, SPIN: 7820-4178, ORCID: 00000002-2668-4776, [email protected], Россия, г. Красноярск, Академгородок, д. 50, стр. 44.
UDC 004.422.81 DOI:10.25729/ESI.2024.33.1.015
Development of cataloging and data visualization modules for the agrarian monitoring system
Alexander A. Pushkarev1, Anna S. Kuznetsova1, Alexey A. Kadochnikov2, Marina G. Erunova1, Oleg E. Yakubailik2
1Federal Research Center Krasnoyarsk Science Center of the SB RAS, Russia, Krasnoyarsk, [email protected]
2Institute of Computational Modelling SB RAS, Russia, Krasnoyarsk
Abstract. The article discusses the modules responsible for cataloging and visualizing data in the agricultural
monitoring system of the Federal Research Center KSC SB RAS. Features of the software implementation of these
modules, component interaction diagrams, as well as the main capabilities of the system user interface are
presented.
Keywords: agricultural monitoring, web GIS, data visualization, javascript, typescript, react, openlayers
References
1. Qingyu Feng, Dennis C. Flanagan, Bernard A. Engel, Lei Yang, Liding Chen. GeoAPEXOL, a web GIS interface for the agricultural policy environmental extender (APEX) model enabling both field and small watershed simulation. Environmental Modelling & Software, 2020, no. 123.
2. Mendas Abdelkader, Delali Amina Integration of multicriteria decision analysis in GIS to develop land suitability for agriculture: Application to durum wheat cultivation in the region of Mleta in Algeria. Computers and electronics in agriculture, 2012, no. 83, pp. 117-126.
3. Morteza Khazaei, Saeid Hamzeh, Najmeh Neysani Samani, Arnab Muhuri, Kalifa Goita, Qihao Weng. A web-based system for satellite-based high-resolution global soil moisture maps. Computers & Geosciences, 2023, no. 170.
4. Kalliopi Avanidou, Thomas Alexandridis, Dimitris Kavroudakis, Thanasis Kizos Development of a multi scale interactive web-GIS system to monitor farming practices: A case study in Lemnos Island, Greece. Smart agricultural technology, 2023, no. 5.
5. Erunova M.G., Shpedt A.A., Yakubailik O.E., Trubnikov Yu.N. Geoprostranstvennaya baza dannykh tsifrovizatsii sistemy zemledeliya Krasnoyarskogo kraya [Geospatial database for digitization of the agriculture system in the Krasnoyarsk krai]. Dostizheniya nauki i tekhniki AP [Achievements of Science and Technology of AICis], 2019, no. 7, Vol. 33, C 56-61.
6. Pushkarev A.A. Yakubailik O.E. A web application for visualization, analysis, and processing of agricultural monitoring spatial-temporal data. CEUR workshop proceedings, 2021, no. 3006, pp. 231-237.
7. Blickensdorfer L., Schwieder M., Pflugmacher D. et al. Mapping of crop types and crop sequences with combined time series of Sentinel-1, Sentinel-2 and Landsat 8 data for Germany. Remote sensing of environment, 2022, vol. 269, p. 112831, DOI: 10.1016/j.rse.2021.112831.
8. The global forecast system (GFS). Available at: https://www.emc.ncep.noaa.gov/emc/pages/numerical_forecast_systems/gfs.php.
9. Hou A.Y. et al. The global precipitation measurement mission. Bulletin of the American meteorological society, 2014, vol. 95, no. 5, pp. 701-722, DOI:10.1175/BAMSD-13-00164.1.
10. Kadochnikov A.A. Software and technological support of geoinformation web system for the operative processing and visualization of satellite DATA. CEUR workshop proceedings, 2019, no. 2534, pp. 309-315.
11. Botvich I.Y., Emelyanov D.V., Larko A.A., Malchikov N.O., Ivchenko V.K., Demyanenko T.N. Otsenka prostranstvennogo raspredeleniya urozhaynosti yarovogo yachmenya (Krasnoyarskiy kray) po nazemnym i sputnikovym spektrofotometricheskim dannym [Assessment of the spatial distribution of spring barley yield (Krasnoyarsk Territory) based on ground-based and satellite spectrophotometry data]. Sovremennyye problemy distantsionnogo zondirovaniya Zemli iz kosmosa [Modern problems of remote sensing of the Earth from space], 2019, Vol. 16, no. 5, pp. 183-193, DOI: 10.21046/2070-7401-2019-16-5-183-193.
Pushkarev Alexander Aleksandrovich. Junior researcher, federal research center Krasnoyarsk science center SB RAS, AuthorID: 1019386, SPIN: 5344-5762, ORCID: 0009-0000-5790-966X, [email protected], Russia, Krasnoyarsk, Akademgorodok, 50.
Kuznetsova Anna Sergeevna. Junior researcher, federal research center Krasnoyarsk science center SB RAS, AuthorID: 1123552, SPIN: 4915-3961, ORCID: 0000-0002-8351-7536, [email protected], Russia, Krasnoyarsk, Akademgorodok, 50.
Kadochnikov Alexey Anatolyevich. Candidate of technical sciences, senior researcher federal research center Krasnoyarsk science center SB RAS, AuthorID: 150608, SPIN: 6283-2922, ORCID: 0000-0003-0965-3609, [email protected], Russia, Krasnoyarsk, Akademgorodok, 50.
Erunova Marina Gennadievna. Candidate of technical sciences, senior researcher federal research center Krasnoyarsk science center SB RAS, AuthorID: 116643, SPIN: 5424-1229, ORCID: 0000-0002-1922-1036, [email protected], Russia, Krasnoyarsk, Akademgorodok, 50.
Yakubailik Oleg Eduardovich. Candidate of physico-mathematical sciences, deputy director for scientific work, institute of computational modeling SB RAS, AuthorID: 99904, SPIN: 7820-4178, ORCID: 0000-0002-2668-4776, [email protected], Russia, Krasnoyarsk, Akademgorodok, 50, building 44.
Статья поступила в редакцию 23.10.2023; одобрена после рецензирования 20.02.2024; принята к публикации 05.03.2024.
The article was submitted 10/23/2023; approved after reviewing 02/20/2024; accepted for publication 03/05/2024.