эффективная обработка астровидео

Автор dmdimon, 01.03.2012 01:18:52

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

dmdimon

на примере пресловутого видео Тьерри Лего про Ф-Г отсюда:
http://legault.perso.sfr.fr/phobos-grunt.html

предистория. Я являюсь экспертом в области цифровой обработки изображений - но никогда не имел отношения к астрофотографии. Ф-Г снова привлек мое внимание к космонавтике, а тут назрел и вызов профессионализму - в виде обсуждений довольно посредственно обработанных изображений Ф-Г (цветные такие).
Встал вопрос - почему при наличии видеосъемки - т.е. сотен или тысяч кадров результат так вял? Лучше не смогли или я чего-то не понимаю и лучший результат получить невозможно?

Итак, исходный материал - замечательное видео Тьерри, доступное всем по приведенной ссылке. Задача - получить существенно лучшее изображение - по сравнению с имеющимися в открытом доступе.
Результат:


сделано так:
1) разбираем видео на отдельные кадры
2) перегоняем в 64 бит FP для минимизации проблем квантования
3) нормализуем без клиппинга, с небольшим запасом в диапазон 0....1
4) апскейл 7х с линейной интерполяцией - для минимизации потерь при геометрических трансформациях кадров, коэффициент 7 - подобран как минимально приемлемый в нечетном ряду. Нечетный ряд обеспечивает сохранение пикселей-вершин с оригинальной интенсивночтью. Линейная интерполяция - для максимальной сохранности оригинальных градиентов.

5) Практика показывает, что на видео Тьерри суперразрешающие алгоритмы, примененные "в лоб", результата не дают. Причина проста (и я о ней уже писал) - Тьерри предварительно обрабаывает свое видео, усредняя кадры "скользящим окном", в данном случае в 10 кадров. Соответственно, следующий шаг выполняется "разреженным скользящим окном", т.е. на кадрах N, N+10, N+20, ... , N+90
Шаг таков - сложение кадров с предварительным совмещением по сдвигу, масштабированию и повороту - внимание - с опорой на градиенты, а не на спеклы, что принципиально важно.
Таким образом мы на этом этапе получаем операцию сходную с алгоритмом DRIZZLE. Естественно, она качественно хуже, т.к. мы используем реконструированную, а не точную информацию о привязке кадров - но намного лучше, чем ничего.

6) Этап 5 дает серию "суперкадров". Меряем на них ореолы, слегка давим unsharp masking'ом с соответствующим радиусом, получаем примерно такой результат:


7) дальше возможны варианты. Например, обычный shift&add, деконволюция и перераспреледение контрастов кривыми:


8) Гораздо интереснее другой способ. Бросаем кадры в _ХОРОШИЙ_ панорамер, проводим анализ по feature match + автоопределение параметров объектива + плавающая точка съемки. Эта комбинация позволяет совместить изображения по характерным элементам, компенсируя искажения, очень подобные искажениям от крупных, "медленных" атмосферных линз. Кроме того, приличные панорамеры при рендере в такой ситуации будут использовать суперразрешающие алгоритмы - при этом не коррелирующие с использованным на 5-м этапе.
результат(после деконволюции и кривых):

следим чтобы не было клиппинга на всех этапах, это важно!

применение того-же метода к другому видео Тьерри, по KH 186


как-то так.
push the human race forward

Lupus_sat

Очень интересно! А в каких программах проводится обработка?
---------------------------------------------------
Сайт по наблюдению ИСЗ: sat.belastro.net

dmdimon

разборка на кадры - непринципиально, лишь-бы не уродовать и в 16 бит хотя-бы

Все остальное - офигительный PixInsight
панорамер - Autopano Giga, можно Huginn (халява) и вероятно PTgui - давно не крутил. В автопано мне нравится детектор и скорость работы неимоверная.

кстати, я думаю тебе (ничего, что так?) будет интересно - я провел пару экспериментов по компенсации среды распространения. типа вот так:

слева - "фото", в центре - "априорное знание" справа - результат реконструкции "фото" восстановлением фазы в фурье-пространстве.
То-есть вполне себе перспективно при наличии в кадре опорной звезды. Да, "априорную" картинку я нарисовал от балды.

В принципе вижу два пути использования - обработка при наличии достоверного опорного объекта в кадре и имхо более перспективный - компенсация неидеальности оптики. Натолкнулся на проблему - не представляю как получить идеальную опорную картинку для тест-кадра. То-есть представляю, но это вне моих возможностей. Может, у вас там народу будет интересно поучавствовать? Есть пара мыслей по поводу оптической интерферометрии "на коленке", но экспериментировать не с чем.
И кстати спасибо - это по твоей наводке я вообще стал смотреть в сторону астрософта ;)
push the human race forward

Дмитрий Виницкий

Всегда опасался людей, заявляющих о себе "я - эксперт".
+35797748398

Lupus_sat

ЦитироватьВсе остальное - офигительный PixInsight
Ясно, где-то у меня лежит его бесплатная lite-версия, теперь они её убрали... С этой программой лично не работал (запускал пару раз), но она весьма популярна у астрофотографов, хотя и не так, как MaximDL.

Цитироватьпанорамер - Autopano Giga, можно Huginn (халява) и вероятно PTgui - давно не крутил.
Ммм... А для чего панорамер нужен был при обработке?



Цитироватьвполне себе перспективно при наличии в кадре опорной звезды.
Могу ошибаться, но при наличии опорной звезды в кадре, которую мылит также как объект, озображение хорошо получается восстанавливать деконволюцией. Не знаю, это то же самое, что и у тебя, или нет, не настолько в тему астрофото погружен, т.к. в астрофото меня привлекает процесс съёмки и "железо", а обработка и получение красивых картинок -- это не ко мне. :)

ЦитироватьВ принципе вижу два пути использования - обработка при наличии достоверного опорного объекта в кадре и имхо более перспективный - компенсация неидеальности оптики.
Опорную звезду не всегда видно при съёмке планет, которые почти не смещаются на фоне звёзд, а тут ИСЗ -- угловая скорость 0,5-2,6 градуса в секунду, какие там звёзды в кадре... Что касается неидеальности оптики, то моё мнение -- оптику можно съюстировать довольно хорошо (не забывая про ИК-блок фильты, т.к. хроматизм дополнительно портит всё), а вот с турбуленцией атмосферы поделать ничего нельзя. Точнее, почти ничего -- на апертуристых телескопах (апертурой более 30-40 см) можно и со спеклами побаловаться (есть даже любительская софтина по обработке видео-роликов для этого), про адаптивную оптику не говорю, т.к. апертуры не те у любителей, и возможности тоже. Как вариант побороть турбуленцию хоть немноо -- использовать светофильтры из БлИК области (типа ИКС-1, ИКС-3 и т.д., которые от 850 нм и выше прозрачные) -- в БлИК атмосфера меньше турбулит, чем в видимом диапазоне, особенно в фиолетово-синем.

По своему и не только опыту знаю, что любители при обработке изображений той же МКС нарезают видео-ролик, и колдуют над ним в RegiStax, Autostakkert!2, AviStack -- отфильтровывание замыленных кадров, сложение, вейвлеты, деконволюция -- в MaximDL или Astra Image. Основной смысл -- убить артефакты статистикой, т.к. числом пригодных по качеству кадров, идущих в сложение. С МКС такого счастья не особо бывает -- за пролёт удаётся получить несколько десятков кадров (по планетам за несколько минут получают 10-30 тысяч кадров, из которых после фильтрации остаётся процентов 30% -- сравни!), и приходится танцевать с бубном.

Для съёмки ИСЗ как раз и интересно выжать как можно больше из тех нескольких десятков кадров. Но тут тебе надо мануал написать для тех, кто хочет попробовать обработать твоей методой, хоть кратенький, т.к. простым перечислением программ тяжело пояснить тонкости обработки. Хотя, посмотрев неоднократно, как продвинутые аматеры занимаются обработкой, понимаю, что тут для достижения нирваны нужны регулярные тренировки. :)

ЦитироватьНатолкнулся на проблему - не представляю как получить идеальную опорную картинку для тест-кадра. То-есть представляю, но это вне моих возможностей. Может, у вас там народу будет интересно поучавствовать? Есть пара мыслей по поводу оптической интерферометрии "на коленке", но экспериментировать не с чем.
Раскажи, что за тесты надо -- скоро погода наладится, весенний сезон у нас, и народ снимать будет. Он и сейчас снимает -- что за опрная картинка?
---------------------------------------------------
Сайт по наблюдению ИСЗ: sat.belastro.net

dmdimon

ЦитироватьВсегда опасался людей, заявляющих о себе "я - эксперт".
А вы смотрите на результат их деятельности. Я вот показываю вам результат, на порядок лучший, чем получил из своих данных Тьерри, с которым я кстати переписывался по этому поводу. Исходники, из которых я результат получил - доступны. Вперед. Хотя-бы найдите в открытых материалах сходный результат если не сможете сделать сами. Потом опасайтесь.
push the human race forward

Дмитрий Виницкий

Знаете, я ничего в этом не понимаю. Но меня ровно также напрягает самоназывание себя экспертом, скажем, в области рака шейки матки.
Хотя, там я могу легко нагуглить хотя бы реальных светил, а вашем случае - сильно затрудняюсь.
+35797748398

dmdimon

зачем вам имена? Я показываю результат, который можно сравнить с любым другим, что вы сможете получить/найти. Оценивайте результат, а не имена/слова.
push the human race forward

Дмитрий Виницкий

Я же вас сказал, что не в состоянии оценить результат, ибо не знаю устройства шейки матки. Вы гарантируете, что оптические средства наблюдения ВС РФ не дали полноценных детальных снимков, в сравнении с которыми, ваши труды - изобретение деревянного велосипеда?
+35797748398

dmdimon

2 Lupus_sat
в данном случае панорамер работает нетривиальным образом - это не панорама, а мультисъёмка одного объекта с микросдвигами и искажениями. Панорамер делает feature match, для всех кадров строит сетку деформаций, предполагая, что этот объект мог быть снят с немного разных точек разными объективами - это в принципе примерно соответствует по эффекту крупным атмосферным линзам. При предварительной обработке у нас все равно высокочастотные компоненты этих (турбулентных) линз сильно подавлены. Таким образом мы с помощью панорамера получаем не просто shift, rotate, scale - а еще и компенсацию геометрических деформаций. Кроме того, как я уже писал, приличные панорамеры в зонах перекрытия кадров используют те или иные варианты суперразрешающих алгоритмов - а в данном случае у нас весь кадр является зоной множественного перекрытия. Естественно, надо настройки проставить соответствующие - и конечно-же исходные изображения для этого должны уже обладать выраженными фичами для совмещения. Ну и конечно можно совмещать эти фичи руками, а не в автоматике - но я гнал в автомате. Ну и плюс в режиме рендера результата надо проставить учет всех кадров - а не рендер из лучших, это обычно как-то типа exposure fusion называется. Как-то так.

PixInsight сейчас они дают полнофункциональный на 45 дней под любую платформу и он прилично изменился со времен лайта.

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

насчет оптики - идея следующая. Как не юстируй/полируй, все равно в реальном устройстве будет отклонение от идеальной оптической схемы этого устройства. Это отклонение в частности выразится в искажении фронта волны - которое я хочу скомпенсировать. Т.е. привести результат работы реальной оптики к результату ее идеальной оптической схемы. Надеюсь, что я не слишком мутно изъясняюсь)

идея примерно такая - на скамейке снимаем сетку точечных источников (белого с непрерывным спектром или узкоспектрального - надо подумать), полученный реальный кадр и _рассчитанный_ для этой оптической системы идеальный кадр этой сетки будут опорой для определения искажений волнового фронта, которые потом можно будет вычитать из всего, что снято системой. Понятно, что есть  нюансы, но в общем виде идея именно такова - и математически там все в порядке. Собственно, картинка, что я привел - это как раз модельрование такого способа.

Вроде-бы на вашем астрофоруме я видел результаты работы софта по моделированию изображений в оптических системах, но изучать еще и эту область в общем не потяну думаю - да и телескопом не обладаю (и заводить смысла нет - Москва, без дачи, второй этаж). Соответственно, если бы кто-то знающий поучаствовал...

Насчет статистической обработки все понятно, но совсем не так интересно. Интересно было бы попробовать  Speckle - но нигде не могу ее найти...

Сильно перспективно все-таки интерферометрией, там за счет больших потерь апертуры теоретически можно сминусовать турбулентность - но хотелось бы с вещей попроще начать получать результаты...


Да, кстати по адаптивной оптике - есть смешное место, где можно ее позаимствовать. Это офтальмологическое оборудование )
push the human race forward

dmdimon

ЦитироватьВы гарантируете...?
Я гарантирую, внимание: что мой способ обработки дал наилучший из имеющихся в открытом доступе результатов. В том числе (но не только) как на тех-же исходных материалах, так и на произвольных других любительского класса.
Также я гарантирую, что этот способ именно _мой_, а не инструкция, прочитанная в интернете.

О чем и написал еще в первом посте.
И для того, чтобы сравнить два изображения, не надо быть экспертом в обработке. Тем более, что вы знаете, как на самом деле выглядит объект съёмки.

Что ВКС России  получило Окном - мне неизвестно и глупо мерять результаты систем разного класса. Возможно имея данные с Окна я своим способом получил бы лучшее изображение, чем есть в распоряжении ВКС - понятия не имею. Учитывая разную целевую задачу мою и комплекса Окно, шансы кстати неплохие.
push the human race forward

6717898

Цитировать
ЦитироватьВсегда опасался людей, заявляющих о себе "я - эксперт".
А вы смотрите на результат их деятельности. Я вот показываю вам результат, на порядок лучший, чем получил из своих данных Тьерри, с которым я кстати переписывался по этому поводу. Исходники, из которых я результат получил - доступны. Вперед. Хотя-бы найдите в открытых материалах сходный результат если не сможете сделать сами. Потом опасайтесь.

-Да куда ему..


Здорово он Вас "отбрил" , Vinni :!:
Браво Димон, так держать :!:  :D

dmdimon

за границей турбулентности, на границе дифракционного предела:

исходники известны.
Вначале, уж простите, дефокус. _Возможно_ (зависит от количества свободного времени) попробую убрать и эту проблему.

накладные расходы - примерно 22-24 часа машинного времени на 5-7 ядрах 2,6 ггц без ограничений по памяти и дисковой подсистеме на весь ролик. Обработка проведена без предварительного отбора "лучших" кадров.
push the human race forward

zyxman

Цитироватьидея примерно такая - на скамейке снимаем сетку точечных источников (белого с непрерывным спектром или узкоспектрального - надо подумать), полученный реальный кадр и _рассчитанный_ для этой оптической системы идеальный кадр этой сетки будут опорой для определения искажений волнового фронта, которые потом можно будет вычитать из всего, что снято системой. Понятно, что есть  нюансы, но в общем виде идея именно такова - и математически там все в порядке. Собственно, картинка, что я привел - это как раз модельрование такого способа.
Мысль интересна.
ЦитироватьДа, кстати по адаптивной оптике - есть смешное место, где можно ее позаимствовать. Это офтальмологическое оборудование )
А цена? - Я как-то интересовался у знакомого оптикой из стоматологии - так вот, микровидеокамера для зубов продается за тысячи евро, при том что если хорошо поискать, практически с идентичными параметрами микрокамеру для полостных исследований можно купить за порядка 400$, но на открытом рынке по адекватной цене такие штуки найти крайне сложно.
"Демократия, это когда царь умный, а также добрый и честный по отношению к своим холопам".
--
Удача - подготовленный успех!

dmdimon

Цитировать
Цитироватьидея примерно такая ...
Мысль интересна.
И как оказалось - не только мне. В 2011 году сделали впечатляющий доклад с примерами на IEEE International Conference on Computer Vision 2011

насчет  цены адаптивной оптики - мне так и не удалось ее найти. Но в отличии от разнообразных модулей "сделай сам, не знаю как", которые тоже не вполне дешевы, там есть одно или два готовых решения, которые самодостаточны. К сожалению, у них невысокое быстродействие - типа до 30 герц чтоли, не помню.
push the human race forward

G.K.

А зачем адаптивная оптика в стоматологии?
https://docs.google.com/spreadsheet/ccc?key=0AtceJ_4vZ7mSdDV4QWVVdEY0RXRFQUc0X05RZjFpN1E#gid=10
Планы пусков. Обновление по выходным.

dmdimon

в ОФТАЛЬМОлогии )
когда смотрят на глазное дно - очень мешают работать "живость" оптических элементов собственно глаза. Адаптивкой их компенсируют и получают нормальную картинку глазного дна и всякого такого.
push the human race forward

G.K.

ЦитироватьЯ как-то интересовался у знакомого оптикой из стоматологии - так вот, микровидеокамера для зубов
Ой, простите.  :oops: там про камеру в зубе вспомнили, вот меня и переклинило.  :oops:

Цитироватьнасчет цены адаптивной оптики - мне так и не удалось ее найти.
Вот вы, как я понимаю, хотете сделать дешёвую адаптивную оптику?
Может стоит попробовать пообщаться со специалистами в оптике и с потенциальными изготовителями, может кто и сделает не "набор сделай сам" а что-то более осмысленное? ИМХО конечно.
https://docs.google.com/spreadsheet/ccc?key=0AtceJ_4vZ7mSdDV4QWVVdEY0RXRFQUc0X05RZjFpN1E#gid=10
Планы пусков. Обновление по выходным.

dmdimon

ЦитироватьВот вы, как я понимаю, хотете сделать дешёвую адаптивную оптику?
Может стоит попробовать пообщаться со специалистами в оптике и с потенциальными изготовителями, может кто и сделает не "набор сделай сам" а что-то более осмысленное? ИМХО конечно.
слишком дорогое изделие и очень узкий рынок ИМХО. Плюс за лазерную звезду я уверен что в европейской части России частному лицу могут и бошку открутить. А без искусственной звезды очень сужается диапазон объектов для наблюдения.

Я этот вопрос затронул только потому, что не встречал вообще ни одного описания любительских систем с адаптивкой.
push the human race forward

zyxman

ЦитироватьВот вы, как я понимаю, хотете сделать дешёвую адаптивную оптику?
Может стоит попробовать пообщаться со специалистами в оптике и с потенциальными изготовителями, может кто и сделает не "набор сделай сам" а что-то более осмысленное? ИМХО конечно.
Я пробовал общаться с специалистами, по крайней мере в наших краях.
Обычно у них сразу загораются глаза, ровно до момента когда наступает понимание что много денег не будет :D
А потом уже выясняется, что забесплатно их уже и так всякие деятели по их основной работе нагружают и в хвост и в гриву, и ничем иным кроме денег в данном контексте в бывшем СССР специалиста не заинтересуешь, тк все специалисты находящиеся тут практически всегда женаты и не пьют много.

Насчет Европы/США сложно сказать - я пока еще лично мало сталкивался, но знаю точно, что у них там несколько другая жизненная философия, которая не просто не отвергает волонтерское участие в всяких разных безумных проектах, а даже и поддерживает таковое участие (из соображений повышения командного духа, а также из соображений улучшения интеграции человека в общество).

Например, про западную жизненную философию, мне недавно рассказывали любопытную историю из Парижа - там была некоторая девушка, которая жила в бедном районе и многократно переезжала; и ей ВСЕГДА совершенно бесплатно помогали переезжать соседи и друзья;
но когда у этой девушки в какой-то момент дела пошли круто в гору и она собралась переехать в престижный район, то НИКТО не пришел ей помочь в переезде - ВСЕ отказали, сославшись на какие-то срочные и неотложные дела :lol:
"Демократия, это когда царь умный, а также добрый и честный по отношению к своим холопам".
--
Удача - подготовленный успех!