Программный комплекс Апекс-II для астрометрической и фотометрической обработки ПЗС-наблюдений естественных и искусственных тел Солнечной системы.
Куприянов В.В.
ГАО РАН Универсальный программный комплекс Апекс-II предназначен для
высокоточной автоматизированной астрометрической и фотометрической
обработки и эфемеридного обеспечения ПЗС-наблюдений естественных и
искусственных тел Солнечной системы. В настоящее время Апекс-II
используется для обработки наблюдений, полученных в ГАО РАН, САО РАН,
обсерватории Тариха (Боливия), а также в обсерваториях
Майданак (Узбекистан), Абастумани (Грузия), Маяки (Украина) и на
других наблюдательных площадках сети ПулКОН. Специализированные
приложения, разработанные на базе Апекс-II, позволили значительно
повысить точность астрометрической редукции наблюдений малых тел
Солнечной системы, выполняемых на автоматическом зеркальном астрографе
ЗА-320М в ГАО РАН; также, с их помощью был обнаружен ряд новых
фрагментов объектов ГСО в рамках проекта ПулКОН. Апекс-II представляет
собой открытую программную платформу, основанную на высокоуровневом
языке сценариев обработки и развитой библиотеке модулей для решения
широкого круга задач практической астрономии. На данный момент система
является единственным в мире специализированным программным пакетом,
предназначенным для высокоточной полностью автоматической редукции
широкого спектра ПЗС-изображений. Возможности программного комплекса
Апекс-II позволяют применять его для массовой первичной обработки
изображений в программах мониторинга астероидов, сближающихся с
Землей, контроля околоземного пространства, а также мониторинга любых
других транзиентных явлений (малые тела Солнечной системы,
послесвечение космических гамма-всплесков, вспышки сверхновых и т.д.)
в оптическом и инфракрасном диапазоне.
Архитектура и принципы построения системы Апекс-II во многом подобны
принципам, использованным при создании таких широко применяемых
астрономическим сообществом программных пакетов, как IRAF, MIDAS и
IDL. Подобно этим пакетам, Apex II включает ядро с интерпретатором
высокоуровневого языка программирования:
Как показала практика, такая структура является наиболее гибкой и
универсальной. Она позволяет, в зависимости от особенностей решаемой
задачи и индивидуальных предпочтений астронома, как проводить
интерактивную обработку в режиме командной строки, с возможностью
вывода и визуализации промежуточных результатов, так и создавать
полностью автоматические конвейеры для обработки больших массивов
данных или законченные приложения с графическим пользовательским
интерфейсом, ориентированные на какой-либо класс астрономических
задач.
В отличие от перечисленных выше пакетов обработки, Apex II основан не
на специально разработанном для него интерпретируемом языке, а на
широко распространенном универсальном объектно-ориентированном языке
сценариев Python. Такой выбор обусловлен, прежде всего, простотой и
гибкостью языка, существованием его реализаций для всех основных
аппаратно-программных платформ и наличием развитой библиотеки функций
для решения большинства часто возникающих задач, таких как ввод-вывод,
визуализация данных и стандартные математические операции -например,
матричная алгебра, регрессия и обработка n-мерных изображений. Вопреки
достаточно распространенному мнению о низкой производительности
программ, написанных на интерпретируемых языках, сценарии Python
зачастую имеют даже большую производительность по сравнению с
аналогичными программами, написанными на классических компилируемых
языках. Это обусловлено, прежде всего, высокой степенью векторизации
операций. Помимо большей компактности и ясности программного кода, это
приводит к тому, что наиболее интенсивные в вычислительном отношении
участки алгоритма исполняются внешними модулями, написанными на языках
C и Fortran и оптимизированными для данной аппаратно-программной
архитектуры.
Все эти преимущества в настоящее время начинают привлекать ведущих
разработчиков программного обеспечения для научных исследований;
свидетельством этого является, например, проект PyRAF
(www.stsci.edu/resources/software_hardware/pyraf) для создания на
языке Python сценариев обработки в среде IRAF. Стандартная библиотека
Apex II базируется, прежде всего, на пакетах Numerical Python и
Scientific Python (NumPy/SciPy, www.scipy.org). Первый из них
реализует базовые операции для работы с числовыми массивами, включая
векторизацию операторов и функций и матричную алгебру; второй содержит
реализацию основных алгоритмов, используемых в научных приложениях -
преобразования Фурье, интегрирование функций, решение дифференциальных
уравнений, интерполяцию, оптимизацию и нелинейную регрессию, обработку
сигналов и n-мерных изображений, вычисление специальных функций и др.
Основываясь на этих алгоритмах, а также на встроенных функциях Python,
библиотека Apex II реализует различные операции более высокого уровня,
характерные для задач обработки астрономических изображений - это,
прежде всего, преобразование шкал времени, калибровка и фильтрация
ПЗС-изображений, автоматическое выделение объектов, аппроксимация
изображений объектов модельными профилями (PSF fitting),
астрометрическая и фотометрическая редукция, работа с различными
каталогами объектов и т.д.
Графическая подсистема Apex II основана на мультиплатформенной
библиотеке для разработки графических интерфейсов wxWidgets/wxPython и
пакете визуализации научных данных matplotlib (www.wxpython.org,
matplotlib.sourceforge.net). С помощью данных пакетов можно
осуществлять визуализацию индивидуальных ПЗС-изображений и полей
каталогов, построение графиков различных зависимостей, полученных в
ходе обработки, а также создавать автономные приложения с графическим
пользовательским интерфейсом, приспособленные для интерактивной
обработки какого-либо класса астрономических изображений.
Таким образом, Apex II является, прежде всего, универсальной
программной платформой для разработки систем редукции широкого спектра
астрономических данных. В частности, платформа Apex II используется
для решения задач астрометрической и фотометрической редукции массивов
наблюдений объектов Геостационарной орбиты. Обработка наблюдений
проводится в автоматическом и полуавтоматическом режиме. Существующий
для этого конвейер обработки ПЗС-изображений объектов ГСО включает в
себя следующие этапы:
В настоящее время пакет автоматизированной обработки изображений
объектов ГСО, созданный на базе платформы Apex II, применяется в
рамках проекта ПулКОН в обсерваториях Майданак, Абастумани и Маяки, а
также в САО РАН. Обработка наблюдений проводится в системе каталогов
USNO-A2.0, USNO-B1.0, UCAC-2, Tycho-2, HIPPARCOS.
Для автоматизации процесса обработки наблюдений с использованием Apex
II с выдачей результатов (времени наблюдения, координат объекта, его
звездной величины, сравнение с эфемеридными значениями и другой
информации) в принятом формате, планируется создание программной
системы для расчета эфемерид объектов геостационарной орбиты. Эта
программная система будет также использована, как модуль для
вычисления эфемерид в среде программного обеспечения
автоматизированных телескопов.
|