Способ адаптивной медианной фильтрации импульсного шума на изображениях
METHOD FOR ADAPTIVE MEDIAN FILTERING OF IMPULSE NOISE IN IMAGES

Настоящее изобретение относится к способам обработки изображений, а более конкретно, к способам очистки изображений от импульсных шумов.
При получении или передаче цифровые изображения подвергаются воздействию шумов, что приводит к ухудшению визуального качества и потере участков изображений. В связи с этим исправление поврежденных пикселей является важной задачей цифровой обработки изображений [1]. В настоящее время существует большое количество методов очистки изображений от шума, зависящих от типа шумового воздействия. Применение линейных фильтров для этой цели вызывает сильное размытие участков изображения, приводящее к потере деталей и контуров изображения [2]. Для преодоления этого недостатка была предложена медианная фильтрация, которая заменяет пиксели изображения на соответствующие значения медиан некоторой окрестности [3]. Медианные фильтры также приводят к размытию изображения, которое, однако, значительно менее заметно, по сравнению с результатами обработки линейными фильтрами. Это становится особенно заметным при обработке изображений, искаженных импульсным шумом с высокой интенсивностью. Для уменьшения этого негативного эффекта изначально были предложены медианные фильтры с взвешенными весовыми коэффициентами [4], а затем и новые подходы, основанные на адаптивной фильтрации [5; 6]. Также был предложен метод нелинейной обработки изображений, основанный на двухступенчатой процедуре формирования взвешенных сумм, вычисляемых по вариационному ряду неискаженных пикселей в окне обработки [7].
При адаптивной медианной фильтрации сначала устанавливается факт наличия импульсного искажения пикселя, после чего осуществляется его исправление (Патент РФ №2043654, опубл. 10.09.1995). В настоящее время существуют весьма эффективные методы определения пикселей, искаженных импульсным шумом [8; 9].
В настоящее время существуют разные подходы для исправления пикселей, искаженных импульсным шумом. В работе [6] предлагается увеличивать маску медианного фильтра до тех пор, пока не будет получено приемлемое значение результата.
В работе [10] предлагаются два метода адаптивной медианной фильтрации импульсного шума в изображениях. Первый метод основан на совместном применении итеративной обработки и преобразования результата медианной фильтрации на основе распределения Лоренца. Второй метод отличается использованием других масок медианного фильтра, рассчитанных с использованием метрики Евклида. В работе [11] представлен метод, основанный на комбинированном использовании итерационной обработки изображений и постобработке результата медианной фильтрации. В данной работе нечеткие множества описаны кусочно-линейными функциями. К существенным недостаткам данных методов можно отнести сложность производимых вычислений.
Известен способ уменьшения импульсного шума при помощи схемы (Патент РФ №2107404, опубл. 20.03.1998), которая замещает часть импульсного шума заранее запомненными и хранимыми значениями.
Существенным недостатком данного способа является отсутствие возможности замены искаженного пикселя на исправленный при их неблагоприятном расположении.
Известно устройство и способ уменьшения влияния импульсного шума при помощи повторной передачи пакета данных (Патент РФ №2449479, опубл. 27.04.2012).
Недостатком данного способа является то, что способ возможно применять, только в условиях постоянной передачи пакетов с возможностью доступа к неискаженной версии изображения.
Известен способ обнаружения и устранения импульсного шума при обработке изображений и реализующее его устройство (Патент РФ №2449355, опубл. 10.02.2012). Обнаруженные значения импульсного шума устраняются путем замены их на значения аппроксимирующей поверхности на локализованных областях. Способ заключается в том, что значения исходного цифрового изображения сравниваются с различными значениями порогов. Затем формируется набор штрафов для значений исходного цифрового изображения, которые превысили установленные значения порогов, формируются результирующие штрафные значения путем суммирования значений штрафов отдельно для каждого отсчета. При этом отсчеты, у которых результирующие штрафные значения превышают вычисленный пороговый уровень, считаются аномальными. Далее формируются двумерные массивы штрафов для каждого порогового уровня. После чего определяются двумерные области нестационарности и локализуются двумерным программным обнаружителем с последующим обнулением штрафных значений. Обнаруженные значения импульсного шума устраняются путем замены их на значения аппроксимирующей поверхности первого порядка на локализованных областях.
Недостатком данного способа является то, что при интенсивном расположении искаженных пикселей в заданной окрестности метод дает низкокачественный результат обработки.
Наиболее близким к предлагаемому способу, выбранным в качестве прототипа, является способ устранения импульсных помех на цветных изображениях (патент РФ 2618390, опубл. 03.05.2017), заключающийся в обнаружении искаженных элементов и последующей векторной медианной фильтрации искаженных элементов, при этом дополнительно проверяют наличие либо отсутствие искажений элементов в каждой цветовой компоненте, в случае если элементы искажены не во всех компонентах, то выбирают элементы неискаженных компонент и выполняют межканальную градиентную реконструкцию элементов в искаженной компоненте по соответствующим выбранным элементам неискаженных компонент, в случае если элементы искажены во всех компонентах, то выполняют векторную медианную фильтрацию элементов трех цветовых компонент, и в случае если искажения элементов отсутствуют во всех компонентах, то элементы трех цветовых компонент сохраняют без изменений.
Недостатком данного способа является низкое качество обработки, связанное с тем, что при интенсивном расположении искаженных пикселей в заданной окрестности метод данный метод может не исправить искажение за одну итерацию.
Технической задачей настоящего изобретения является улучшение качества обработки изображений от импульсного шума с сохранением деталей изображения.
Техническим результатом является улучшение качества обработки изображения, при помощи очистки изображения от импульсного шума с использованием адаптивной медианной фильтрации.
Данный технический результат достигается при помощи предложенного способа адаптивной медианной фильтрации импульсного шума на изображениях, который заключается обнаружении искаженных элементов и последующей медианной фильтрации искаженных элементов, при этом к искаженным относят пиксели со значениями 0 и L, где L – максимально возможное значение яркости пикселя, до тех пор, пока изображение содержит искаженные пиксели итерационно проверяют все пиксели изображения, неискаженные пиксели переносят на изображение следующей итерации, а для искаженных пикселей формируют массив доступных соседних неискаженных пикселей, если данный массив не содержит элементов, то выбранный искаженный пиксель переносят на изображение следующей итерации без изменений как искаженный пиксель, а в случае, если массив доступных соседних неискаженных пикселей содержит хотя бы один элемент , то для элементов массива находят медиану , для каждого элемента  массива вычитают значение медианы  и формируют массив неотклонённых пикселей , сравнивая для каждого  соответствующее значение  с уровнем отклонения  и если  , то в массив  не добавляется ничего, а если ,  то в массив  добавляется элемент , после чего вычисляют  медиану  для массива  значение которой является значением  исправленного пикселя и переносят его на изображение следующей итерации как неискаженный пиксель.
Сущность предложенного способа базируется на математическом аппарате адаптивной медианной очистки изображений от импульсного шума и предполагает использование итеративной обработки изображения масками небольшого размера с обработкой результата на основе медианы неотклоненных пикселей.
Численная оценка результатов моделирования на основе пикового отношения сигнала к шуму (PSNR) и индекса структурного сходства (SSIM) позволяет сделать вывод о том, что представленные методы лучше справляются как с очисткой от шумов с низкой интенсивностью, так и с очисткой от экстремальных шумов с интенсивностью 90–99 %.
Предложенный способ фильтрации импульсного шума поясняется фигурой 1 и основан на итерационном выполнении фильтрации с расчетом полученного значения пикселя. При последовательной обработке изображения в оттенках серого, переменная  используется для обозначения пикселей с координатами  в исходном зашумленном изображении, а переменная  используется для обозначения пикселя в позиции  после n-ой итерации. В последовательности карт искаженных пикселей значения  определяются в зависимости от наличия искажения в пикселе  следующим образом:
Переменная  принимает значение  в случае, когда пиксель с координатами  не искажен, а значение переменной  предполагает, что пиксель с координатами  искажен и его требуется подвергнуть фильтрации.
Схема способа адаптивной медианной фильтрации импульсного шума на изображениях представлена на фиг 1 и содержит блок буфера 1, вход которого является информационным входом устройства, на который подается исходное изображение, искаженное шумом.
Исходное изображение из блока 1 поступает в блок 2, который 2 отвечает за составление карты искаженных пикселей, на которой начальные значения  устанавливаются равными 1, если  или , и устанавливаются равными 0, если .
После составления карты искаженных пикселей блок 3 загрузку в память версии изображения, которая необходима для обработки из блока 2 для исходного изображения, или блока 14 для изображения после цикла итерации.
В блоке 4 осуществляется поочередный просмотр пикселей изображения текущей итерации и формирование следующей итерации, непросмотренные пиксели изображения передаются на блок 5.
Блок 5 отвечает за проверку изображения на наличие непросмотренных пикселей. Если непросмотренных пикселей не обнаруживается, то производится переход к блоку 14. Если же на этапе работы в блоке 5 обнаруживается непросмотренный пиксель, то он подается на вход блока 6.
В блоке 6 производится проверка обнаруженного пикселя на наличие в нем искажения. Если для пикселя в позиции  значение карты искаженных пикселей , то пиксель является неискаженным и выполняется переход к блоку 10. Если же для пикселя значение карты , то обнаруженный непросмотренный пиксель является искаженным и происходит переход к блоку 7.
В блоке 7 формируется массив соседних пикселей  для следующим образом. Создается массив координат  по формуле:
Если какие-то из элементов множества  принимают недопустимые значения (выходят за границы изображения), то для соответствующих координат в массив  не добавляется ничего. Для допустимых значений элементов множества  в массив  добавляются пиксели с соответствующими координатами. После формирования массива соседних пикселей  производится переход к блоку 8.
Блок 8 отвечает за составление массива неискаженных соседних пикселей , где для элементов множества  проверяется значение в карте  с соответствующей координатой. Если оно равно 1, то в массив  не добавляется ничего, если оно равно 0, то в массив  добавляется элемент , равный значению пикселя с соответствующей координатой из изображения . По окончанию составления массива неискаженных соседних пикселей происходит переход к блоку 9.
В блоке 9 производится проверка массива  на пустоту. Если массив  остался пустым, то переменной  присваивается значение равное 1 означающее, что пиксель с координатами  остался искаженным и производится его передача на вход блока 10. Если же в массиве  обнаружен хотя бы один элемент, то производится переход к блоку 11.
Выходы блока 6 и блока 9 поступают на вход блока 10. В данном блоке 10 происходит перенос пикселя в новую версию изображения без его изменения по формуле .
В блоке 11 переменной  присваивается значение равное 0 для корректировки карты искаженных пикселей. Выход блока 11 соединен со входом блока 12.
В блоке 12 производится вычисление медианы  массива. Для этого производится вычисление переменной, которая равна количеству элементов в массиве . Если массив  состоит из нечетного числа элементов, то медиана  равна элементу с номером  для упорядоченного по возрастанию массива . Если массив  состоит из четного числа элементов, то медиана  равна среднему арифметическому элементов с номерами  и  для упорядоченного по возрастанию массива . Выход блока 12 соединен со входом блока 13.
В блоке 13 производится расчёт значения элемента . Для каждого элемента  массива  происходят вычисления в следующем порядке:
Выход блока 13 соединен со входом блока 14.
В блоке 14 производится составление массива неотклонённых пикселей  следующим образом. Для элементов  массива  производится поочередное сравнение соответствующих значений  со значением , которое является уровнем отклонения. Уровень отклонения определяется пользователем в зависимости от вероятности искажения пикселей и может меняться от 10 до 200. Если , то в массив  не добавляется ничего, если ,  то в массив  добавляется элемент . По окончанию составления массива  происходит переход к блоку 15.
В блоке 15 производится вычисление медианы  массива. Для этого производится вычисление переменной, которая равна количеству элементов в массиве . Если массив  состоит из нечетного числа элементов, то медиана  равна элементу с номером  для упорядоченного по возрастанию массива . Если массив  состоит из четного числа элементов, то медиана  равна среднему арифметическому элементов с номерами  и  для упорядоченного по возрастанию массива . Полученное значение является значением исправленного пикселя .
Если непросмотренных пикселей изображения не осталось, то изображение передается на вход блока 16, в котором осуществляется проверка изображения на наличие искаженных пикселей. Если , то это обозначает, что есть искаженные пиксели и происходит возврат к блоку 3. Если , то это означает, что искаженных пикселей не осталось и происходит переход к блоку 17.
Обработанное изображение поступает на вход блока буфера 17, выход которого является информационным выходом схемы. Изображение, полученное в блоке 17, считается восстановленным выходным изображением.
Поясним работу способа примером. Рассмотрим принцип работы способа адаптивной медианной фильтрации импульсного шума на примере центрального искаженного пикселя для изображения в оттенках серого с максимально возможным значением яркости 255:
В блоке 2 начальные значения  устанавливаются равными 1, если  или , и устанавливаются равными 0, если . Карта искаженных пикселей приобретает вид:
Обработка изображения происходит итерационного, для чего исходное изображение загружают в блок 3. После чего загруженное изображение подается на вход блока 4, в котором производится поочередный просмотр пикселей изображения. После чего изображение поступает на вход блока 5, который отвечает за проверку изображения на наличие непросмотренных пикселей. Непросмотренный пиксель подается на вход блока 6. В блоке 6 производится проверка обнаруженного пикселя на наличие в нем искажения. Для 6 неискаженных символа из значения без изменений переносятся в изображение следующей итерации. В соответствие с картой искаженных пикселей фрагмент содержит 3 искаженных пикселя и в качестве примера рассмотрим пиксель с координатами (2,2), т.е. , он является искаженным и происходит переход к блоку 7.
В блоке 7 формируется массив соседних пикселей  для . Для этого создается массив координат  по формуле (2) и массив соседних пикселей  принимает следующий вид:
После формирования массива соседних пикселей  производится переход к блоку 8. Блок 8 отвечает за составление массива неискаженных соседних пикселей , где для элементов множества  проверяется значение в карте  с соответствующей координатой. Если оно равно 1, то в массив  не добавляется ничего, если оно равно 0, то в массив  добавляется элемент , равный значению пикселя с соответствующей координатой из массива соседних пикселей . Массив неискаженных соседних пикселей  принимает следующий вид:
.
После составления массива неискаженных соседних пикселей происходит переход к блоку 9. В блоке 9 производится проверка массива  на пустоту. Поскольку массив  не является пустым, то производится переход к блоку 11.
В блоке 11 переменной  присваивается значение равное 0 для корректировки карты искаженных пикселей. Выход блока 11 соединен со входом блока 12. В блоке 12 производится вычисление медианы массива . Для этого производится вычисление переменной, которая равна количеству элементов в массиве . Поскольку массив неискаженных соседних пикселей  имеет в своем составе 6 элементов, то переменная . Производится упорядочивание по возрастанию массива :
.
Поскольку массив  состоит из четного числа элементов, то медиана  равна среднему арифметическому элементов с номерами  и  и значениями 110 и 120 соответственно:
.
После расчета  происходит переход к блоку 13. В блоке 13 производится производится расчёт значения элемента . Для каждого элемента  массива  происходят вычисления по формуле (3):
.
После чего производится переход к блоку14.
В блоке 14 производится составление массива неотклонённых пикселей , где для элементов  массива  производится поочередное сравнение величины  со значением , которое является уровнем отклонения. Пусть задано , тогда:
.
По окончанию составления массива  происходит переход к блоку 15.
В блоке 15 производится вычисление медианы . Поскольку массив  состоит из четного числа элементов, то медиана  равна среднему арифметическому элементов с номерами  и  и значениями 100 и 110, соответственно:
.
Полученное значение является значением исправленного пикселя .
За первую итерацию будут исправлены все искаженные пиксели и блок 16 передаст исправленное изображение в блок 17, выход которого является информационным выходом схемы.
Литература
1. Gonzalez, R.C. Digital Image Processing / R.C. Gonzalez, R.E. Woods // 3rd edition, Pearson. – 2007. – P. 976
2. Bovik, A.C. Handbook of image and video processing, Academic press. – 2010. – P. 1372
3. Tukey, J.W. Exploratory data analysis. – Pearson, – 1977
4. Ko, J. Center weighted median filters and their applications to image enhancement / S.J. Ko, Y.H. Lee // IEEE Transactions on Circuits and Systems, – 1991. – Vol. 38. – P. 984–993
5. Wang, Z. Progressive switching median filter for the re-moval of impulse noise from highly corrupted images / Z. Wang, D. Zhang, // IEEE Transactions on Circuits and Systems II. – 1999. – Vol. 46. – P. 78–80
6. Hwang, H. Adaptive median filters: new algorithms and results / H. Hwang, R.A. Haddad // IEEE Transactions on Image Processing. – 1995. – Vol. 4. – P. 499–502
7. Lu, C.-T. Removal of salt-and-pepper noise in corrupted image using three-values-weighted approach with variable-size-window / C.-T. Lu, Y.-Y. Chen, L.-L. Wang, C.-F. Chang // Pattern Recognition Letters. – 2016.  –  Vol. 80. – P. 188-199
8. Fabijanska, A. Noise adaptive switching median-based filter for impulse noise removal from extremely corrupted images / A. Fabijańska, D. Sankowski // IET image pro-cessing. – 2011. – Vol. 5. – No. 5. – P. 472-480
9. Ng, P.E. A switching median filter with boundary dis-criminative noise detection for extremely corrupted images / P.E. Ng, K.K. Ma // IEEE Trans. Image Process. – 2006. – Vol. 15. – No. 6. – P. 1506-1516
10. Червяков Н. И. Новые методы адаптивной медианной фильтрации импульсного шума в изображениях / Н.И. Червяков, П.А. Ляхов, А.Р. Оразаев // Компьютерная оптика. – 2018. – Т. 42. – №. 4.
11. Lyakhov P. A. A new method for adaptive median filtering of images / P.A. Lyakhov, A.R. Orazaev, N.I. Chervyakov, D.I. Kaplun // 2019 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering (EIConRus). – IEEE, 2019. – С. 1197-1201.