ПОЛУЧЕНИЕ ПЛОТНОГО СТЕРЕО ПОЛЕЙ МЕЗОСФЕРНЫХ СЕРЕБРИСТЫХ ОБЛАКОВ ПОСРЕДСТВОМ ИНФОРМАЦИОННОГО КОМПЛЕКСА «ПСИ»
© Сартин С.А.*, Рейбандт А.И.*
Северо-Казахстанский государственный университет, Республика Казахстан, г. Петропавловск
Разработана методика получения плотного стерео полей мезосфер-ных серебристых облаков. Произведено сравнение основных цветовых пространств. Выявлены диапазоны цвета и каналы, относящиеся к сегменту поля. Разработан пакет программ, позволяющий в автоматическом режиме рассчитывать стереобазу, необходимую для съемки облаков, синхронизировать пункты наблюдения, совмещать два видеопотока в анаглифное видео.
Ключевые слова МСО, стереобаза, программа стереоизображений, параллакс, анаглиф, цветовое пространство.
Мезосферные серебристые облака (МСО), самые высокие облачные образования в земной атмосфере, образующиеся на высотах 70-95 км. Их называют также полярными мезосферными облаками (polar mesospheric clouds, PMC) или ночными светящимися облаками (noctilucent clouds, NLC). Именно последнее название, наиболее точно отвечающее их внешнему виду и условиям их наблюдения, принято как стандартное в международной практике.
Изучение этого феномена затруднено их довольно высоким положением в атмосфере. При этом МСО могут являться маркером, показывающим движение атмосферных потоков на этих высотах.
В современной практике для детализации плоского изображения зачастую прибегают к методам объёмной визуализации, что позволяет более точно оценить распределение вещества в пространстве.
Аналогичным образом предлагается решить вопрос изучения особенностей морфологии МСО, направления развития и перемещения сегментов полей. Разработан метод получения плотного стерео для изображений полей серебристых облаков и его реализация в качестве информационного комплекса «ПСИ».
В основе построения модели лежит понятие угловой стереобазы снимки, для которой, производятся с двух разнесённых наблюдательных пунктов камерами, ориентированными на одну звезду.
* Старший преподаватель кафедры «Физика», кандидат физико-математических наук.
* Магистрант.
Согласно эмпирическим данным, стереобаза вычисляется из тех соображений, чтобы параллакс на переднем плане Рага11ах^оге был равен 3 мм., а для заднего плана это ограничение Рага11ахЬаск - 9 мм, в три раза больше (для комфортного рассматривания стереопары с расстояния в 30-40 см).
AngularBase, = 2 • arctg
Parallaxfore • (
fore f
Lf ^
fore ^
2 • M • (P - Lore )
где Ьуоге - расстояние до предмета, находящегося на переднем плане, -ближайшего к нам предмета; / - фокусного расстояние объектива; Ь - расстояние до точки фокусировки объектива; М - увеличение фотоаппарата, включая изменения размера при печати фотографий, сканировании, кадрировании и т.п.; Р - расстояние до оси вращения фотоаппарата.
Так же можно вычислять стереобазу и исходя из параллакса для заднего плана:
(
AngularBaseback = 2 • arctg
Parallax,
/ Lback •( f
L
back ^
2 • M • (Lback - P)
В итоге, исходя из неточностей измерений и приближенности эмпирических данных, мы получим два значения угловой стереобазы. Выбрать нужно наименьшее.
Если задний план находится в бесконечности, то формула упрощается:
AngularBasein
= 2 • arctgI Parallaxback •(L - f )
2 • M • f • L)
В случае если мы имеем фотоаппарат с не смещаемым объективом, выше рассмотренные формулы изменятся:
AngularBase, = 2 • arctg
Parallax fore •
Lf ^
fore
f
2 • M • (P - Lfore)
\
У
(
Angularßaseback = 2 • arctg
2 • M • (Lback - P)
AngularBasei
2 • arctg\
Parallax,
back
2 • M • f
Эти формулы можно использовать с хорошим приближением и для фотоаппаратов со смещаемым объективом, когда все расстояния намного больше фокусного (Ь >> /), то есть в нашем случае, когда расстояние до облака порядка десятка, а то и сотен километров.
Далее если пренебречь кривизной земной поверхности, то линейная база, или расстояние, на которое должны быть разнесены точки наблюдения:
Для вычисления величины P - расстояния до оси вращения фотоаппарата, или попросту расстояния до объекта наблюдения, воспользуемся методом описанном в источнике [1].
Определение расстояния до оси вращения фотоаппарата абсолютно одинаково для обеих точек наблюдения, поэтому рассмотрим только один случай.
1. Наблюдатель, находясь в точке наблюдения, делает так называемый пробный снимок, на котором должен находиться наблюдаемый объект и два ориентира с известными координатами, в качестве которых предлагается использовать звёзды.
2. С помощью приборов измеряется широта пункта наблюдения
Для вычисления расстояния от точки наблюдения до определённой точки серебристого облака воспользуемся формулой М.И. Бурова [1]:
где h - высота точки над горизонтом.
Высоту точки МСО можно определить по снимку. Для этого необходимо определить координаты положения линии горизонта и «нулевого» азимута на фотоснимке, а чтобы определить координаты положения линии горизонта и «нулевого» азимута, необходимо знать азимуты и высоты нескольких ориентиров.
1. Т0 = Тд - (пч + 1ч) - всемирное временя (времени в Гринвиче), где Тд (декретное время) - время получения снимка и пч (номер часового пояса).
5 = 7429
(--tg(h) + Vtg(h)1 + 0.022l) [1]
2. t = S0 + AS + X - а - часовой угол светила, где S0 - значение момента звездного времени на среднюю гринвичскую полночь (можно найти как
количество дней после 22 сентября), AS = 366 2422 . т , X - долгота пункта
365.2422 0 наблюдения и а - прямое восхождение светила.
3. Затем вычислим зенитное расстояние и высоту ориентира:
cos z = sin ф ■ sin S + cos ф ■ cos S ■ cos t z = arccos(cos z) h = 90° - z
где ф - склонение светила;
д - широта пункта наблюдения.
Зная азимуты и высоты ориентиров на снимке, определяем точку с координатами (x0,y0) (точка пересечения линии горизонта и «нулевого» азимута). Высота изменяется по оси ОУ и есть угол между «нулевой» высотой и точкой светила.
Тогда из геометрических соображений по снимку можно найти y0:
^ = th
r
где y0 - координаты «нулевой» высоты; r - радиус небесной сферы; y - координата ориентира на снимке; hj - азимут и высота ориентира на момент съемки.
Аналогичные формулы составим и для второго ориентира:
Уо - У 2
Тогда получим:
• = tgh2
_y2 ■ tghj - y ■ tgh2 y0 = "
tghj - tgh2
ГУо - Ус
у — У
Далее из —-— = ^ следует к = аг^
tgh
Эта эмпирическая формула выводилась, основываясь на Н - средней линейной высоты полей МСО над поверхностью земли равной 80 км, тогда:
P = ,j H2 + 7429 ■ (- tg (h) + V tg (h)2 + 0.022i)
[2]
r
2
И отсюда получим расстояние между двумя наблюдательными пунктами равно:
Вазе = 2 ^ГАп8и1агВа*е н, +
(
7429 •
-Уо , I Уо^Усо.
+ 0.0221
[3]
Предложенный метод был реализован в приложении «Стереобаза» входящего в информационный комплекс «ПСИ», в качестве ориентиров с известными координатами были выбраны звёзды. Программа позволяет провести соответствие между участком небесной сферы и изображение, и на основе этих данных вычислить среднее расстояние до полей мезосферных серебристых облаков. Алгоритм работы максимально автоматизирован: при загрузке изображения автоматически определяется дата и время его создания, в диалоговом окне остаётся только указать координаты места наблюдения, либо выбрать из ранее указанных, далее щелчками мыши на изображении указываются ориентиры - звёзды, при этом в каталоге выбирается пункт с названием и координатами данной звезды. Для выполнения начальных условий алгоритмов, количество ориентиров должно быть не менее двух, при выборе второго на изображении указывается линии горизонта и направления на север, что позволяет оценить точность выбора ориентиров. Далее программа в автоматическом режиме находит поле мезосферных серебристых облаков, вычисляет расстояние до каждой точки поля и находит среднее значение, по которому и вычисляет расстояние между наблюдательными пунктами по вышеприведённой формуле.
Рис. 1. Общий вид модуля «Стереобаза»
2
2
Г.
Г
А
После вычисления стереобазы проводится подготовка наблюдательных пунктов, она включает в себя:
- установка подвижного наблюдательного пункта на найденном расстоянии от первого - неподвижного наблюдательного пункта.
- выравнивание изображений и установки угла AngularBase посредством калибровочной сетки на обоих наблюдательных пунктах.
- установка связи между наблюдательными пунктами.
Связка программ Анаглиф-Сервер и Анаглиф-Клиент позволяет соединять наблюдательные пункты по двум схемам:
1. два наблюдательных пункта соединённых между собой один из которых работает как клиент и как сервер;
2. два наблюдательных пункта соединённые с сервером.
В целях упрощения взаимодействия и защиты данных, схема сети собирается на основе виртуальной частной сети - ОрепУРМ [2]. Передача видеоданных осуществляется с помощью библиотеки ЬШУЪС [3], по протоколу йр закодированные кодеком Н.264. Клиент позволяет в реальном времени складывать видеокадры и записывать либо воспроизводить результирующее видео в красно-голубом, монохромном, оптимизированном, желто-синем и тёмном анаглифах.
б)
Рис. 2. Общий вид (а) клиента и (б) сервера
Анаглиф-Сервер позволяет осуществлять захват видео с DirectX совместимых устройств (видеокамер, фотоаппаратов, ПЗС-матриц), осуществлять установки параметров видеоустройств, осуществлять трансляцию потокового видео в сеть Internet или Ethernet и сохранять видеопоток в файл. В приложение так же входит модуль выравнивания изображений. На захваченный видеопоток от камеры накладывается сетка, представляющая из себя две диагональные пересекающиеся линии, для облегчения наведения на объект, и прямоугольник со сторонами параллельными сторонам кадра, для установки одинакового угла наклона камеры в обоих наблюдательных пунктах.
Анаглиф-Клиент позволяет принимать видеопоток из сети Internet или Ethernet, преобразовывать два видеопотока в стереовидео посредством красно-голубого, «тёмного», монохромного, оптимизированного и желто-синего анаглифа и сохранять видеопоток в файл.
Зачастую не удаётся разместить обе точки наблюдения в населённых пунктах, к тому же стереобаза в некоторых случаях может достигать десятков километром, что исключает возможность прямого соединения компьютеров для более точного наведения объективов. В этих случаях, программный комплекс позволяет передавать видеопоток с более низким разрешением, по менее широкому каналу (к примеру, 3G модем), для синхронного наведения объективов, и записывать полноразмерное видео на жесткий диск.
При построении плотного стерео, для МСО, всё ещё остаётся проблемным поиск опорных точек в его структуре. Все современные методы поиска основаны на скачке градиента яркости в окрестности особой точки, в то время как значение яркости на снимках убывает снизу вверх, а в поле облака мы наблюдаем плавное изменение яркости, даже на границе особо ярких структур. В итоге получение карты глубины стандартными современными методиками не позволяет выявить рельефную структуру облака, более того, на большинстве полученного материала, мы имеем рельефность от фонарей, вершин деревьев и звёзд. Увеличение разностного контраста достигается применением фильтра, выявляющего структуры поля МСО, и осуществляющий дальнейший поиск опорных точек по их контурам. Спектр излучения сегмента облака инвариантен ко времени суток, фазе развития облака и места наблюдения. Данное свойство даёт возможность выявления структур, путём применения порогового классификатора по цветам.
Основным шагом решения задачи является выбор цветового пространства, для изучения были взяты RGB, YCbCr и HSV палитры. Чтобы выявить диапазон, в котором лежат цвета структуры поля МСО, было создано приложение, для работы с каналами различных палитр, и обработана база снимков прошлых наблюдательных сезонов.
Таблица 1
Сравнение экспериментальных данных
Палитра Канал Граничные значения
минимальный порог максимальный порог
ЯОВ Я 60 150
О 77 241
В 57 240
УСЬСг У 87 154
СЬ - -
Сг - -
HSV Н 14 255
8 - -
V 130 135
В результате проведения ряда экспериментов было установлено:
1. Каналы Я, в и В не выявляют структур облака, а лишь отсекают горизонтальные полосы, но в определённом диапазоне хорошо отсеивают пикселы принадлежащие фонарям, вершинам деревьев, красному свечению заходящего солнца, и т.п.
2. Канал V оказывает самое сильное влияние на выявление структур и имеет самый минимальный диапазон пропускания.
3. Каналы Н и У вносят небольшой вклад, так как частично дублируются другими каналами.
4. Каналы 8, СЬ и Сг не вносят существенного вклада в выявление структур, либо их действие дублируется сочетанием работы других каналов, их диапазон пропускания почти во всех опытных случаях равнялся общему диапазону канала.
а)
б)
Рис. 3. Пример исходного (а) и обработанного (б) изображений
Применение данного фильтра к фотографиям большого разрешения позволяет упростить процесс классификации структур, и в будущем с применением методов компьютерного зрения позволит автоматизировать ведение журнала наблюдений. В качестве примера, на рис 3 приведены изображения до и после обработки с использованием предлагаемого фильтра, причём на полученных изображениях определяются опорные точки даже при применении простейших детекторов.
Список литературы:
1. Бронштэн В.А. Серебристые облака и их наблюдение. - М.: Наука. Главная редакция физико-математической литературы, 1894. - 128 с.: илл. -Библиотека любителя астрономии.
2. http://openvpn.net.
3. http://www.videolan.org.
4. OpenCV [Электронный ресурс]. - Режим доступа: http://opencv.wil-lowgarage.com/wiki.
5. http://www.nvidia.com.
6. Bradski G, Kaegler A. Computer Vision with the OpenCV library. - 2008.
7. Yang Q., Wang L., Ahuja N. A constant-space belief propagation algorithm for stereo matching. - CVPR, 2010.
8. Stam J. (NVIDIA), Gallup D., Frahm J.M. (UNC). CUDA Stereo Imaging [Электронный ресурс]. - Режим доступа: http://openvidia.sourceforge.net/in-dex.php/OpenVIDIA.
9. Scharstein D., Szeliski R. A taxonomy and evaluation of dense two-frame stereo correspondence algorithms // International Journal of Computer Vision. -2002. - № 47 (1/2/3). - Р. 7-42.
10. Woetzel J., Koch R. Real-time Multi-stereo Depth Estimation on GPU with Approximative Discontinuity Handling [Электронный ресурс]. - 2004. -Режим доступа: http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=FE85 B8890FFE28137C2nF35343080DE?doi=10.U.1.3748&rep=rep1&type=pdf.