?

Log in

No account? Create an account
Еще пару слов насчет Super-resolution Т.к. на современном рынке нет… - vicnaum [entries|archive|friends|userinfo]
vicnaum

[ website | Naumik.com ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

[мар. 1, 2008|07:25 pm]
vicnaum
Еще пару слов насчет Super-resolution

Т.к. на современном рынке нет толковых (бесплатных или крекнутых) решений для Super-Resolution, а существующие как-то совсем не устраивают меня, да и выигрышь не очень чтобы большой:



Как бы в 2 раза увеличить можно, причем выглядит это довольно неплохо. Но. Во-первых оно слишком шумно, во-вторых слишком трудоемко, а в-третьих - никому не нужно 20 мегапикселей с мыльницы. Хотя может конечно и нужно. НО... если уменьшить это в 2 раза назад, то получается практически одно и то же, за исключением конечно более меньших артефактов RAW и т.п:



В частности, как бы всё более четко, граничные линии не такие размытые.



Вот тут обратим внимаение на провод - в оригинале он идет как бы ступеньками. В уменьшенном 2х-кратном увеличении он гладкий. Видно больше мелких деталей на текстурах (деревянный шкафчик), и на контрастных объектах (дырка в розетке).

Но вообще, делать ради этого 6 раз по 10 кадров - имхо не имеет смысла. Лучше сразу сделать 60 кадров и их объединить - тогда шума не будет вообще и может из рава получится выжать побольше, чем из аналогичного с 10-ю кадрами (как тут).

Я попробовал Super-Resolution для MATLAB (задолбался качать и ставить этот матлаб! раза с 4го только у меня всё заработало). Он как бы крутой и со множеством настроек. Но картинку 768x768 у меня не схавал - подавился out of memory. Но там реализовано 4 алгоритма совмещений и еще 5 алгоритмов собственно super-resolution'а. Но из них мне понравился только один.

Да и тот не дал такого результата как другая фриварная утилита - QE SuperResolution 0.1.0.550. Плохо правда, что она не кушает 16-битный TIFF... Но алигн у неё реализован покруче, чем у матлабовской. Но в SR-алгоритме чето не так - шумный какой-то слишком... Все кадры на примерах с него...

Попробовал я и PhotoAcute еще раз. Но т.к. он заточен под конкретную камеру, то он всё перешарпил и вообще... не понравилась мне его работа...

Теоретически. Гораздо лучшего результата можно было бы добиться, делая super-resolution прямо с равом и демозайкая его. Но для этого нужен SR прямо в рав-конвертере, коих пока нет.

Очень хотелось бы протестировать MDSP RESOLUTION ENHANCEMENT SOFTWARE, там как раз реализован демозайкинг. Но, видимо, не судьба - оно распространяется только научным руководителям университетов.

Вот такая вот ситуация.

Вердикт: короче, не нужно маятся дурью, т.к. всё равно никто нормального SR пока не сделал. Нужно просто брать и фоткать, как умеем - и обычным Average'ингом убирать шумы.
СсылкаОтветить

Comments:
[User Picture]From: nailgun
2008-03-01 11:47 pm
Подумалось тут.
А почему бы тебе не завести специальный фото-блог? :)
(Ответить) (Thread)
[User Picture]From: c0oper
2008-03-02 12:38 am
странное издание. чтобы у баха в таких кол-вах ставили нюансы - как-то настораживает
(Ответить) (Thread)
[User Picture]From: aamonster
2008-03-03 12:12 pm
Обычным Average-то зачем? Есть же чуть более толковые алгоритмы, которые и на ровном фоне шумы уменьшают, и границы не замыливают.
(Ответить) (Thread)
[User Picture]From: vicnaum
2008-03-03 01:16 pm
например?
(Ответить) (Parent) (Thread)
[User Picture]From: aamonster
2008-03-03 01:33 pm
Самый примитивный:
Даны 2 аргумента - размер маски N (допустим, маска - квадрат N*N или круг диаметра N) и разброс яркости dI.
Для каждого пиксела P идем по маске и вычисляем среднее по всем пикселам, яркость которых отличается от яркости P не более чем на dI.

Условия для работы: шум случайный, равномерно распределенный (типа теплового шума матрицы), уровень шума не больше dI, характерные изменения яркости картинки больше dI.

Удаляет (точнее, ослабляет примерно в N раз) случайный равномерно распределенный шум на ровных участках; на участках с постоянным градиентом - ослабляет примерно в sqrt(N) раз.

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

Это один из самых простых алгоритмов. Есть заметно более сложные и интересные, собственно, они реализованы в разных шумодавах. Как правило, для работы алгоритмов требуется откалибровать шум (построить модель шума).
(Ответить) (Parent) (Thread)
[User Picture]From: vicnaum
2008-03-03 02:14 pm
не, я не про шумодавинг одной картинки. я про вот что:

Another approach to increase the SNR is to repeat a measurement many times and add all measurements. Given that the signal is stable enough over a longer period, this will finally cancel out the random noise, while the signal itself accumulates - thus increasing the SNR.

This method is called time averaging and is a strategy commonly applied when signal levels are (too) low and the signal is stable over the interval of repeated measurements. One example is the data acquisition of NMR (nuclear magnetic resonance) signals.

Статистическое устранение шума. Шум случаен, картинка - постоянна. При соединении между собой n-ного количества одинаковых кадров удается полностью избавится от шума.
(Ответить) (Parent) (Thread)
[User Picture]From: aamonster
2008-03-03 02:42 pm
И руками сопоставлять один кадр другому? Или речь про съемку неподвижных объектов со штатива? Так тогда можно выдержку поболее...

Да и с подавлением шума не все радужно: давится в sqrt(N) раз, так что больше чем в 2 раза подавить - задолбаешься.
(Ответить) (Parent) (Thread)
[User Picture]From: vicnaum
2008-03-03 03:40 pm
да, неподвижных со штатива. предметка например.

Я делаю обычно по 10 кадров, чтобы получить достаточно бесшумный кадр. Хотя можно делать гораздо больше кадров. Если sqrt(N) - то это хорошо. 100 кадров - и в 10 раз шум уменьшится :)

Хотя и с 10 кадрами он уже практически неразличим без сильного (200-400%) зума и сильных манипуляций с кривыми.
(Ответить) (Parent) (Thread)