АНАЛИЗ И СОПОСТАВЛЕНИЕ ПРОГРАММНЫХ СРЕДСТВ ВИЗУАЛИЗАЦИИ МОРСКИХ ПРОГНОЗОВ НА ОСНОВЕ РАСЧЕТНЫХ ДАННЫХ ОПЕРАТИВНОЙ ОКЕАНОГРАФИИ ПО ЧЕРНОМОРСКОМУ БАССЕЙНУ НА ПРИМЕРАХ СЕВАСТОПОЛЬСКОГО И КРЫМСКОГО РЕГИОНОВ

Н.Н. Воронина, Н.В. Инюшина, Н.Л. Мамчур, М.В. Крыль

ФГБУН «Морской гидрофизический институт РАН», Севастополь, 299011, Россия

voronina.nataly@mail.ru, inushina@yandex.ru, natalymamchur@gmail.com, marusz@mail.ru

 

Содержание

1. Введение

1.1 Краткая историческая справка

1.2. Обзор существующих решений

1.3. Краткая справка по программным средствам

2. Стиль «географических атласов»

3. Визуализация с использованием TkrPlot

4. Использование спутниковых карт при визуализации геофизических параметров

5. Заключение

Список литературы


Аннотация

В работе изложены результаты разработки программных модулей с использованием существующих современных графических средств в программных продуктах R, JS, PHP, HTML, а так же инструментов картографического сервиса Google Maps. Результат функционирования данных модулей - графические отображения геофизических параметров Черного моря, цель - определение оптимального средства представления при максимальном быстродействии для дальнейшего использования в разработках морских диагнозов, прогнозов оперативной океанографии. Важным результатом также является разработка построения изображений геофизических параметров Черного моря различными программными средствами, что позволяет наглядно показать их преимущества, недостатки и сформулировать оценочные рекомендации по использованию каждого из них. В заключении статьи приведены несколько слов и об одном из возможных будущих применений «союза» графики и спутникового картографического сервиса, а именно при валидации морских прогнозов.

 

Ключевые слова: Черное море, визуализация, геофизические параметры, температура морской поверхности, соленость морской среды, средства программирования R, JS, PHP, HTML, картографические сервисы Google Maps

 

1. Введение

 

1.1 Краткая историческая справка

 

Мировой океан занимает основную часть Земли и совсем не случайно в мире целый комплекс наук направлен на его изучение. Неоценимую помощь в этих исследованиях оказывает максимально достоверный наглядный мониторинг результатов исследований.

В мае 2015 года исполнилось 545 лет со дня появления первого в мире географического атласа – первого опыта визуализации географических данных, которая несколько лет назад предполагала возможность только их статического отображения именно в стиле географических атласов. Гигантский скачок в повышении достоверности результатов интерпретации данных геофизических, географических, геологических исследований произошел во второй половине XX столетия благодаря появлению и стремительному развитию компьютерной техники, а также освоению космического пространства с помощью искусственных спутников Земли. Появились и новые возможности для реализации целей совершенствования наглядного мониторинга Мирового океана. Современный инструментарий располагает такими программными средствами, которые позволяют не только просматривать результаты исследований как статический географический атлас, но и поработать с данными в различных масштабах, а также получать значения географических координат любой интересующей точки на изображении.

 

1.2. Обзор существующих решений

 

В 2009 году был создан и функционирует в настоящее время проект Европейского союза MyOcean [1], посвященный сбору и отображению данных о состоянии Морового океана (результаты спутниковых мониторингов, контактных измерений, прогностических данных состояния морской среды и др.). Все данные проекта находятся в свободном доступе. В проекте MyOcean уже можно увидеть использование спутниковых карт при отображении траекторий движений дрифтеров и буев-профилемеров Argo [2]. Присутствуют в проекте и отображения геофизических параметров морей на спутниковых картах, однако такие изображения реализованы с помощью специализированных технических средств.

В период с 01.04.2009 по 30.09.2014 года участниками проекта MyOcean были и авторы данной статьи в составе коллектива отдела океанографии Морского Гидрофизического института (МГИ) РАН. В рамках этого проекта в МГИ был создан и функционирует в настоящее время сайт МГИ “Operational Oceanography Branch” [3], предоставляющий спектр геофизических данных по Черному морю на оперативной основе. Все они имеют визуальное представление современными программно-техническими средствами. Тем не менее, именно в ходе работ над проектом MyOcean появилась цель получения таких изображений геофизических полей, которые пользователь сможет мгновенно просмотреть с максимальным диапазоном возможностей без использования специализированных технических ресурсов.

Поставленную задачу авторы реализовали в рамках нового, одноименного с данной статьей проекта, поддержанного РФФИ, на примере локального района Черноморского бассейна. В проекте использованы данные оперативной работы Экспериментального Центра Морских Прогнозов (ЭЦМП) [4] МГИ РАН. При достижении поставленной цели мы опирались на выбор свободно распространяемых программных средств построения графики, а также на уже накопленный опыт работ. Проект носит и научный, и практико-ориентированный характер, так как его результаты в настоящее время используются в оперативной работе.

 

1.3. Краткая справка по программным средствам

 

Пакет TkrPlot [5], входящий в состав свободно распространяемого языка программирования R [6–8], позволяет реализовать получение географических координат любой интересующей точки на статическом изображении. А появление картографического сервиса Google Maps [9] с мощным набором инструментов, позволяющих использовать этот сервис при разработке собственных программных продуктов, открыло совершенно иной, более высокий уровень визуализации с выкладкой спутниковых карт с полученными результатами на страницы Web-сайтов. Это, в свою очередь, сделало возможным донести результирующие изображения в любую точку мира. Данный уровень визуализации включает и возможность снятия значений координат любой интересующей точки на изображении по аналогии с пакетом TkrPlot, однако есть отличия, о которых мы расскажем далее в ходе изложения результатов наших исследований. Вдобавок язык сценариев JavaScript (JS), в котором присутствует инструментарий Google Maps, позволяет динамически просматривать изображения на Web страницах, что необходимо при наглядной оценке изменчивости геофизических параметров морской среды. Однако прежде чем придать изображению динамику, необходимо это изображение создать, что и было сделано в проекте, работе над которым посвящена данная статья, средствами языков программирования R (собственно графическое отображение данных) и PHP (обработка построенных статических изображений, а так же архивных файлов с геофизическими данными на стороне сервера). Таким образом, наша задача состояла в практической апробации нескольких вариантов построения изображений геофизических параметров, сопоставлении полученных результатов и выработке рекомендаций по дальнейшему использованию (или неиспользованию) каждого из них.

 

2. Стиль «географических атласов»

 

Многочисленные примеры изображений в стиле географических атласов, получаемых ежедневно в результате автоматизированной оперативной работы, можно увидеть на Web-сайте ЭЦМП. Один из таких примеров представлен на рис. 1. В этом примере отображен только параметр температуры, чтобы не перегружать изложение статьи. Примеры изображений других геофизических параметров (соленость, скорость течения, уровень морской среды) широко представлены на сайте ЭЦМП.

 

Рис. 1. Изображение геофизического параметра температуры района Черного моря

 

Данные статические изображения (рис. 1) построены с помощью языка программирования R, выбранного авторами по многим причинам, среди которых важное место занимает наличие мощного набора средств работы с графикой, а также свободно распространяемой программной среды вычислений. В качестве входных были использованы данные результатов расчетов морских прогнозов в формате GRD [10]. По поводу формата входных данных сразу сделаем оговорку – входной формат может быть любым (DAT, NC, GRD, …), содержащим геофизические данные, так как собственно программа построения графики предварительно использует функцию чтения геофизических данных, а такие функции могут быть написаны под любой формат. В нашем случае написана функция для чтения файлов именно формата GRD, так как результатом оперативной работы модели расчета морских прогнозов являются именно файлы в формате GRD, и именно эти файлы далее получают графическое представление с их последующей выкладкой на страницы сайта. Однако построенные таким образом статические изображения имеют серьезные недостатки:

– отсутствует возможность определения координат любой точки изображения;

– отсутствует возможность масштабирования изображения.

 

3. Визуализация с использованием TkrPlot

 

Анализ современных достижений в области программных средств визуализации данных показал, что первый из недостатков возможно решить с помощью применения пакета TkrPlot, встроенного в язык программирования R. Использование TkrPlot стало следующим, более высоким уровнем построения графики для отображения геофизических параметров. Авторы книги [5] детально изложили возможность построения графического изображения с помощью виджета TkrPlot. Мы воспользовались данной возможностью и разработали программу построения изображений в той же среде R, но уже с использованием виджета TkrPlot. Результат работы программы с использованием виджета TkrPlot в виде изображения поля температуры Черного моря представлен на рис. 2. В качестве входных были использованы данные результатов расчетов морских прогнозов в формате DAT (выше мы уже отметили, что формат входных геофизических данных может быть разнообразным, это не влияет на результат).

 

tmp_20150118..png

Рис. 2. Изображение геофизического параметра температуры Черного моря, построенное с использованием виджета TkrPlot

 

И действительно, как видно по рис. 2, в левом верхнем углу теперь отображаются координаты (значения X, Y) любой точки изображения, а так же значение Z самого геофизического параметра (в нашем примере поля температуры) в данной точке карты. Таким образом, от одного из недостатков статических изображений нам, как показала практика, удалось избавиться. Однако полученное с помощью виджета TkrPlot изображение оказалось не только лишено возможности какого-либо масштабирования, но и возможности задания необходимого размера для вывода изображения (о чем и предупреждали авторы книги [5]). Можно сделать вывод, что использование виджета TkrPlot позволяет избавиться от одного недостатка простого статического изображения за счет появления отображения координат любой точки карты, но при этом усугубляет другой недостаток – отсутствие масштабирования. Такая визуализация данных тоже может найти свое применение, но, на наш взгляд, это применение ограничивается только лишь узким кругом исследовательских работ, и совершенно непригодно в оперативной работе, то есть в ежедневной обработке большого количества данных.

 

4. Использование спутниковых карт при визуализации геофизических параметров

 

Появление картографического сервиса Google Maps с мощным набором инструментов, позволяющих использовать полный спектр сервисов в скриптах сценарного языка программирования JS, вывело визуализацию геофизических данных на совершенно иной, существенно более высокий уровень с возможностью наложения собственных результатов на спутниковые карты, размещенные на страницах Web-сайтов [9]. Это позволяет при работе с собственными результатами пользоваться всеми инструментами, присутствующими в картографических сервисах. Реальный пример спутниковых карт совместно с локальными изображениями приведен на рис. 3. Отметим, что некоммерческое использование сервисов Google Maps, как и в случае использования программной среды R, предполагает свободное и бесплатное распространение как самого инструментария, так и разработанного приложения. Данный уровень визуализации включает как возможность определения значений географических координат любой интересующей точки на изображении, так и удобное наглядное масштабирование, что отчетливо видно на рис. 3.

 

Рис. 3. Изображение геофизического параметра температуры севастопольского региона Черного моря в виде наложения на спутниковую карту Google Maps с использованием различных масштабов

 

Это кардинально отличает изображения на картах Google Maps от обычных графических изображений, на которых мы уже подробно останавливались выше, и позволяет полностью избавиться от присущих им недостатков. Разработанные скрипты JS обеспечивают просмотр изображений в режиме анимации (можно выбрать в секции «Год–месяц–день–час» на странице сайта для Севастопольского региона), что весьма полезно для наглядной оценки изменчивости геофизических параметров морской среды за весь период времени. В частности, на нашем сайте ЭЦМП периодом времени является период рассчитанного прогноза. Необходимо заметить, что появлению изображений на спутниковой карте соответствующей страницы сайта предшествует предварительная работа:

– вначале программа, разработанная в среде программирования R, формирует графический файл с локальным изображением геофизических параметров в формате PNG и выкладывает файл на сервер HTTP;

– затем происходит обработка данного файла средствами скриптового языка программирования PHP на стороне сервера.

Апробация использования карты Google Maps в наших собственных целях открыла еще одну возможность – просмотр архивов контактных измерений. Для этого авторам потребовалось разработать программы (на языке программирования R) оптимальной фильтрации таких архивов, удовлетворяющей условиям загрузки архивных данных на Web страницы, пример приведен на рис. 4.

 

ARCHIVE_data_large

Рис. 4. Отображение значений геофизических параметров по дате с координатами точки контактных измерений по крымскому региону Черного моря

 

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

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

 

5. Заключение

 

Само по себе применение карт Google Maps либо виджетов TkrPlot не ново и, например, в проекте Европейского союза MyOcean можно найти широкое применение карт Google Maps. Однако в сочетании со всеми нашими потребностями (районирование, использование локальной карты в совокупности с картами Google Maps, снятие значений координат любой точки на карте, масштабирование) применение перечисленных выше программных инструментов придает нашей работе уникальность и своевременность.

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

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

Скажем несколько слов и о возможном будущем применении такого «союза» графики с Google Maps при валидации морских прогнозов. В настоящее время на страницу сайта “Black Sea Marine Forecasting Centre. Validation on ARGO buoys data” [2], выкладываются и данные с результатами валидации прогнозов по буям ARGO. Аналогичную страницу с валидацией, но только уже для Крымского региона, мы создаем и в рамках сайта ЭЦМП, пробный пример приведен рис. 5.

 

ЕЦМП_валид_профили.png

Рис. 5. Отображение траекторий перемещения буев ARGO по крымскому региону Черного моря за определенный для валидации период времени

 

Сейчас на странице сайта с валидацией прогностических данных присутствуют два изображения:

– карта с нанесенными траекториями перемещения буев со всплывающими подсказками значений параметров в какой-либо точке расположения буя;

– графики отклонений реально измеренных значений геофизических параметров от прогностических.

На рис. 6 приведен для сравнения пример той же валидации, но уже с использованием на карте не только траекторий буев ARGO, но и отображения локального прогноза в виде наложения на карту Google Maps, сделанного на ту же дату, на которую были сделаны измерения какого-либо буя. То есть, при навигации по траектории конкретного буя будет меняться и наложение локального прогноза.

 

val_ARGO_transparent_without_border.png

Рис. 6. Траектории перемещения буев ARGO по крымскому региону Черного моря с отображением прогноза параметра температуры на соответствующую дату

 

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

Работа, представленная в статье, проведена в рамках конкурсного проекта № 14-41-01635 при поддержке РФФИ.


Список литературы

 

1.     Marine environment monitoring service, http://www.myocean.eu/

2.     Black Sea Marine Forecasting Centre. Validation on ARGO buoys data. http://bsmfc.net/val_argo.php

3.     Black Sea Marine Forecasting Centre, http://bsmfc.net

4.     Экспериментальный центр морских прогнозов,  http://innovation.org.ru/instan_param.php

5.     Michael F.Lawrence and John Verzani The R Series, Programming Graphical User Interfaces in R. London: CRC Press. 2012. 463 p.

6.     Зарядов И.С. Введение в статистический пакет R: типы переменных, структуры данных, чтение и запись информации, графика. М.: Издательство Российского университета дружбы народов. 2010. 207 с.

7.     Функции в R, http://aakinshin.net/ru/blog/r/functions/

8.     Наглядная статистика. Используем R! http://ashipunov.info/shipunov/school/books/rbook.pdf

9.  Java Script Api Google Карт, https://developers.google.com/maps/documentation/javascript/examples/

10.  Opening grd files. http://www.filetypeadvisor.com/extension/grd




ANALYSIS AND COMPARISON OF SOFTWARE OF MARINE FORECAST'S VISUALIZATION BASED ON THE CALCULATED DATA OF OPERATIONAL OCEANOGRAPHY ON BLACK SEA BASIN BY THE EXAMPLE OF THE CRIMEAN REGION

N.N. Voronina, N.V. Inyushina, N.L. Mamchur, M.V. Kril

Marine Hydrophysical Institute RAS, Sevastopol, 299011, Russia

voronina.nataly@mail.ru, inushina@yandex.ru, natalymamchur@gmail.com, marusz@mail.ru

 

Abstract

This paper focuses on the results of software modules development using modern graphics resources in software products R, JS, PHP, HTML, as well on the tools of mapping service Google Maps. The result of these modules operation is a graphical display of the Black Sea geophysical parameters. The goal is to determine most sufficient means of representation at the highest rate for future use in the development of marine forecasts of operational oceanography. An important result is also the developing of a variety of imaging software means and making up evaluative recommendations on the use of each of them. In conclusion, the paper suggests possible future applications of the "union" of graphics and a satellite map service, namely the validation of marine forecasts.

 

Keywords: Black Sea, visualization, geophysical parameters, sea surface temperature, salinity of the marine environment, the software R, JS, PHP, HTML, mapping services Google Maps

 

References

 

1.     Marine environment monitoring service, http://www.myocean.eu/

2.     Black Sea Marine Forecasting Centre. Validation on ARGO buoys data. http://bsmfc.net/val_argo.php

3.     Black Sea Marine Forecasting Centre, http://bsmfc.net

4.     Eksperimental'nyy tsentr morskikh prognozov [Experimental Center of marine forecasts],  http://innovation.org.ru/instan_param.php

5.     Michael F.Lawrence and John Verzani The R Series, Programming Graphical User Interfaces in R. London: CRC Press. 2012. 463 p.

6.     Zaryadov I.S. Vvedeniye v statisticheskiy paket R: tipy peremennykh, struktury dannykh, chteniye i zapis' informatsii, grafika [Introduction to the statistical package R: variable types, data structures, reading and writing of data, graphics]. M.: Izdatel'stvo Rossiyskogo universiteta druzhby narodov. 2010. 207 s.

7.     Funktsii v R [The functions in R],   http://aakinshin.net/ru/blog/r/functions/

8.     Naglyadnaya statistika. Ispol'zuyem R! [Visual statistics. We use R!], http://ashipunov.info/shipunov/school/books/rbook.pdf

9.  Google Maps JavaScript API, https://developers.google.com/maps/documentation/javascript/examples/

10.  Opening grd files. http://www.filetypeadvisor.com/extension/grd