Статья написана для этого сайта и размещение её полностью или каких-либо частей на других ресурсах возможно только с разрешения автора.

 

      Олег Лобачёв              Советы от чайника

  Часть 2 Шумопонижение



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

     Кстати, о дырках и электронах: ведь именно от того, сколько их попадает в дырки в каждой ячейке матрицы камеры под действием света, зависит величина сигнала, который поступит от этой ячейки в процессор и будет интерпретирован как яркость данного пикселя на снимке. В какой-то ячейке столько, а в соседней - чуть больше или чуть меньше. В результате яркости двух соседних точек будут отличаться, хотя света на них при съёмке попало одинаково. Вот именно эта неконтролируемая разница в величине сигнала (при прочих равных условиях) и называется шумом. Кстати, название "цифровой шум" является безграмотным, поскольку в теории информации ШУМОМ называется ЛЮБОЙ сигнал, маскирующий СИГНАЛ ПОЛЕЗНЫЙ. Опять же, сама приёмная матрица и расположенные после неё видеоусилители - устройства чисто аналоговые, а шум цифровой части камеры (преобразователи и процессор) по сравнению с шумами аналоговой части мал. А посему нет никакой разницы - шумы цифровой камеры или зерно плёнки, результат один - слабые сигналы будут замаскированы. Другой вопрос, насколько этот шум велик и где предел этой самой "слабости". Вообще-то теоретический предел для неохлаждаемых кремниевых фотоприёмников где-то около 16 бит, и за счёт всяческих технологических исхищрений (для фотографических матриц) он может быть увеличен ещё на бит, от силы на два. И если мы посмотрим технические данные камер, то увидим, что даже у камер довольно приличного класса преобразователи имеют 12 или 14 бит разрешения. При этом пара "нижних" бит заметно забиты шумами. Так что на уровне приблизительно одной тысячной и ниже от максимальной яркости весьма шумно. :-) Конечно, при малой степени обработки качественного исходника, сделанного хорошей камерой, шумовая составляющая почти незаметна. Однако чем больше диапазон яркостей снимка и чем глубже обработка, тем сильнее будет проявляться шум.

 В качестве примера на Рис.5 показан небольшой фрагмент одного кадра.

Слева - исходник, два других изображения прошли одни и те же процедуры обработки. Отличие состоит в том что средняя картинка перед обработкой была пропущена через программу шумопонижения, а правая - нет. Результат вроде бы заметен даже не сильно вооружённым глазом.Так чем же и как можно понизить уровень шума? Программ таких существует несколько, но лучшей на сегодняшний день, по моему мнению, является Neat Image. Умно сделанная машинка, использующая хороший и правильно реализованый алгоритм  шумопонижения.

 Итак, лицензионная или грамотно трахнутая программа установлена, её модуль Neat Image.8BF закинут в папку Plug-Ins\Filters Фотошопа и при нажатии кнопки Filters в ФШ программа видна в нижней части выпадающего меню. Отлично... Теперь займёмся нашими играми, ибо куча народу использует сию программу в демонстрационном режиме, а это не есть РИГХТ ("Right" по-забугорному). Первое, что надо сделать, если это ещё не сделано (или как было написано в инструкции по боевому применению одной хреновины, "Нажать кнопку "Нажать", если она не нажата"), - перевести программу в нормальный режим, для чего лезем в "Tools"(Рис.6)

 

и переключаемся в расширенный режим (Advanced Mode), затем там же заходим в Options. Здесь интерес для тех, кто мало работал с этой программой, представляют две закладки: Defaults и Filtration, остальное можно оставить по умолчанию. В Defaults можно переключить рабочую цветовую модель в более привычную RGB, если хочется. Правда не уверен, что это будет лучшим вариантом. Однако, каждому - своё,т ак что если хотите, переключайте. Дело тут вот в чём: Neat Image осуществляет понижение уровня шума раздельно по цветовым каналам.

 

 В модели RGB обработка идёт в красном, зелёном и синем канале, типа "всё как у людей". Модель YCrCb более совершенна, но немного сложнее в восприятии. В определённой степени она напоминает цветовую модель Lab, поскольку включает в себя яркостный канал Y, в котором при обработке используется информация только о яркости, и каналы Cr и Cb, работающие с цветовыми составляющими. В Filtration советую поставить задержку начала обработки (Delay) равной или большей 1.5 сек, иначе сложновато будет двигать шишечки и пумпушки: чуть тронешь, как тут же начинается обработка, а в итоге из-за ожиданий её завершения всё получается медленнее, чем с большей задержкой, но зато без многократных перерывов на обработку. Ну вот, установили что надо и как требуется. Зарываем программу и через процедуру загрузки картинки из ФШ запускаем её снова. Кстати, будьте готовы к тому, что после закрытия NI вместо рабочего пространства Фотошопа на мониторе окажется пустое место серого цвета. Ничего страшного, это бывает. Нажимаем кнопку "Свернуть", после этого в панели задач тыкаем мышом в ФШ и всё снова на месте.Итак, NI настроена и запущена. Сейчас мы видим на экране (Рис.7) анализатор шума. 

  Для запуска процесса анализа нажимаем Auto Profile. Через некоторое время в каком-то месте картинки появится синий квадрат и после небольшой задержки профиль шума будет построен, а результаты выведены на эквалайзер Tune-Fine Analizer для каждого канала цвета.

   Один интересный момент. Этот самый синий квадрат, внутри которого проводится анализ шума, программа автоматически устанавливает в то место картинки где, по её мнению, расположена область с шумовым профилем, характерным для всего изображения. В большинстве случаев программа не ошибается с выбором зоны анализа, однако бывают особые ситуации, когда она не может самостоятельно найти подходящую зону анализа и тогда выдаётся сообщение о том, что такая зона не найдена и надо самостоятельно её найти, либо при сложном характере картинки (небо, вода, трава, лес) оказывается, что шумовые профили для каждого из этих участков сильно отличаются друг от друга. Кстати, это именно та причина, по которой я не советую вместо анализа профиля использовать заранее созданные для каждой камеры профили шума: результат в большинстве случаев будет далёк от наилучшего. Итак, при сложном характере изображения можно сделать в ФШ несколько дублей исходного слоя и провести обработку каждого из них при найденных именно для этой зоны шумовых профилях. Делается это просто: квадрат вручную перетаскивается по картинке и в нужных местах запускается анализ профиля шума (Рис.8, на котором показаны результаты измерения профиля шума для зелёного канала в разных местах картинки), после чего каждый из слоёв обрабатывается, а в ФШ при помощи ластика с каждого из них убирается лишнее, затем слои объёдиняются (процедура Merge Layers).

При ручной установке зоны анализа возможно появление надписей на красном фоне, которые предупреждают, что программа по тем или иным причинам считает, что данный участок не подходит для анализа (Рис.9).

 Опять же, в большинстве случаев она оказывается права и надо немного подвигать зону анализа до пропадания предупреждений. Хотя бывают и такие случаи, когда на высокоучёное мнение NI надо наплевать и провести построение профиля именно в том месте, которое вы считаете нужным. Теперь, когда профиль шума построен, приступаем к самой процедуре шумопонижения. Для этого переходим в раздел Noise Filter Settings (Рис.10).

Органы управления процессом расположены справа и разделены на три зоны:


- "Уровни шума" (Noise Levels) не трогаем, всё по умолчанию;
- "Управление шумопонижением" (Noise Reduction Amount) основной инструмент;
- "Шарпило" (Sharpening Settings) - очень интересная штучка;


       Процесс шумопонижения проводится не только в разных цветовых каналах, но ещё и отдельно для шума каждого из трёх сортов: высокочастотного (High), среднечастотного (Mid) и низкочастотного (Low). Есть, правда, ещё канал сверхнизкочастотного шума (Very low freq), но влияет он очень слабо, так что на время о нём можно забыть. Размеры отдельных "шУмин" для масштаба картинки 100% показаны в квадратиках рядом с движками, каждый из которых определяет уровень подавления шума в своём канале. Исходное положение движков, с которого я обычно начинаю работать, показано на рисунке. Ниже расположены три движка управления уровнем подавления шума в цветовых каналах. Устанавливаем масштаб картинки 100% и ищем область с наиболее выраженным шумом. В этом месте ставим маркёр, нажимаем левую кнопку мыши и, не отпуская, тащим куда-нить в сторону по диагонали, например вниз. Появляется квадратная зона, в которой будут показаны предварительные результаты работы программы. Каждый из движков должен быть установлен в такое положение (и даже несколько левее), когда подавление данной компоненты шума при перемещении движка вправо не увеличивается. К примеру, степень подавления перестаёт увеличиваться после установки движка в положение 70%; оставляем движок в положении 65%. Теперь работаем с цветовыми каналами. Если установлена модель RGB, постепенно перемещаем движки по одному влево и следим за результатом: как только начинается рост уровня шума, переходим к следующему движку. В случае YCrCb сдвигаем красный и синий до нуля и смотрим на результат. Во многих случаях шум оказывается сосредоточен именно в яркостном канале и каналы цвета можно отключить (действительно, зачем давить шум там, где его нет?). После такой предварительной установки уровня шумопонижения перетаскиваем зону в то место картинки, где есть мелкие детали, например ветки, трава, рябь на воде и смотрим, нет ли чрезмерного размытия этих деталей. Если такое гадство со стороны NI наблюдено, то нужно уменьшить уровень подавления в соответствующем частотном канале или попытаться исправить положения, воспользовавшись "Шарпилом". Здесь также находятся три движка, управляющие повышением резкости в узких, средних и широких зонах. Над движками четыре окошка, установка или снятие галок в которых включает/отключает процедуру повышения резкости в данном цветовом канале. Галка в окне Conservative позволяет выбрать "мягкий" режим повышения резкости, без галки - оно работает жёстко. Впрочем поэкспериментируйте, сами увидите. Кстати, если движки управления шумопонижением установить в нулевые положения, то программа работает только в режиме шарпления, причём результаты могут оказаться очень интересными! Во всяком случае эта штуковина оказывается куда умнее, чем тот же Unsharp Mask.

На Рис.11 показан, на мой взгляд, довольно интересный результат работы NI в этом режиме. И совет в заключение: если картинка предназначена для Web, не старайтесь давить шум по максимуму. Дело в том что после  ресайза происходит изменение характера шума и можно провести дополнительное шумопонижение. Опять же, не забывайте о том, что можно сделать несколько дублей рабочего слоя и на каждом из них давить шум с разными установками программы. Да и вообще, время затраченное на чтение этой писанины, значительно больше того, которое занимает сам процесс шумопонижения.
 Обычно всё делается в течение не более чем пары минут. Так что потренируйтесь малость, и всё будет тип-топ... :-)
 
 

Все статьи:

Предисловие, или немного ни о чём.

Создаём программный комплекс обработки картинок

Шумопонижение

Повышаем резкость

Меняем размер

Компрессирование

обсудить на форуме

www.photoblues.ru  2006