DOU Проектор: CoLiTec — астрософт, від якого залежить безпека Землі
У рубриці DOU Проектор всі бажаючі можуть презентувати свій продукт (як стартап, так і ламповий pet-проект). Якщо вам є про що розповісти — запрошуємо взяти участь. Якщо ні — можливо, серія надихне на створення власної made in Ukraine продукту. Питання і заявки на участь надсилайте на [email protected] .
Привіт, мене звати Сергій Хламов . Я — Senior Test Engineering Consultant (GlobalLogic , Харків), PhD (математичне моделювання та обчислювальні методи). Але, крім цього, у мене є незвичайне захоплення. В якості Team Lead команди CoLiTec (Collection Light Technology — технологія збирання світла) я беру участь у розробці астрософта — програмного забезпечення для обробки астрономічних зображень. Чому від цього залежить безпека Землі і як це може допомогти астрономам з усієї планети — далі у моїй статті.
Впевнений, у вас виникне питання: як моя основна діяльність і хобі пов'язані? Відповім просто — ніяк, але одне не було б без іншого. Навички, які допомагають мені ефективно займатися проектом CoLiTec, а саме — основи менеджменту, знання життєвого циклу продукту, бізнес-принципи, міжнародні процеси та робота з клієнтами, скіли для міжнародного співробітництва — все це я придбав завдяки майже 5-річному співпраці з GlobalLogic. Крім того, люди в компанії надихають мене — колеги по проектам діляться зі мною корисною інформацією зі своїх сфер розробки або новинами астрономії. В свою чергу я після відвідин конференцій намагаюся передавати знання і їм. Така синергія і загальна позитивна атмосфера допомагають мені надихатися і розвиватися в обох напрямках.
Ідея
Ні для кого не стане відкриттям, що існує величезна кількість астероїдів, комет, метеорів, метеоритів, які є об'єктами Сонячної системи (Solar System Objects, або SSO/СЗГ). У кожного ССО є своя орбіта і траєкторія руху. Буває так, що на певний момент часу орбіта СЗГ перетинається з орбітою Землі або проходить дуже близько до неї.
Кількість відомих потенційно небезпечних об'єктів, що зближуються із Землею, дуже швидко зростає. Проблема астероїдно-кометної небезпеки в XXI столітті стала однією з топ-тем наукових конференцій, які проводять ESA, NASA і GAIA, вона регулярно розглядається ООН, урядами та парламентами провідних країн світу, впливовими громадськими організаціями.
Але як ми можемо захистити планету від астероїдів? Відправити Брюса Вілліса на астероїд як у фільмі «Армагеддон»? Ні, це ж не Голівуд...
Вчені всього світу розробляють різні способи запобігання зіткнення космічних об'єктів з Землею. Дуже важливим є первинний етап боротьби з «летять на Землю камінням»: генерація попереджень при виявленні небезпечних об'єктів. Чим раніше буде «аларм», тим більше буде часу на реагування (відправлення Брюса). Саме тому все більше уваги приділяється розробці засобів і методів виявлення і моніторингу об'єктів, що зближуються із Землею. У цьому зв'язку астероидные огляди з автоматичною обробкою їх результатів в даний час є значущим напрямком астрономії. І наш проект — CoLiTec — якраз і присвячений цій проблематиці.
Про проект
CoLiTec був створений 1 березня 2009 року під керівництвом доктора технічних наук, професора Вадима Євгеновича Саваневича , члена Міжнародного Астрономічного Союзу (IAU — International Astronomical Union). Ми — команда розробників, яка займається створенням астрософта. Крім того, ми займаємося науковою діяльністю, у тому числі написанням статей і дисертацій.
Я з дитинства мріяв про телескоп, тому і вирішив стати частиною проекту CoLiTec, як тільки дізнався про нього, а саме у 2012 році. Тепер я спостерігаю небо «очима» телескопів, що знаходяться в різних обсерваторіях світу.
Команда проекту поставила перед собою два основні завдання:
- Створити універсальне програмне забезпечення, яке може максимально спростити роботу спостерігача (астронома) із застосуванням сучасних IT-технологій за рахунок автоматизації процесу.
- Удосконалити та розробити нові обчислювальні методи обробки різноманітних даних з подальшою їх инкапсуляцией в наукомістке.
І ми створили ЗА CoLiTec, яке обробляє серії цифрових кадрів з телескопів різних обсерваторій і в автоматизованому режимі виявляє астероїди і комети в реальному часі.
ЗА CoLiTec володіє здатністю виявляти на серії цифрових кадрів рухомі об'єкти в широкому діапазоні швидкостей. А саме, дуже повільні, дуже швидкі об'єкти та об'єкти, рух яких на серії цифрових кадрів непомітно неозброєним оком.
Робота заснована на унікальних обчислювальних методах, логіки і архітектури. Більше того, нам вдалося адаптувати до використання на широкопольных телескопах. І ось вже 7 років наша розробка успішно експлуатується в дистанційно керованих обсерваторіях на територіях України, Словаччини, Чехії, Бельгії, Таїланду, Китаю, а також у безлічі аматорських обсерваторій. З допомогою CoLiTec вперше були відкриті в автоматизованому режимі астероїд і комета в країнах СНД і Балтії.
Астрономи завдяки успішній експлуатації ЗА CoLiTec відкрили понад 1500 астероїдів, 4 комети і трохи менше ніж мільйон вимірювань, відправлених та зареєстрованих в MPC . За 8 років ми розробили 8 продуктів для астрономічних досліджень, які доповнюють один одного, так і можуть використовуватися автономно. Більш докладно про них і використаних IT-технологіях я розповім нижче.
Реалізація
Тепер давайте розглянемо, які використовує вхідні дані ПО CoLiTec. Спостереження СЗГ здійснюється з допомогою телескопа, оснащеного CCD-матрицею. Зображення небесних об'єктів формується в фокальній площині телескопа, результатом чого є CCD-кадр — бінарний файл з розширенням *.fit, *.fits або *.fts, в якому окрім самого зображення «зашитий» ще й заголовок кадру з усією необхідною інформацією . На цьому ми не зупинятимемося, оскільки чітких правил оформлення таких заголовків немає навіть у MPC.
Так от, після формування «входу» починається обробка серії цифрових кадрів. Саме виявлення рухомих об'єктів відбувається у кілька етапів. Цикл обробки з допомогою CoLiTec у вигляді спрощеної блок-схеми наочно представлений на малюнку нижче.
Програма вичитує масив яскравостей кожного CCD-кадру серії, отриманих від обсерваторії за ніч. Після цього проводиться косметична обробка кадрів, застосування службових майстер-кадрів (Dark, Flat, Bias, DarkFlat), а також яркостное вирівнювання фону зображення.
Далі слід внутрикадровая обробка: оцінка стану об'єктів у фіксовані моменти часу. І завершальний етап: межкадровая обробка. Вона використовується для виявлення об'єктів і оцінки параметрів траєкторій їх руху об'єктів.
Ядром ЗА CoLiTec є попереднє виявлення об'єктів на основі накопичення статистик вздовж траєкторій кожного об'єкта. Діапазон видимих швидкостей руху виявлених об'єктів становить 0,8-40,0 пікс./кадр. Наприклад, найшвидшим з спостерігалися астероїдів, що зближуються із Землею, є астероїд K12C29D (40 пікс./кадр), а самим повільним об'єктом є комета ISON C/2012 S1 (0,8 пікс./кадр).
За рахунок унікальних розроблених обчислювальних та математичних методів наше забезпечує 100 % достовірність виявлення у разі наявності хоча б чотирьох послідовних кадрів, якщо при цьому не було суттєвих перешкод. Але навіть якщо на кадрах присутні серйозні перешкоди, то точність знижується до рівня не нижче 70 %. З більш детальною інформацією про точності вимірювань ЗА CoLiTec можна ознайомитися в статті MNRAS (Impact Factor — 4.95) .
Особливе значення має режим OLDAS (On-line Data Analysis System). Він дозволяє оперативно обробляти дані і призначати підтвердження найбільш цікавих виявлених об'єктів в ніч їх попереднього відкриття. Це означає, що як тільки телескоп формує кадр, наші «браві клони» підхоплюють його і починають обробку. Що це за «клони»? Це спеціально розроблена програма, яка має децентралізовану систему управління і не залежить від основної програми. Вона вміє створювати свої копії відповідно до доступними вільними завданнями (на будь-якому з етапів обробки). Технологія використовує процеси з запобіганням колізії, тобто одну вільну завдання відразу 2 «клони» не зможуть взяти, всі вони працюють паралельно і асинхронно.
Під час створення нової версії CoLiTec були застосовані нові принципи, перехід на кросплатформеність, а також переглянуті підходи для якісного контролю виконуваного процесу обробки.
При створенні основних модулів з GUI застосовувалася платформна технологія Java FX 2.0. Такими модулями є CoLiTec Control Center і редактор налаштувань ThresHolds.
Основна «шина» для контролю обчислювального процесу та поетапної обробки реалізована на Java 8. У ній також використовується технологія предметного посередника.
Нижче представлені деякі з підходів для якісного контролю виконуваного процесу обробки:
- Впорядковане зберігання всіх необхідних параметрів обробки дозволяє структурувати витягувати параметри окремо для кожного модуля. На даний момент застосовується XML.
- Мультипоточность, можливість управління окремими процесами обробки. Впроваджена система відстеження всіх запущених модулів під час обробки. Дана система дозволяє коректно, без втрат даних, відстежити і за необхідності завершити обробку на будь-якому її етапі.
- Система для прийняття рішення про результати обробки дозволяє адаптувати користувальницькі налаштування, а також повідомляти користувачу коректні результати на кожному етапі обробки.
- Посилений контроль вхідних і вихідних даних, який проводиться на кожному етапі обробки, що дозволяє точно перевірити цілісність всіх даних.
Описані вище підходи використовуються в редакторі налаштувань і на кожному етапі обробки як внутрішніх перевірок основного конвеєра обробки.
Для кожного етапу обробки проводиться наступна послідовність операцій для модулів:
Система моніторингу повідомлень з докладним логированием процесу обробки включена в CoLiTec Control Center. Даний підхід реалізується за рахунок обміну даними з реляційною базою даних. В якості такої обрана PostgreSQL, яка може бути застосована на будь-яких ОС. Ця БД може розгортатися як локально у користувача, так і бути централізованою на сервері.
Перегляд результатів роботи ЗА CoLiTec здійснюється за допомогою зручного вьювера LookSky, який також є частиною ЗА CoLiTec. А для того, щоб можна було контролювати результати з будь-якої точки світу, ми розробили мобільну версію вьювера.
Остання версія LookSky є кроссплатформної і реалізована на Lazarus. Вона працює окремо від основної програми. З допомогою LookSky можна незалежно переглядати результати роботи ЗА CoLiTec, в той час як основна програма продовжує обробку даних. Зв'язок між цими окремими блоками здійснюється через такі файли: *.dat для передачі даних про зоряних каталогах; *.xml — для передачі керуючих патернів для завантажуваних модулів; *.bin — бінарні файли з зображеннями, стробами або мітками.
Це реалізує ідеологію відкритої архітектури і дозволяє використовувати незалежно розроблені програмні засоби на кожному етапі обробки.
Нижче представлений приклад результатів роботи ЗА CoLiTec. Зліва відображається серія сирих кадрів, а праворуч — їх вирівняне і відцентрувати зображення, а також виявлені рухомі об'єкти.
На даний момент важливо обробляти не тільки нові дані, одержувані від обсерваторій, але і архівні дані з різних телескопів і МРС. Це дозволяє виявляти потенційно небезпечні астероїди і поширювати попередження завчасно.
Першим кроком до створення такої системи служить розроблене в рамках системи CoLiTec для зберігання і публікації кадрів. Дане ПЗ дозволяє вести архів кадрів і шукати кадри за заданими параметрами (координатами). В ньому реалізований зовнішній доступ до архіву через власний веб-інтерфейс і сервіс Aladin. З використанням Aladin у відкритому доступі зберігається вже близько 50 000 кадрів, знятих з 2010 року.
На даний момент розробляється масштабний інноваційний проект — Віртуальна обсерваторія (ВО). В рамках цього проекту будуть об'єднані найтоповіші технології Big Data і Data Mining. З допомогою ПІД кожен астроном світу зможе мати доступ до різних даних, а саме кадрів, інформації про зірки, галактики, об'єктах, що зближуються з Землею, відомих астероїдів, даними з зоряних каталогів, кривими блиску змінних зірок і багато чому іншому. Цей проект вміщує в себе всі існуючі продукти CoLiTec, а також безліч нових доробок, які будуть працювати на серверній стороні. Клієнту буде надано особистий кабінет з великою кількістю можливостей.
Також розробляється сервіс для онлайн-обробки цифрових кадрів або відео. В даному випадку користувачу не потрібно буде нічого встановлювати, а потрібен лише доступ в інтернет. Вся обробка буде проходити на нашій стороні сервера з використанням розроблених продуктів у відповідності з необхідними завданнями. Користувачеві буде надіслано повідомлення про успішну обробку його даних та надано доступ до архіву з вихідними даними.
Цей проект вже схвалено Космічним Агентством України і нашими словацькими колегами з Vihorlat Observatory in Humenn? . Проте фінансування на сьогоднішній день відсутня і розробка проводиться на добровільних засадах.
Результати
З використанням CoLiTec за 2011 — 2014 року проведено 80 % спостережень в СНД (86 % в Балтії) і зроблено 74 % відкриттів астероїдів у СНД (75 % в Балтії), а також було відкрито 4 комети з 7, відкритих в СНД та Балтії більш ніж за 20 останніх років.
Команда CoLiTec отримала рекомендацію GAIA (Global Astrometric Interferometer for Astrophysics, Франція), як програма для виявлення слабких рухомих об'єктів і стала переможцем Міжнародного конкурсу інноваційних проектів «IT-Kharkiv» . Проект вже кілька років підтримують такі організації як GAIA, ISON, КАУ, ГАО НАНУ і РІ НАНУ.
На даний момент у нашій команді 7 кваліфікованих професіоналів з вченими званнями і величезним досвідом роботи, які за роки роботи над проектом створили 9 патентів , а також випустили понад 200 наукових публікацій і статей .
Найголовніша мета для нас — поліпшення точності вимірювань положень космічних об'єктів за рахунок резервів сучасної астрометрії і фотометрії. Ми постійно розвиваємо проект і зараз бачимо такі подальші напрямки наших розробок:
- можливість індивідуальної прив'язки астрометрической і фотометричної редукції до телескопів і підвищення за рахунок цього точності спостережень;
- створення нових та удосконалення вже розроблених і впроваджених в CoLiTec обчислювальних методів для дослідження параметрів внутрикадровой і міжкадрової обробки з метою підвищення точності вимірювань.
Також нам цікаво розширювати ряд обсерваторій, які використовують ЗА CoLiTec для отримання більшого різноманіття специфічних вхідних даних, що дозволить покращувати як точнісні характеристики, так і потенціал виявлення.
Звичайно, є й інше для обсерваторій, але, як видно з порівняння з Astrometrica , ми багато попрацювали, щоб перевершити аналоги. Також ми в пошуку грантів та співпраці зі спонсорами для підвищення ефективності наших досліджень і піднесення української науки до міжнародного рівня. Так, наша команда амбітна.
Спасибі за приділений час! Сподіваюся, моя стаття сподобалася і зацікавила вас. Більш детальніше про проект читайте на сайті .
Якщо у вас є питання чи пропозиції, буду радий на них відповісти на [email protected] .
Опубліковано: 20/06/17 @ 10:00
Розділ Софт
Рекомендуємо:
Все, що вам потрібно знати про формати звітів у тестуванні З
Кейс Kwork – сэкономил 1800 руб. и получил 25 ТИЦастых ссылок
Как заставить контент работать эффективнее для увеличения поискового трафика
Как за 1.5 месяца сделать 1027500 рублей на трафике по бизнес-планам
Как победить Баден-Баден: ответы на часто задаваемые вопросы