PDA

Просмотр полной версии : Anti-noise v0.75


CombaSoft
10.05.2005, 00:14
Нужны бета-тестеры этого добра. Будут тестеры - более подробно напишу что к чему

Vladilen Ural
10.05.2005, 11:54
Программа запустилась нормально, даже без файла txt сообразил что означают OpenA, B, C.
Однако в какой последовательности используются band1, 2, 3 не совсем понятно, будем пробовать. Попробовал обработать старый снимок, результат показал, что программа, действительно не просто сигнализировала о ходе операций, но и действительно, что-то выполняла. Исходный и обработанный кадр явно отличались. На обработанном кадре субъективно выше контраст и появились черные точки. Похоже, в этих местах программа перестаралась в борьбе со шумом. Наверное:
а) нужны дополнительные регулируемые настройки для глубины проработки.
б) программа не понимает JPEG измученных файлов;
На сегодня считаю что наиболее эффективные методы для снижения шума по мере убывания:
1)Обладание качественной ПЗС матрицей и не шумным усилителем :-) ;
2)Снижение температуры матрицы;
3)Суммирование кадров;
4)Программная обработка.

CombaSoft
10.05.2005, 12:34
Похоже, пора прояснить ситуацию с тем _что_ это и _для_чего_ это. Итак. Это прога, написанная для удаления шума из фоток ночного неба, сделанных цифромылом. Минусы проги : требуется 3 входных файла и обрабаиываются _только_ звезды. То, для чего нужны band1, band2 and steps расккажу сейчас. Но, сначала скажу _какие_ 3 входные файла прога ожидает. Во-первых, кадры должны быть отсняты с одинаковыми параметрами - время экспозиции, iso, диафрагма + один и тот же участок неба. Во-вторых, требуется, что бы изображение на кадрах было несколко смещено относительно предыдущего кадра. Т.е. делаем первый снимок. Ждем несколько секунд ( зависит от поля зрения астрографа ) - например, если фотать просто фотоаппаратом, без зума , то надобно выдерживать где-то 15 секунд. За это время звезды успеют сместиться. Делаем следующий снимок. Опять выжидаем ( желательно то же время ) и делаем еще один снимок. Теперь расскажу о "движке" - алгоритме обработки, из его описания будет ясно для чего есть band1 and band2. Для начала введу обозначения : А,Б,В - соответственно 1,2,3-й кадры. Алгоритм состоит из нескольких шагов. На первом шаге сравниваются А и Б, Б и В. Для чего это делается : так как звезды на всех фотоах смещены, то там, где есть звезда - например в фоте Б - на А и В ее нету и получается большой перепад яркости. Все, что совпало - есть засветка либо шум. Порог срабатывания устанавливается band1. Что бы различать слабые звезды надо ставить band1 меньшим. Далее. Имеем два результата - то, что есть общего в А и Б и то, что общее в Б и В. Далее я опять смотрю что в них есть общего - полученный результат , есть кадр Б с шумами и засветкой, но без звезд. band2 устанавливает то, на какую величину кадры могут различаться, что бы считаться еще одинаковыми. Далее я просто вычитаю из Б результат такого вот сравнения. Т.е. этот алгоритм просто-напросто вычитает из кадра "темновой" кадр, полученный таким вот "замороченным" способом. Я это называю динамичеким определением темнового кадра. Остается добавить, что steps - это количество проходов ( очисток ), а в результате работы проги должно получиться три очищенных кадра.
И напоследок дам значения band1 and band2 , при которых мне удалось почти вплотную приблизиться к уровню шума, т.е. выделить звездочки, чуть более яркие, чем шум :
b1 -15, b2 - 3 ; b1 - 20 , b2 - 1

CombaSoft
10.05.2005, 12:55
Что ожидается в будущем : алгоритм поменяется с тем, что прога будет "знать" в каком месте на фоте А надо искать звездочку с фоты Б. Для этого достаточно будет указать вектор смещения изображения на фотах. Есть методы с "распознаванием" звезд, но это из области AI и мне пока что не потянуть такое. Так что в ближайшем будущем ( где-то через месяц ) будет прога, в которой человек сам указывает звезду на фотах , прога будет считать, что человек указал центр звезды и на основе этого вычислит вектор смещения изображения и будет попиксельно сравнивать фоты А и Б в с указанным пользователем допуском. В результате требования программы на кол-во входных снимков упадут до 2, появится возможность офильтровывать снимки дип ская.

Vladilen Ural
10.05.2005, 15:14
Установив рекомендуемый band1 и band2, все кадры были использованы согласно рекомндации автора, в результате получил нижеприведенные картинки. Что-то в этом есть :-).
Отдавая дань звездам получаем качественный дип-скай киллер.

CombaSoft
10.05.2005, 15:45
Отдавая дань звездам получаем качественный дип-скай киллер.

Ну дык :). Выше мною говорилось для каких это объектов - небольших, неплотных скоплений звезд. Сейчас работаю над "дип скаевским" вариантом. Касабельно Ваших фот - в какое значение устанавливали параметр "steps" ? - заметьте, "засветка" ушла в даун :), а вот значение параметра band1 я бы посоветовал уменьшить раза в два - "проявятся" слабые звезды + steps сделайте 15-20 - я понимаю, картинки могут быть большими и комп зарядит фильтрацию минут на 10, но это того стоит. Как пример можете посмореть фоты в моем личном альбоме.

Vladilen Ural
11.05.2005, 09:12
Я вот что думаю. Если сделать возможность обрабатывать таким образом более 10-50 кадров с возможностью отслеживания положения звезд получим два в одном, и суммирование кадров и борьбу со шумом.

Anton
11.05.2005, 12:43
Хм.
А Smart Blur в фотошопе разве не то же самое делает?

CombaSoft
11.05.2005, 17:44
Хм.
А Smart Blur в фотошопе разве не то же самое делает?
Как показывает практика нет. Я же говорил, что мой алгоритм "вычисляет" темновой кадр + засветку. Smart Blur от засветки не избавляет, кроме того, в моем тяжелом :) случае в темновом кадре моего фотоаппарата имеются "возбудившиеся" пиксели - Smart Blur "не знает" , что это не реальная инфа, Smart blur, насколько я понял, находит обжекты заданного радиуса и не трогает их, все остальное подвергается размыванию - своеобразное выделение звезд. Однако замечу, что одного Smart Blura не достаточно - размытую засветку (темно-темно-оранжевый )надобно еще и заменить на черный - что б приятней смотреть было. Повторюсь, от "возбудившихся" пикселей Smart Blur не спасает