Зачем нужно подавлять шум? Чаще всего шумоподавление служит для улучшения визуального восприятия, но может также использоваться для каких-то специализированных целей - например, для увеличения четкости изображения, в качестве предобработки для последующего распознавания, при сжатии видеопоследовательностей и изображений.

Введение в проблему подавления шума

Компьютерная графика разделяется на три основных направления: визуализация, обработка изображений и распознавание образов.

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

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

Обработка изображений отвечает за преобразование (фильтрацию) изображений. Примерами могут служить повышение контраста, резкости, коррекция цветов, сглаживание. Задачей обработки изображения может быть как улучшение (восстановление, реставрация) изображения по какому-то определенному критерию, так и специальное преобразование, кардинально меняющее изображение. В последнем случае обработка изображений может быть промежуточным этапом для дальнейшего распознавания изображения (например, для выделения контура объекта).

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

В том случае, если изображение или видеопоследовательность были получены с помощью оцифровки, на них, как правило, присутствует шум. Проблема шумоподавления является одной из самых актуальных и распространенных проблем в области обработки как статичных изображений, так и видео.

Зачем нужно подавлять шум?

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

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

Откуда же берется шум? Источники шума могут быть различными:

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

Соответственно, шумы тоже бывают разных видов. Самые распространенные:

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

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

Шум в видеопоследовательности можно условно разделить на пространственный и временной. Временным шумом называют неприятный визуальный эффект, возникающий в видео из-за случайного или коррелированного изменения пространственного шума от кадра к кадру. В некоторых источниках под временным шумом понимают любое случайное изменение значений каждого пиксела во времени, в том числе смену яркости от кадра к кадру. Соответственно, фильтры шумоподавления также делятся на пространственные и временные: первые производят усреднение пикселей по каждому отдельному кадру (изображению), а вторые - между несколькими последовательно идущими кадрами. Во временных фильтрах часто используются алгоритмы детектирования и/или компенсации движения. На практике обычно используется сочетание пространственного и временного методов шумоподавления - так называемый, 3D-фильтр. При этом в большинстве существующих алгоритмов первым применяется пространственный фильтр, поскольку после его работы процедура обнаружения движения во временном фильтре становится проще и точнее, и, как следствие, временное шумоподавление становится более эффективным. Хотя обратный порядок применения тоже имеет свои преимущества: временной фильтр, как правило, работает довольно бережно; проработав вначале, он понизит общий уровень шума и предотвратит излишнее размытие, характерное для любого пространственного фильтра.

Основная проблема при пространственном шумоподавлении заключается в том, чтобы не испортить четкость краев предметов на изображении, а также мелкие детали, соизмеримые по амплитуде с шумом. При шумоподавлении в видео подобные детали можно детектировать, отслеживая их на протяжении нескольких кадров.

Основной проблемой при временном шумоподавлении является эффект размытия движения (<ореол>), возникающий при попытке усреднить пиксели вдоль границ движущихся объектов. Для устранения этой проблемы во временные методы часто встраивают алгоритм компенсации движения, но, во-первых, при этом значительно снижается скорость работы фильтра, а во-вторых, неточное нахождение блоков приводит к появлению артефактов.

Еще одной сложностью является оценка качества подавления шума. Как правило, оно оценивается следующим образом: на незашумленное изображение накладывается искусственный шум, затем полученное изображение фильтруется алгоритмом шумоподавления и сравнивается с исходным с помощью какой-нибудь метрики. Чаще всего для этой цели используют метрику PSNR (peak signal-to-noise ratio - пиковое соотношение сигнал/шум), которая определяется формулой:
,
где x i , y i - i -е пиксели двух сравниваемых изображений, N - общее число пикселей на каждом изображении, а d (x i , y i ) - разность между цветами соответствующих пикселей (для оттенков серого это просто разность значений пикселей, а для цветных изображений - евклидово расстояние между пикселями в трехмерном цветовом пространстве). Соответственно, чем ближе отфильтрованное изображение к оригинальному, тем больше значение PSNR, и тем выше считается качество работы алгоритма.

Однако эта и другие аналогичные метрики позволяют оценивать лишь среднеквадратичную разницу между изображениями, поэтому лучшие результаты с точки зрения метрики не всегда соответствуют наилучшему визуальному восприятию. К примеру, более размытое изображение, в котором вместе с шумом были удалены мелкие детали, может иметь значение PSNR выше, чем изображение с более аккуратно подавленным шумом. Визуальные оценки при этом покажут предпочтительность второго изображения.

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

Различные существующие на данный момент подходы к шумоподавлению будут рассмотрены далее.

Обзор существующих методов

Можно выделить следующие базовые подходы к пространственному шумоподавлению:

  1. Линейное усреднение пикселей по соседям
  2. Медианная фильтрация
  3. Математическая морфология
  4. Гауссовское размытие
  5. Методы на основе вейвлет-преобразования
  6. Метод главных компонент
  7. Анизотропная диффузия
  8. Фильтры Винера

Некоторые из этих методов применимы с небольшими модификациями также и во временной области.

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

Рассмотрим каждый подход подробнее.

Линейное усреднение пикселей

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

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

Эти алгоритмы очень простые, но они не дают хорошего результата.

Интересная модификация этого метода была предложена Де Хааном . Он предложил в качестве значения центрального пикселя также брать взвешенную сумму соседних пикселей, только соседей брать не подряд, а через один или два пикселя (см. рисунок 2.1.1б). Утверждается, что при таком подходе удается подавить низкочастотный шум, который заметнее на глаз, чем высокочастотный.

Аналогично можно применять этот метод во временной области, только усреднение будет производиться уже между соседними кадрами, и окно соответственно будет браться по времени (то есть каждый пиксель будет усредняться по пикселям, расположенным в той же позиции в соседних кадрах). В общем виде такую схему шумоподавления можно выразить следующей формулой:
,
где x - пиксель, а t - номер кадра. Веса могут браться в зависимости от близости значений пикселей и расстояния между кадрами. Также усреднение может проводиться рекурсивно:
,
где - значение, посчитанное для этого пиксела в предыдущем кадре. Для предотвращения возникновения ореолов вокруг движущихся объектов, о которых было сказано выше, во временные фильтры встраивают алгоритмы определения движения. При этом возможно два варианта: простое детектирование движения (пикселы в движущихся блоках просто остаются без изменения, и шум вдоль движущихся объектов не подавляется) или построение скомпенсированного предыдущего и/или следующего кадра (см. ) и смешивание текущего с ним. В последнем случае компенсация движения должна быть выполнено качественно, иначе будут артефакты на месте неправильно найденных блоков.

Простой метод, усредняющий пиксели по семи кадрам и учитывающий движение, описан в .

Медианная фильтрация

Медианная фильтрация - это стандартный способ подавления импульсного шума.

Для каждого пиксела в некотором его окружении (окне) ищется медианное значение и присваивается этому пикселу. Определение медианного значения: если массив пикселей отсортировать по их значению, медианой будет серединный элемент этого массива. Размер окна соответственно должен быть нечетным, чтобы этот серединный элемент существовал.

Медиану также можно определить формулой:
,
где W - множество пикселей, среди которых ищется медиана, а f i - значения яркостей этих пикселей.

Для цветных изображений используется векторный медианный фильтр (VMF):
,
где F i - значения пикселей в трехмерном цветовом пространстве, а d - произвольная метрика (например, евклидова).

Однако в чистом виде медианный фильтр размывает мелкие детали, величина которых меньше размера окна для поиска медианы, поэтому на практике практически не используется. Пример усовершенствованной медианной фильтрации можно найти в .

Математическая морфология

Шумоподавление можно также осуществлять с использованием двух основных морфологических операций (см. ): сужения (erosion) и расширения (dilation), а также их комбинаций - закрытия (closing) и раскрытия (opening). Раскрытие (сначала сужение, потом расширение) убирает выступы на границах объектов, а закрытие (сначала расширение, потом сужение) заполняет отверстия внутри и на границах.

В качестве примера можно предложить следующий алгоритм, описанный в . Сначала по исходному изображению I вычисляется новое изображение I " , равное полусумме открытия-закрытия и закрытия-открытия исходного изображения. Получим сглаженное изображение, не содержащее шума. Тогда изображение D , равное разнице I и I " ,будет содержать весь шум и все те детали исходного изображения, размер которых меньше размера структурного элемента, примененного при морфологических операциях. Предполагая, что амплитуда у шума меньше, чем у деталей, обнулим в D все значения, меньшие некоторого порога, и снова сложим с I " .

Изображения, обработанные этим методом, выглядят несколько искусственно, поэтому для обработки фотореалистичных изображений он не подходит, хотя, к примеру, для анимации может оказаться очень полезным.

Гауссовское размытие

Гауссовское размытие - это свертка изображения с функцией
,
где параметр s задает степень размытия, а параметр A обеспечивает нормировку. Фактически, это то же усреднение, только пиксель смешивается с окружающими по определенному закону, заданному функцией Гаусса. Матричный фильтр, посчитанный по указанной формуле, называется гауссианом; чем больше его размер, тем сильнее размытие (при фиксированном s ). Поскольку данный фильтр сепарабелен, то есть представим в виде
,
то свертку можно производить последовательно по строкам и по столбцам, что приводит к значительному ускорению работы метода при больших размерах фильтра.

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

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

Методы на основе вейвлет-преобразования

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

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

Здесь H 1 (G 1) - высокочастотный фильтр анализа (синтеза), а H 2 (G 2) - низкочастотный фильтр анализа (синтеза).

Двумерное дискретное вейвлет-преобразование получается в результате применения одномерного преобразования последовательно к строкам и столбцам изображения. В результате мы получаем одну низкочастотную полосу и три высокочастотных, причем ВЧ-коэффициенты каждой полосы отвечают за конкретное направление - вертикальное, горизонтальное, либо диагональное (см. рисунок 2.5.2).

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

ДВП можно применять и для временного шумоподавления, расширив его до трехмерного следующим образом: сначала двумерное преобразование применяется к нескольким подряд идущим кадрам видеопоследовательности, а затем они пропускаются через одномерное ДВП, направленное вдоль временной оси (см. рисунок 2.5.3).

Итак, общую схему шумоподавления с помощью ДВП можно описать следующим образом (см. рисунок 2.5.4):

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

В принципе, вместо ДВП может использоваться любое преобразование, в результате которого исходный сигнал распадается на низкочастотную и высокочастотную составляющие. Естественно, это преобразование должно быть обратимо.

Методы шумоподавления с использованием ДВП можно классифицировать по двум параметрам: по типу преобразования и способу подавления коэффициентов.

Рассмотрим вначале различные типы ДВП и аналогичных им преобразований:

1. Обычное ДВП

Как правило, используется обычное ДВП с базисом Хаара или Добеши, однако при шумоподавлении есть ряд особенностей, которые надо учитывать. Описанное выше ДВП является не избыточным - на каждом следующем шаге общее число коэффициентов сохраняется, то есть если исходное изображение было размера NxN, то суммарное число коэффициентов на каждом шаге будет равняться N 2 . Однако такое ДВП не является инвариантным к сдвигу (если сдвинуть исходное изображение на 1 пиксель, величины вейвлет-коэффициентов будут совсем другие), и изменение высокочастотных вейвлет-коэффициентов приводит к артефактам в восстановленном изображении. Поэтому для шумоподавления обычно используется избыточное ДВП, в котором общее число коэффициентов на каждом шаге больше N 2 .

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

Однако такая избыточность требует много дополнительной памяти для хранения коэффициентов (+3N 2 на каждом уровне разложения). Далее будут рассмотрены преобразования с меньшей избыточностью, которые ничуть не хуже помогают предотвратить появление артефактов, о которых было сказано выше, и требуют при этом на порядок меньше ресурсов.

При использовании избыточного ДВП следует применять фильтры с шагом, увеличивающимся на каждом следующем уровне разложения в два раза. То есть если на первом уровне свертка производилась с фильтром (0.5, 1, 0.5), то на втором она должна производиться с фильтром (0.5, 0 , 1, 0 , 0.5) и т. д. Дело в том, что при прореживании высокочастотные вейвлет-коэффициенты на каждом следующем шаге соответствуют все более крупным деталям изображения. Если прореживания не делать, шум будет подавляться только в высокочастотной области. Применение фильтров ДВП с увеличивающимся шагом решает эту проблему (увеличивающийся шаг как бы компенсирует отсутствие прореживания).

2. Комплексное ДВП (dual-tree complex DWT)

Комплексное ДВП для одномерного случая представляет собой параллельное применение к исходному сигналу двух ДВП (с прореживанием) с разными НЧ/ВЧ-фильтрами, подобранными специальным образом. Затем каждая полоса, полученная в результате первого ДВП, интерпретируется как действительная часть комплексного НЧ (ВЧ) сигнала, а каждая полоса второго ДВП - как мнимая.

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

Какие преимущества у такого ДВП? Во-первых, избыточность стала намного меньше - теперь она составляет 3N 2 при любом количестве уровней разложений. Во-вторых, такие вейвлеты имеют лучшую направленность и различают, в отличие от обычных вейвлетов, направления в 45 о и 135 о, что способствует более качественной обработке диагональных границ деталей на изображении (примеры тестовых изображений можно посмотреть на сайте ).

В трехмерном случае действительное ДВП будет состоять уже из четырех параллельных ДВП, число полученных в результате вейвлетов будет равно 28 и направлены они будут в 28-ми разных направлениях, а комплексное ДВП также будет состоять из двух параллельных действительных преобразований. Избыточность будет составлять уже 7N 2 для любого числа уровней разложения (против +7N 2 на каждом уровне разложения у обычного ДВП без прореживания). Кроме того, комплексные трехмерные вейвлеты разделяют движение по 28 различным направлениям (обычные ДВП - только по 7-ми).

Реализацию на МатЛабе и примеры НЧ/ВЧ-фильтров для комплексного ДВП можно найти в .

3. Несепарабельное ДВП (non-separable DWT)

Обычное ДВП является сепарабельным. Это значит, что оно может вычисляться отдельно по строкам и по столбцам, причем и для строк, и для столбцов применяются одинаковые фильтры. Несепарабельные ДВП могут лучше адаптироваться к локальным свойствам изображения. Например, анализируя для каждого пикселя его соседей в некотором окне можно минимизировать полезную энергию изображения в ВЧ-полосе и лучше сохранить детали. Алгоритм подавления шума с использованием несепарабельного ДВП описан в .

Как уже было сказано ранее, обычное ДВП разделяет исходный двумерный сигнал по трем направлениям - горизонтальному, вертикальному и диагональному. Причем оба диагональных направления оказываются смешанными в одной полосе. Таким образом, недостатком обычного ДВП является плохое компактирование энерги вдоль наклонных границ. Очевидно, что чем больше будет направлений, тем качественней будут обрабатываться границы деталей изображения. Поэтому для подавления шума часто используют так называемые направленные вейвлеты, которые обеспечивают лучшую направленность. Пример алгоритма подавления шума с использованием направленных вейвлетов можно найти в .

5. Упрощенные преобразования

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

Теперь перейдем к рассмотрению методов подавления коэффициентов.

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

1. Резкое уменьшение по порогу (hard thresholding)

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

2. Плавное уменьшение по порогу (soft thresholding)

Метод заключается в обнулении всех вейвлет-коэффициентов, меньших заданного порога, и уменьшении остальных вейвлет-коэффициентов. Преобразование эквивалентно следующей формуле (e используется во избежание деления на 0):
,
где T - некий порог.

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

Алгоритмы из второго класса обеспечивают, кроме того, локальную пространственную адаптацию алгоритма подавления коэффициентов внутри каждой полосы. Вот некоторые из них:

1. Адаптация по соседним коэффициентам

Этот подход основан на том, что степень подавления каждого вейвлет-коэффициента зависит не только от величины этого коэффициента, но и от взвешенной суммы модулей (при анализе вейвлет-коэффициентов имеет значение именно их амплитуда, а не знак) соседних коэффициентов, расположенных в некоторой пространственной окрестности вокруг этого коэффициента. Зависимость может быть самая различная. Можно, кроме того, учитывая взаимосвязь коэффициентов между уровнями, включить в эту сумму коэффициенты из следующего уровня разложения. Веса также можно задавать различными способами. Как вариант, можно задать бoльшие веса вдоль основного направления границ в полосе: либо взять одно из трех основных направлений (вертикальное, горизонтальное или диагональное) в зависимости от полосы , либо для большей точности самостоятельно оценить доминирующее направление и искать веса, например, по формуле:
,
где Y i , j - отдельный вейвлет-коэффициент рассматриваемой полосы, w - вектор, содержащий искомые веса, а u i , j - вектор, состоящий из соседних по отношению к Y i ,j вейвлет-коэффициентов . То есть ищутся такие веса, чтобы взвешенная сумма соседей максимально приближала каждый коэффициент в полосе.

В случае трехмерного вейвлет-преобразования окрестность также рассматривается трехмерная.

Следующие два подхода ориентированы на подавление белого гауссовского шума (хотя на практике это методы хорошо работают и для других широкополосных шумов). Пусть исходное изображение содержит аддитивный белый гауссовский шум с нормальным распределением: нулевым математическим ожиданием и дисперсией ? 2 . Аддитивность означает отсутствие корреляции между сигналом и шумом: NS i = S i +N i , где NS - обозреваемый зашумленный сигнал, S - исходный чистый сигнал, а N - шум. Тогда для полученных вейвлет-коэффициентов w i будет также верно:

w i = y i + z i , i =1,...,n , где

y i - значение вейвлет-коэффициентов без шума, а z i ~ N (0, ? 2) - вклад шума. В случае, если дисперсия шума? 2 неизвестна, она обычно оценивается как медиана среди абсолютных значений вейвлет-коэффициентов ВЧ-полосы (HH), деленная на 0.6745.

2. Метод, основанный на контексте (Context-based method)

В этом методе шумоподавление осуществляется по формуле плавного уменьшения по порогу, где порог задается следующим образом:

Здесь ? w - дисперсия зашумленного сигнала, которая вычисляется таким образом, чтобы обеспечить локальную адаптивность величины порога. Сначала все вейвлет-коэффициенты группируются по своему контексту, то есть для каждого коэффициента вычисляется среднее абсолютное значение коэффициентов в некоторой его окрестности (контекст), и коэффициенты с близкими средними значениями объединяются в одну группу. Иными словами, для каждого коэффициента с контекстом Z определяется некое подмножество коэффициентов, имеющих самые близкие к Z значения контекстов (как меньшие Z , так и большие Z ). После этого значение ? w вычисляется для каждого вейвлет-коэффициента отдельно как дисперсия определенного для этого коэффициента подмножества. Мощность этого подмножества важно выбрать оптимально, поскольку слишком мало коэффициентов не обеспечат объективной оценки, а слишком много нарушат локальность. Таким образом, мы как бы выделяем похожие области на изображении, которые пространственно могут располагаться далеко друг от друга, и по ним считаем дисперсию.

В этом и заключается основное отличие этого подхода от предыдущего: в предыдущем для оценки степени подавления вейвлет-коэффициентов рассматривались только соседние коэффициенты, а в этом методе рассматриваются коэффициенты со всей полосы вейвлет-коэффициентов.

3. Байесовский подход (Bayesian approach)

Этот метод основан на анализе статистических свойств изображения. Он опирается на предположение, что распределение всех вейвлет-коэффициентов зашумленного изображения представляет собой комбинацию двух нормальных распределений с различными стандартными отклонениями. Типичный вид гистограмм распределения вейвлет-коэффициентов для чистых и зашумленных изображений представлен на рисунках 2.5.6 (а, б).

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

Дисперсия такого распределения вычисляется по формуле:
.

Для изображений параметр ? обычно I , и его можно просто положить равным 1.

Шум описывается функцией нормального гауссовского распределения N (0, ? 2):

Тогда для зашумленных коэффициентов w имеем:

.

Поскольку можно вычислить (это дисперсия исходного зашумленного сигнала), выразим из этой формулы параметр s (положим? = 1):

.

Таким образом, модель незашумленного исходного сигнала полностью восстановлена.

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

при ? = 1.

Здесь - неполная гамма-функция.

Значение полученной величины r отражает общую зашумленность изображения: чем оно меньше, тем сильней следует подавлять коэффициенты.

Метод главных компонент

Метод главных компонент (МГК) позволяет выделить структуру в многомерном массиве данных и применяется в основном для распознавания или для сжатия изображений. В области шумоподавления этот подход является довольно новым и мало исследованным. Работает он лучше всего для изображений с белым гауссовским шумом.

Метод главных компонент заключается в нахождении таких базисных векторов исследуемого многомерного пространства, которые бы наилучшим образом отражали расположение некоторых исходных данных в этом пространстве (характеризовали эти данные). Кратко опишем алгоритм построения таких векторов (математические понятия и подробное описание алгоритма см. в ).

Пусть задано N -мерное пространство и M векторов в нем. Под набором данных будем понимать вектор, составленный из i -й координаты всех векторов. Итак, пусть у нас есть N наборов данных, соответствующих N измерениям. Сначала мы строим матрицу ковариаций для этих наборов и ищем ее собственные вектора и собственные значения. Ортонормированный базис из N собственных векторов и будет искомым базисом, максимально приближающим исходные данные, иными словами, отражающим их структуру в N -мерном пространстве. Причем, чем больше собственное значение, тем сильнее отражает характер расположения данных соответствующий собственный вектор.

Собственный вектор, соответствующий максимальному собственному значению, называется главной компонентой и определяет основное направление, вдоль которого расположены данные. С другой стороны, собственные вектора, для которых соответствующее собственное значение мало, практически никак не отражают характер расположения данных. Исключив из нового базиса собственные вектора с наименьшими собственными значениями, можно уменьшить размерность исходных данных без особых потерь для них. Таким образом, МГК обеспечивает наилучшее приближение исходных данных минимальным числом базисных векторов. На уменьшении размерности и основываются алгоритмы сжатия. Теперь рассмотрим, как применить этот метод для подавления шума.

Вначале все изображение разбивается на блоки. Блоки обрабатываются независимо, поэтому они должны располагаться с небольшим перекрытием, чтобы избежать артефактов блочности при их стыковке. Пиксели блока NxN образуют вектор длины N 2 .

Далее, вокруг каждого блока рассматривается некоторое окно, из которого выбираются всевозможные блоки того же размера, что и центральный. Вектора, соответствующие этим блокам вкупе с центральным, образуют исходный набор данных, для которого применяется описанный выше алгоритм МГК. Строится матрица ковариаций, ищутся собственные вектора и собственные значения, и затем производится сортировка векторов по убыванию собственных значений. Шумоподавление осуществляется путем уменьшения длин собственных векторов и/или их обнуления в зависимости от величины соответствующих собственных значений. Пример адаптивного алгоритма подавления величин собственных векторов можно посмотреть в .

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

Итак, как же уменьшение длин собственных векторов влияет на подавление шума? Дело в том, то найденные таким способом вектора будут соответствовать основным направлениям узора (границ, деталей) на данной области изображения. Поскольку шум распределен по изображению хаотично, безо всякой системы, ему будут соответствовать собственные вектора с маленькими собственными значениями. Подавляя их, мы будем уменьшать амплитуду значений пикселей в этом направлении, а следовательно, подавлять и шум. Именно поэтому метод главных компонент хорошо справляется лишь с белым шумом: у шума не должно быть никакой структуры, иначе МГК примет его за узор и не подавит.

Лучше всего метод главных компонент работает на текстурированных областях, даже если текстура очень мелкая. После подавления шума методом главных компонент текстура останется по-прежнему четкой, чего нельзя сказать обо всех вышеперечисленных методах.

Анизотропная диффузия

Основная идея данного подхода заключается в следующем. Яркость каждого пикселя интерпретируется как значение температуры в данной точке изображения, таким образом, все изображение представляется в виде карты температур. Шумоподавление производится путем выравнивания температур (фактически, интенсивностей пикселей) с помощью моделирования процесса теплопереноса:
,
где c - коэффициент теплопроводности, а - разность яркостей (<температур>) двух пикселей.

Коэффициент теплопроводности c зависит от градиента интенсивности изображения:
.

Так как на границах деталей изображения, как правило, происходит значительное изменение яркости, коэффициент теплопроводности, определяемый по указанной выше формуле, будет небольшим и, как следствие, перенос <тепла> через границу будет минимальным. Иными словами, размытия границ не произойдет. На ровных шумных областях, наоборот, изменение яркостей пикселей незначительно, поэтому такие области будут хорошо сглажены.

По своей сути данный метод очень напоминает гауссовское размытие (усреднение по соседям), поэтому подробнее рассматривать его не будем.

Фильтры Винера

Фильтры Винера основаны на преобразовании Фурье и применяются, в основном, для подавления шума в аудио, поэтому автором они подробно не исследовались. Посмотреть соответствующий алгоритм можно, например, в .

Литература

  1. Szymon Graboskwi, Wojciech Bienieck " A two-pass median-like filter for impulse noise removal in multi-channel images". KOSYR 2003, str . 195-200
  2. Презентация: <Введение в математическую морфологию> (http://graphics.cs.msu.su/courses/cg01b/mat_morph.zip)
  3. Richard Alan Peters II "A New Algorithm for Image Noise Reduction using Mathematical Morphology". IEEE Transactions on Image Processing, Volume 4, Number 3, pp. 554-568, May 1995
  4. G. de Haan, T. G. Kwaaitaal-Spassova and O.A. Ojo "Automatic 2-D and 3-D noise filtering for high-quality television receivers". International Workshop on HDTV"94,4-B-2,1994-10
  5. R. J. Schutten, G. de Haan and A. H. M. van Roermund "Noise filtering for television receivers with reduced memory". Proc. of the Int. Workshop on HDTV and the Evolution of Television, Taipei, Taiwan, Nov. 1995, pp. 6A15--6A22
  6. G. de Haan, T.G. Kwaaitaal-Spassova, M.M. Larragy, O.A. Ojo, and R.J. Schutten "Television noise reduction IC". Digest of the ICCE"96, June 1996, Chicago, pp. 184-185
  7. Hakan Norell, Bengt Oelmann and Youshi Xu "Spatio-Temporal Noise Reduction ASIC for Real-Time Video Processing". In Proc. IEEE Nordic Signal Processing Symposium, Kolmarden, Sweden, 13-15 June, 2000
  8. Detlev Marpe, Hans L. Cycon, Gunther Zander, Kai-Uwe Barthel "Context-based Denoising of Images Using Iterative Wavelet Thresholding". Proc. SPIE, Vol. 4671, pp. 907-914, Jan. 2002
  9. S.G. Chang, B. Yu, and M. Vetterli, "Spatially adaptive wavelet thresholding with context modeling for image denoising". IEEE Trans. Image Proc., Sept. 2000.
  10. Aleksandra Pizurica, Vladimir Zlokolica and Wilfried Philips "Noise Reduction in Video Sequences Using Wavelet-Domain and Temporal Filtering". SPIE Conference on Wavelet Applications in Industrial Processing 27-31 October 2003.
  11. Aleksandra Pizurica and Wilfried Philips "Adaptive Probabilistic Wavelet Shrinkage for Image Denoising". IEEE Transactions on Image Processing, July 11, 2003.
  12. Aleksandra Pizurica, Wilfried Philips, Ignace Lemahieu, and Marc Acheroy "A Versatile Wavelet Domain Noise Filtration Technique for Medical Imaging". IEEE Trans Med Imaging. 2003 Mar;22(3):323-31
  13. Aleksandra Pizurica, Vladimir Zlokolica and Wilfried Philips "Combined Wavelet Domain and Temporal Video Denoising" . IEEE Conference on Advanced Video and Signal Based Surveillance (AVSS"03), July 2003.
  14. Lindsay I Smith "A tutorial on Principal Components Analysis". 2002 (http://www.cs.otago.ac.nz/cosc453/student_tutorials/principal_components.pdf)
  15. D. Darian Muresan, Thomas W. Parks "Adaptive principal components and image denoising". IEEE ICIP 2003
  16. Интернет-ресурс: http://taco.poly.edu/WaveletSoftware/ .
  17. Ivan W. Selesnick and Ke Yong Li "Video denoising using 2D and 3D dual-tree complex wavelet transforms". Appl Signal Image Proc. X (Proc. SPIE 5207), Aug 200 3
  18. Julia Neumann Gabriele Steidl "Dual Tree Complex Wavelet Transform in the Frequency Domain and an Application to Signal Classification". Technical Report TR-03-013, Department for Mathematics and Computer Science, University of Mannheim, 2003
  19. Miroslav Vrankic, Damir Sersic "Image Denoising Based on Adaptive Quincunx Wavelets". In Proc. of the 2004 IEEE 6th Workshop on Multimedia Signal Processing, (MMSP 2004), Siena, Italy, September 29 - October 01, 2004, pp. 251-254
  20. Vladan Velisavljevic, Baltasar Beferull-Lozano1, Martin Vetterli, Pier Luigi Dragotti "Discrete Multi-Directional Wavelet Bases". Proc. IEEE International Conference of Image Processing (ICIP2003)
  21. Felix C. A. Fernandes, Rutger L. van Spaendonck, C. Sidney Burrus "A Directional, Shift-Insensitive, Low-Redundancy, Wavelet Transform". IEEE Proceedings on International Conference on Image Processing (ICIP 2001)
  22. Daubechies "Ten Lectures on Wavelets", Philadelphia: SIAM, 1992.
  23. S. Mallat "A wavelet tour of signal processing", Academic Press, London, 1998 .
  24. Интернет-ресурс: http://astronomy.swin.edu.au/~pbourke/analysis/ .
  25. Д. Ватолин, А. Ратушняк, М. Смирнов, В. Юкин "Методы сжатия данных. Устройство архиваторов, сжатие изображений и видео". Диалог-МИФИ, 2002
  26. Generic coding of moving pictures and associated audio information: Video. ISO/IEC 13818-2:2000
  27. G. de Haan "Progress in motion estimation for video format conversion". IEEE Transactions on Consumer Electronics Vol 46 No 3 Aug 2000 pp 449-450
  28. Javier Portilla, Vasily Strelay, Martin J. Wainwrightz, Eero P. Simoncelli "Adaptive Wiener Denoising Using A Gaussian Scale Mixture Model In The Wavelet Domain". Proceedings of the 8th IEEE Int"l Conf on Image Processing Thessaloniki, Greece. 7-10 October 2001
20 августа 2009 в 22:21

Очистка изображения от шума, некоторые методы

  • Блог компании Gil Algorithms

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

Какие же есть средства, чтобы убрать этот шум, и которые не нарушают чужих патентов? Надеюсь, этот небольшой обзор будет полезным.

1. Переход в координаты яркость-цвет.
Это преобразование можно осуществлять многими способами: HSV, L*a*b и т.п. По некоторым причинам, в которые мы не будем углубляться:
- человеческий глаз намного менее чувствителен к деталям цветовой информации, чем яркостной
- шум в цветовой компоненте, напротив, гораздо выше, чем в яркостной
Поэтому простая фильтрация цветовой компоненты + обратное восстановление, обычно, делают картинку сильно лучше.

2. Медианный фильтр.
Хорошим простым способом очистить картинку от шума является медианный фильтр Im_new(x,y)=median{dx=-1..1,dy=-1..1}Im(x+dx,y+dy).
У этого метода есть множество вариаций, приведу лишь некоторые:
2.1 Шаг 1: вычислить M1=median(C, Cnorth, Csouth); M2=median(C, Ceast, Cwest); M3=median(C, Cne, Csw); M4=median(C, Cnw, Csw); здесь Cnort, Cne,...Cnw - восемь соседних пикселей из окрестности 3x3, C - центральный пиксель
Шаг 2 - вычислить Ma=median(C, M1, M2); Mb=median(C, M3, M4);
Шаг 3 - вычислить Csmooth=median(C, Ma, Mb);
Шаг 4 - заменить C на Csmooth.
2.2 Шаг 1: отсортировать пиксели из окрестности 3x3 по возрастанию, P...P.
Шаг 2: Если центральный пиксель равен P - заменить его на P, если центральный пиксель равен P - заменить его на P, в других случаях оставить без изменения.
Это направление использует компания Kodak, а также большинство сканеров и факс-аппаратов.

3. Фильтры, управляющие величиной коррекции
Этот метод сначала предлагает сгладить картинку как-нибудь грубо, например с помощью low-pass filter, bilateral filter или еще как-нибудь. А потом делается такая процедура
Im_new(x,y)=Im(x,y)+S(Im(x,y)-Im_smooth(x,y),threshold).
Функция-передатчик S может быть устроена по разному, например так:
S(x,threshold) = x, если -thresholdthreshold; S(x,threshold)=-threshold если x<-threshold. Если выбрать threshold примерно равным величине шума, то весь шум пропадет, а детали и мелкие объекты останутся четкими.

4. Bilateral filter
Очень интересный фильтр, изобретенный в 2003 году. За описаниями отсылаю к Интернету.
Вот здесь достаточно хорошая статья: scien.stanford.edu/class/psych221/projects/06/imagescaling/bilati.html
Интересной разновидностью bilateral filter является, также T-filter:
Шаг 1: Найти все пиксели в окрестности, значения которого отличаются от исходного пикселя не более, чем на заданный threshold.
Шаг 2: Усреднить эти найденные пиксели и сохранить значение.

5. Фильтры, использующие спектральное представление сигнала
Так работает, к примеру, Photoshop. Суть идеи в том, чтобы сделать в окрестности каждого пикселя преобразование Фурье, затем стереть высокие частоты и сделать обратное преобразование.
Вместо преобразования Фурье используются также и другие ортогональные базисы, иногда довольно замысловатые. По-сути, это целое семейство методов.

6. Фильтры, выделяющие доминантное направление
Эти фильтры в каждой точке сначала находят доминантное направление (направление градиента яркости), а затем усредняют сигнал только в перпендикулярном направлении. Таким образом, линии и мелкие детали остаются четкими. Хорошие разновидности этого алгоритма учитывают также значения матрицы вторых производных.
Это целое семейство алгоритмов, описания которых можно также найти в Интернете.

7. Локальная классификация фрагментов
Эти фильтры особенно хорошо работают со специальными изображениями, такими как текст, звездное небо и т.п.
Сначала составляется база данных типичных элементов такого изображения, к примеру, несколько сотен фрагментов NxN пикселей, которые уже очищены от шума.
Алгоритм работает так: окрестность каждого пикселя сравнивается с этими фрагментами и выбирается один, который наиболее похож. Затем значение исходного пикселя на грязной картинке заменяется на значение аналогичного пикселя, расположенного в этом же месте на чистом фрагменте.

8. Приведу в конце «простецкий» способ, который также можно использовать в ряде случаев.
Шаг 1: Уменьшить картинку (применяя какой-нибудь умный алгоритм Downscaling)
Шаг 2: Увеличить ее обратно (применяя какой-нибудь умный алгоритм Upscaling)
Дело в том, что алгоритмы Upscaling/ Downscaling бывают очень мощными (Lanczos filter, фрактальные методы и т.п.), так что результат получается вполне удовлетворительным. Этот же метод можно использовать в качестве простой, но довольно эффективной компрессии.

Всем доброго времени суток! Продолжаем потихоньку наполнять рубрику ! В этой статье я хочу рассказать и показать вам, один из самых быстрых и лёгких способов как убрать шум в Фотошоп . Чтобы более глубоко и детально раскрыть эту тему, я подобрал специально такое изображение, на котором покажу как убирать с изображения яркостный шум и цветовой шум.

Вообще шум целая, неприятная проблема цифровых фотографий, сделанных в темное время суток и сейчас мы с вами эту проблему за решаем. Для начала давайте откроем наше изображение с шумом и оценим ситуацию в целом.

Заходим в меню Файл/Открыть или воспользуемся горячими клавишами CTRL+O . Кстати, ещё можно открыть изображение с помощью функции «Открыть как… » (ALT+SHIFT+CTRL+O ), находим и выбираем наше изображение с шумом, затем справа от поля «Имя файла», выбираем открыть как тип файла «Camera Raw» и наше изображение сразу же открывается в фильтре Camera Raw.

Я открываю свое изображение первым, обычным способом, чтобы далее показать как зайти в специальный фильтр «Camera Raw», выбрать нужную вкладку и провести операции по устранению шума. Теперь давайте оценим моё изображение, в котором присутствует цветовой и яркостный шум. Вот оно:

Изображение с цветовым и яркостным шумом

Шума в этом изображение больше чем достаточно. Вы наверное уже начали сомневаться, что у нас что-то получится.. Конечно же, полностью весь шум убрать не получится, но сделать изображение менее шумным легко. Переходим от теории к практике!

Шаг №1

Итак, я открыл своё изображение в Фотошоп, теперь мне нужно зайти в специальный фильтр — «фильтр Camera Raw». Для этого я захожу в верхнее меню Фильтр/Фильтр Camera Raw , либо воспользуюсь горячими клавишами (SHIFT+CTRL+A ).

Заходим в меню Фильтр/Фильтр Camera Raw…

Шаг №2

Перед нами открывается окошко фильтра Adobe Camera Raw. Ставим галочку наверху в пункте «Контрольный просмотр», чтобы сразу видеть изменения изображения во время работы в фильтре. Далее выбираем вкладку «Детализация», у меня эта третья иконка слева. В нижнем левом углу можно менять масштаб изображения, скоро это нам понадобится.

Окно фильтра Adobe Camera Raw

Шаг №3

Находим ползунок «Цветность» и потихоньку передвигаем его вправо, до тех пор, пока не исчезнут цветовые точки. Не старайтесь на этом этапе убрать яркостный шум, пока что мы убираем только цветовой шум (цветовые точки). Как только цветовые точки исчезнут, сразу перестаём двигать ползунок.

Увеличили масштаб изображение до 300%

Вот что у нас получилось на данном шаге после не сложных манипуляций ползунком «Цветность». Обратите внимание, что цветные точки (цветовой шум) полностью исчезли с изображения. Теперь осталось убрать яркостный шум.

Цветовой шум в виде цветовых точек полностью убран

Шаг №4

Теперь давайте приступим к устранению яркостного шума. Для того, чтобы это сделать находим ползунок «Светимость» и медленно двигаем его в правую сторону, параллельно наблюдая за нашим изображением. Когда будет достаточно, определяем в каждом случае индивидуально, но значение «Светимости» при любом раскладе всегда выше значения «Цветности». Вот что получилось:

Вот такую картинку мы получили, шум практически полностью исчез

Шаг №5

В результате всех наших манипуляций, резкость изображения уменьшилась. Для того, чтобы увеличить резкость, необходимо подвигать вправо ползунки «Эффект» или «Сведения о яркости». Можно подвигать два этих ползунка или любой один из них.

Но имейте ввиду, двигать ползунки нужно очень осторожно, потому что получается обратный эффект, чем больше вы добавляете резкости, тем больше появляется шум. В конце не забудьте нажать кнопку «Ок» для того чтобы сохранить все изменения.

Осторожно добавляем резкость

Теперь давайте посмотрим на результат всей нашей работы по устранению шума из изображения. В итоге мы получили изображение на котором практически отсутствует шум, результат вполне достойный. Думаю теперь у вас отпадет вопрос о том как убрать шум в Фотошоп .

Вот что получилось после обработки по удалению шума

Если вам понравился этот урок и вы считаете его полезным, то прямо сейчас поделитесь ссылкой на этот урок со своими друзьями в социальных сетях, сделайте доброе дело пусть другие люди тоже получают пользу от этого материала! Кнопки соц. сетей расположены ниже.

На этом сегодня всё, спасибо за внимание, увидимся в следующих уроках!

Изобретение относится к способам удаления шума в изображении и может быть использовано для улучшения качества изображения. Техническим результатом является упрощение удаления шума и повышение качества получаемого цифрового изображения, это достигается тем, что за счет преобразования яркости пикселей изображения с шумом путем решения уравнения диффузии недивергентной формы обеспечивается одновременное подавление шума и сохранение кромок изображения. 2 з.п. ф-лы, 1 ил.

Область техники, к которой относится изобретение

Изобретение относится к способам удаления шума в изображении и может быть использовано для улучшения качества изображения.

Предшествующий уровень техники

К настоящему времени известны различные способы удаления шума в изображении.

Например, в патенте US 6463182, Canon Kabushiki Kaisha, 08.10.2002, G06K 9/40 описывается устройство и способ удаления шума в изображении, в которых данные изображения с искажениями разделяют на блоки и корректируют шум в зависимости от положения каждого пикселя изображения в блоке.

В патенте US 5933540, General Electric Company, 03.08.1999, G06K 9/00 приводится система и способ уменьшения шума и улучшения качества кромок цифрового изображения путем определения фонового значения шума на всем изображении и его удаления с помощью системы фильтров.

Известен способ удаления случайных шумов (патент US 5225915, Xerox Corporation, 06.07.1993, H04N 1/40) за счет применения к данным изображения в качестве фильтра модифицированной функции Лапласа, имеющей максимум на частоте, оптимальной для удаления шума.

Наиболее близким к заявленному изобретению является способ уменьшения шума на изображении, предполагающий использование дифференциальных вычислений (Later, Catte, Morel et al.). В данном способе изображение с шумом преобразовывают параболическим уравнением, в результате чего удаляют шум на изображении, получая изображение без шума. Данный способ выбран в качестве прототипа заявленного изобретения. Недостатком приведенных выше аналогов и прототипа является нестабильность решений математического выражения, описывающего шум, и размывание изображения в результате его применения. Отличие заключается в использовании другого (более простого) уравнения, которое не имеет указанных недостатков и проще в решении.

Сущность изобретения

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

Поставленная задача решена путем создания способа удаления шума на изображении, включающего в себя этапы, на которых:

Получают от внешнего устройства многомерное изображение с кромками, состоящее из пикселей и имеющее шум;

Определяют в модуле координат яркость пикселей для координат всех пикселей многомерного изображения, где n - количество измерений;

Записывают массив данных яркости пикселей многомерного изображения в память;

Производят в фильтре для всех пикселей многомерного изображения следующие операции:

Задают зависимость яркости пикселей изображения двумерным уравнением диффузии недивергентной формы вида

, (1)

где - релаксационный параметр, - функция от координат пикселей многомерного пространства и релаксационного параметра, k - коэффициент диффузии, , где - параметр сглаживания итогового изображения около кромок, и чем больше значение этого параметра m , тем слабее сглаживание итогового изображения без шума около кромок, - параметр сглаживания итогового изображения без шума в областях, где нет кромок, чем больше значение этого параметра, тем слабее сглаживание итогового изображения без шума в областях, где нет кромок;

Численно решают n-мерное уравнение диффузии (1) с начальным условием , находя решение при значении релаксационного параметра , которое определяет общую степень сглаживания итогового изображения без шума, чем больше эта величина, тем сильнее сглаживается изображение, при этом получают совокупность координат пикселей итогового изображения без шума;

Записывают яркость пикселей итогового изображения без шума в память;

Выводят итоговое изображения без шума на устройство отображения.

Для функционирования способа существенно, чтобы внешнее устройство было выполнено в виде камеры стереозрения, сканера, цифрового фотоаппарата или других аналогичных устройств.

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

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

Для лучшего понимания настоящего изобретения далее приводится его подробное описание с соответствующими чертежами.

Блок-схема системы для осуществления заявленного способа согласно изобретению изображена на чертеже.

Система для осуществления заявленного способа включает в себя внешнее устройство 1, вычислительное устройство 2 и устройство отображения 3, причем вычислительное устройство 2 содержит память 4, модуль 5 определения яркости и фильтр 6.

Рассмотрим более подробно функционирование согласно заявленному способу.

Сначала получают от внешнего устройства 1 многомерное изображение с кромками, имеющее шум. Определяют в модуле 5 яркость пикселей многомерного изображения, где и n - количество измерений. Записывают массив данных яркости пикселей многомерного изображения в память 4.

Производят в фильтре 6 для всех пикселей многомерного изображения следующие операции:

задают зависимость яркости пикселей многомерного изображения уравнением диффузии вида

,

где - неизвестная функция, t - релаксационный параметр (его значение будет описано ниже), x - координаты пикселя изображения в n -мерном пространстве. Для двумерных изображений размерность пространства (в этом случае можно считать ), для специальных видов изображений размерность может быть больше. В уравнение также входят , В рассматриваемом решении предлагается использовать коэффициент диффузии в виде где . Значение параметра (как и значение m ) влияет на степень сглаживания изображения.

Основной способ использования уравнения диффузии заключается в том, что исходное изображение рассматривается как начальные данные для указанного уравнения при ,

Рассматривая эволюцию решения при увеличении значения параметра t , получают различные сглаженные версии исходного изображения. Таким образом, еще одним неявным параметром фильтра 6 является конечное значение релаксационного параметра, T . Результат работы фильтра 6 есть

Заметим, что поскольку коэффициент диффузии есть нелинейная функция, результат работы фильтра 6 есть нелинейное преобразование исходного изображения. Это делает процесс фильтрации зависимым от изображения. Различные изображения сглаживаются по-разному. Это несколько затрудняет универсальную оценку качества сглаживания.

Для решения указанного выше диффузионного уравнения используют коэффициент диффузии вида Параметр связан с масштабом представления яркости изображения и влияет на характер сглаживания изображения в областях, где нет кромок. При малых значениях параметра сглаживание будет более сильным, чем при больших. В качестве значения этого параметра обычно берут . Параметр m влияет на сглаживание изображения в окрестностях кромок, чем больше значение этого параметра, тем слабее будет сглаживание около кромок. Обычно достаточно использовать значение или . Параметр влияет на общее сглаживание изображения. При увеличении этого параметра увеличивается общее сглаживание исходного изображения. В качестве граничных условий на краях изображения наиболее удобно брать условие .

Исходное изображение дискретизуют на многомерной сетке, получая матрицу яркости изображения .

Численно решают n-мерное уравнение диффузии. Для решения данного уравнения применяют неявную разностную схему с расщеплением с использованием метода дробных шагов. Решение уравнения при получают при помощи решения описываемого ниже разностного уравнения. Один полный цикл решения многомерного разностного уравнения соответствует вычислению решения для значения исходя из значений решения для значения релаксационного параметра . Численная схема допускает грубую оценку решения при любом значении τ за один шаг, для более точных расчетов рекомендуется делать несколько шагов с меньшими значениями τ.

Входными данными для одного шага расчета является матрица яркости изображения при значении параметра . На выходе получим значения яркости при

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

Для сведения решения многомерного разностного уравнения к последовательности одномерных уравнений предлагается использовать расщепление по методу дробных шагов. Здесь n - размерность изображения (пространства).

Один шаг по параметру t для исходного многомерного уравнения предлагается заменить на n последовательных элементарных шагов по отдельным измерениям, где на каждом элементарном шаге решают одномерное уравнение вида

В качестве начальных значений для самого первого подшага берут исходное значение яркости при : Результат вычисления после n подшагов есть искомое значение яркости при

Элементарные шаги по параметру t выбирают равными, например, где - пространственная частота дискретизации для сетки (можно также ввести этот параметр и для вычисления коэффициента диффузии). Значение τ можно задать выражением

Покажем, как решаются полученные одномерные задачи. Получаемые элементарные задачи являются одномерными, т.к. все индексы переменных, кроме являются фиксированными. Поэтому при рассмотрении одной такой задачи отбрасываем постоянные индексы.

Каждая элементарная задача распадается на независимых трехдиагональных систем линейных уравнений относительно имеющая вид где для рассматриваемого случая а граничные условия имеют вид где r - количество узлов сетки (размер изображения в пикселях по данному измерению). Для решения указанной системы линейных уравнений применяют метод прогонки: сначала выполняют прямой ход подстановки: указанные уравнения преобразуют к виду (вычисляются коэффициенты

используют граничное условие слева, при этом где

подставляют последовательно получаемые уравнения в исходную систему

где

После вычисления значений на шаге, используют правое граничное условие и вычисляют Затем выполняют обратную подстановку и по ранее вычисленным значениям получают последовательно и, наконец

Шумы могут быть случайные аналоговые, импульсные и различного рода детерминированные.

Случайные аналоговые шумы

Случайные аналоговые шумы порождаются, как правило, гранулярной структурой фотографического материала, но котором изготовлен оригинал. Шумы становятся актуальными при увеличении более чем в 8 раз.

Для устранения таких шумов применяются методы сглаживающей фильтрации.

Действие этих методов основано на цифровой фильтрации путем усреднения значения сигнала по окрестности считываемой пиксели. В программах типа PhotoShop эти сглаживающие фильтры носят название Blur, Gaussian Blur.

Blur даст прямое усреднение. Gaussian Blur вводит веса пиксель в матрицу усреднения по закону Гаусса.

Blur является устаревшим так как не позволяет регулировать степень усреднения. Степень сглаживания регулируется неоднократным применением фильтра.

Gaussian Blur более современный. В нем можно регулировать параметр усреднения, регулируя таким образом сглаживание.

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

Случайные импульсные шумы

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

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

Таким образом можно устранить относительно мелкие дефекты как типа царапин, так и типа пыли. В принципе можно изменять длину серии и таким образом осуществлять селекцию более крупных дефектов.

Однако, для достаточно крупных дефектов, которые превышают длину серии пиксель этот метод не применим.

Именно по этому методу работает фильтр Dust and Scratches.

При более крупном импульсном шуме необходимо прибегать к полуавтоматическому ретушированию, в котором устранение дефектов изображения осуществляется путем замены дефектных пиксель на окрашенные пиксели из их ближнего окружения. Из ближнего окружения выбирается пикселя и сажается на дефектное место.


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

Детерминированные шумы изображения

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

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

Возможно два пути решения этой проблемы:

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

Теоретически и экспериментально показали, что наилучшие результаты получаются при согласовании размера апертуры с размерами растрового элемента растровой структуры оригинала. Поэтому в процессе сканирования необходимо точно определить линиатуру растра, который использовался в оригинале и фильтр де растрирования выбирать в соответствие с этой линиатурой.

Для определения линиатуры растра в оригинале возможно использование специальных тестов. Некоторые современные программы, например LinoColor, позволяют в процессе предварительного сканирования определять линиатуру и в соответствие с ней устанавливать оптимальный фильтр дерастрирования.

Недостатки такого устранения:

1) потеря резкости изображения;

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

2. считывание растровой структуры с ее полным сохранением. В результате мы получим при считывании трех растровых цветоделенных изображения с сохранением растровой структуры. По сути дела мы получим изображение в системе СМУК. Далее это изображение можно перевести в Lab потеряв таким образом информацию о растровой структуре. Затем всю обработку перевести в Lab и перейти в СМУК со своей растровой структурой.

Для этого необходимо считывать с высоким разрешением. СopiDot – соответствующее программное обеспечение для перевода СМУК в Lab.

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

Особенно интересна эта технология, которая в последнее время сильно развилась, необходимостью использования каких-то архивных фотофрм технологии C-t-P (компьютер-печатная форма).

3. перерастрирование с использованием растра нерегулярной структуры (частотно-модулированного).



Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png