75603

МЕТОДЫ УЛУЧШЕНИЕ ВИЗУАЛЬНОГО КАЧЕСТВА ИЗОБРАЖЕНИЙ

Лекция

Информатика, кибернетика и программирование

MTLB предоставляет средства интерактивной работы с изображениями в различных графических форматах включая: Изменение масштаба изображения; Изменение яркости и контрастности; Поворот изображения; Многие виды фильтрации; Конвертирование графического формата...

Русский

2015-01-15

1.67 MB

62 чел.

ОИ. Лекция 16.

МЕТОДЫ УЛУЧШЕНИЕ ВИЗУАЛЬНОГО КАЧЕСТВА ИЗОБРАЖЕНИЙ

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

1) методы растяжения;

2) гистограммные методы;

3) ранговые методы;

4) разностные методы;

5) методы преобразования локальных контрастов.

Наиболее развитыми средствами для реализации систем обработки изображений в настоящее время обладает система MATLAB. В среде MATLAB  реализованы многие известные методы обработки изображений.

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

  •  Изменение масштаба изображения;
  •  Изменение яркости и контрастности;
  •  Поворот изображения;
  •  Многие виды фильтрации;
  •  Конвертирование графического формата.

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

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

Для улучшения визуального качества изображений в MATLAB предусмотрены программные средства регулировки яркости и контрастности, ранговый фильтр (ordfilt2), адаптивный фильтр (wiener2),  фильтр Лапласа (laplacian), фильтр повышения резкости (unsharp). Для выделения границ областей изображений предназначена функция edge, которая реализует 6 методов: Собеля (log), Превита (prewitt), Робертса, Гаусса-Лапласа, пересечения по нулям, Канни.

Средства регулировки яркости и контрастности

Улучшение изображения может быть  получено путем регулировки яркости и контрастности. Функция J = imadjust(I) приводит диапазон яркостей исходного изображения к максимально возможному, например, 0-1 для массивов типа double или 0-255 для массивов типа unit8. Функция J = imadjust(I,[low_in; high_in],[low_out; high_out])  преобразует диапазон яркостей [low_in; high_in] исходного изображения в диапазон [low_out; high_out]. Можно в качестве параметров функции задать пустые скобки []. Это эквивалентно заданию диапазона [0;1]. Диапазон представленных на изображении  яркостей пикселов определяет контрастность изображения.

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

                     А                               Б                              В

         

         

Рис.2.5. Исходное изображение с низкой яркостью и контрастностью (А), улучшенное изображение с увеличенной яркостью (Б) и контрастностью (В).

  I=imread ('mtest.tif');

  figure;

  subplot(1,3,1);

  imshow (I);

  title('Исходное изображение');

  J=imadjust(I,[0 0.6],[]);     

  subplot(1,3,2);

  imshow (J);

  title('Яркость+')

  J=imadjust(I,[0.4 0.6],[]);     

  subplot(1,3,3);

  imshow (J);

  title('Контрастность+')

Улучшение качества изображения путем выравнивания гистограммы

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

Функция J=histeq(I, hgram)преобразует гистограмму изображения по образцу гистограммы, заданной вектором  hgram. Число его элементов задает число столбцов гистограммы, а значения элементов в пределах от 0 до 1 –высоту столбцов. Функция  автоматически масштабирует  так, чтобы выполнялось условие sum(hdram)=prod(size(I)). Функция J=histeq(I, [n])позволяет задать число столбцов гистограммы с равномерным их распределением. По умолчанию n=64. Число столбцов должно быть намного меньше, чем число градаций яркости исходного изображения.

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

     

             

  

Рис. 2.6. Исходное изображение и его гистограмма (сверху) и улучшенное путем выравнивания гистограммы и его гистограмма (снизу)

Построение гистограммы яркостей изображения для полутонового или бинарного изображений выполняется функцией imhist (I, n). По умолчанию n=256 для полутонового изображения и n=2 – для бинарного.

   I=imread ('pout.tif');

  J=histeq(I);   

  figure;

  subplot(2,2,1);imshow (I);

  subplot(2,2,2);imhist (I);

  subplot(2,2,3);imshow (J);

  subplot(2,2,4);imhist (J);

Улучшение качества изображения с помощью гамма-коррекции

Другой способ улучшения изображения за счет регулировки яркости и контрастности основан на изменении яркости палитры. Для этого в пакете Image Processing Toolbox предусмотрена функция imadjust(I,[low_in high_in,[low_out,high_out],gamma]). Передаточная характеристика яркости пиксела от его значения должна быть линейной. При плохом качестве изображения, вызванном плохим качеством фотоаппаратуры, эта зависимость становится нелинейной. Искусственное выпрямление передаточной характеристики при компьютерной обработке называют гамма-коррекцией изображения.

Нормализация осуществляется в ручном режиме, с пошаговой коррекцией. Для линейного изменения яркости и контрастности шаг изменения равен 0.1 (т.е. диапазон градаций яркости увеличивается на 10%). Параметр гамма определяет форму кривой характеристики передачи уровней яркости. Если гамма меньше 1, то характеристика передачи уровней будет выпуклой и результирующее изображение будет светлее, чем исходное. Если гамма больше 1, то характеристика передачи уровней будет вогнутой и результирующее изображение будет темнее, чем исходное.

На рис. 4 показаны характеристики передачи уровней для различных значений параметра гамма.

Значения яркости в диапазоне [low high] преобразуются в значения яркости в диапазоне [bottom top]. Значения яркости, меньшие low, принимают значение bottom, а значения яркости, большие high, принимают значение top. Значения top, bottom, low, high должны принадлежать диапазону [0,1].

                   Рис. 2.7А

                    

                          Рис. 2.7Б                                                              Рис. 2.7В

Функция J = imadjust(I,[low_in; high_in],[low_out; high_out],gamma)  преобразует диапазон яркостей [low_in; high_in] исходного изображения в диапазон [low_out; high_out]. Преобразование будет линейным при gamma=1. При gamma<1 передаточная характеристика будет выпуклой и преобразованное изображение будет светлее исходного. При gamma>1 передаточная характеристика будет вогнутой и преобразованное изображение будет темнее исходного. Применение гамма-коррекции зачастую улучшает качество изображения заметно выше, чем простое повышение или понижение яркости.

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

                   А                               Б                               В

      

Рис. 2.7. Исходное изображение (А) и изображения, полученные с помощью гамма-коррекции при gamma=0.5 (Б) и при gamma=1.5 (В)

Текст программы

  I=imread ('blood1.tif'); J = histeq(I);   

  figure;

  subplot(1,3,1);

  imshow (I);

  title('Исходное изображение');

   k=0.99 ;

   SKOI=std2(I) /255;

   sr_znI=mean2(I)/255;

   B1=(sr_znI-SKOI)*k;

   B2=(sr_znI+SKOI)*k;

   if B2>0.999

       B2=0.999

   end;       

  J=imadjust(I,[B1 B2],[],0.5);

  subplot(1,3,2);

  imshow (J);

  title('Gamma=0.5')

  J=imadjust(I,[B1 B2],[],1.5);

  subplot(1,3,3);

  imshow (J);

  title('Gamma=1.5')

Улучшение качества изображения за счет повышения резкости

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

 

                         А                                      Б

                

Рис. 2.8. Исходное изображение хорошего качества (А) и после обработки его фильтром повышения резкости (Б)

 %Фильтр повышения резкости 'unsharp'    

 alpha=0.2;

 h= fspecial('unsharp',alpha);

 F4=imfilter(img1,h);

 figure;

 imshow(F4);title('После фильтра unsharp');

Уменьшение шумов с помощью  вейвлет-преобразований изображений

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

Пакет Wavelet Toolbox предоставляет двумерное пакетное вейвлет-разложение для реконструкции изображений. Функции wpdencmp и wpbmpen этого пакета могут использоваться для очистки искаженных шумом изображений. На рис. 2.9 приведен  пример улучшения качества изображения этим способом и фрагмент программы, с помощью которой были получены изображения.

                                  А                                               Б    

                  

Рис. 2.9. Исходное изображение (А) и после вейвлет обработки (Б)

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

                                                                                             Табл.2.2.

Вид вейвлета

Наименование

в программе

Haar (Хаара)

haar

Daubechies  (Дебоши)

db

Symlets  (Симлета)

sym

Coiflets (Коифлетса)

coif

BiorSplines (биоортогональный)

bior

ReverseBior (обратный биоортогональный)

rbio

Meyer   (Мейера)

meyr

DMeyer  (дискретная аппроксимация вейвлета Мейера)

dmey

Gaussian     (Гаусса)

gaus

Mexican_hat    (мексиканская шляпа)

mexh

Morlet    (Морлета)

morl

Complex Gaussian  (комплексный Гаусса)

cgau

Shannon     (Шенона)

shan

Frequency B-Spline (частотный В-сплайновый)

fbsp

Complex Morlet   (комплексный Морлета)

cmor

Устранение «смазанности» изображений

Для реконструкции фотоизображений, искаженных вследствие движения объекта,  видео или фотокамеры во время экспозиции (из-за чего изображение оказывается «смазанным») в пакете Image Processing Toolbox программно реализован алгоритм Blind Deconvolution. Если характер перемещения объекта во время экспозиции известен и изображение достаточно контрастное, то эффект реконструкции изображения этим способом весьма существенен, как показано на рис. 2.10.

                         А                                                        Б

    

Рис. 2.10. Исходное изображение (А) и изображение, полученное после деблюринга (Б)

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

       Рис. 2.11. Вид матрицы PSF

На рис.2.12 приведены примеры «неправильного» вида матрицы PSF, обусловленные неправильным выбором параметров коррекции. Для подбора параметров коррекции нужно уменьшать или увеличивать размерность матрицы PSF в программе Deblurring1.

                                         А                                                    Б

            

Рис. 2.12.  Примеры «неправильного» выбора матрицы PSF для изображения рис.6.

Выделение контуров и особенностей объектов на изображении

В ряде случаев, например, при автоматическом анализе микрообъектов на изображениях, необходимо выделение границ объектов. Для решения этой задачи предназначен фильтр Лапласа, ранговый фильтр и функция выделения границ edge, которая реализует 6 методов: Собеля, Превита, Робертса, Гаусса-Лапласа, пересечения по нулям, Канни. Для выявления границ задается порог thresh. Для ряда методов можно задавать направление выделения границ direction:

  •  ‘horizontal’ – по горизонтали;
  •  ‘vertical’ – по вертикали;
  •  ‘both’ – в обоих направлениях.

В методах Собеля, Превита и Робертса используется аппроксимация производной при просмотре пикселов. Границы между областями строятся по максимуму градиента.

Фильтр Лапласа относится к классу фильтров высоких частот. Он может использоваться для выделения границ (перепадов) изображений по всем направлениям. Эффективен для выделения границ объектов на изображениях. Ниже на рис. 2.13 приведен пример исходного изображения хорошего качества (А) и после обработки его фильтром Лапласа (Б) и пример программы фильтрации.

                                    А                                         Б

                       

Рис. 2.13. Исходное изображение хорошего качества (А) и после обработки его фильтром Лапласа (Б)

 %Фильтр Лапласа 'laplacian'    

 alpha=0.5;

 h= fspecial('laplacian',alpha);

 J=imfilter(I,h,'replicate');

 figure;

imshow(J);title('После фильтра Лапласа');

Фильтр Лапласа-Гаусса (log) является комбинированным фильтром высоких частот, представляет последовательно включенные фильтры Лапласа и Гаусса. Фильтр Лапласа-Гаусса способен выделять более резкие переходы изображения, чем фильтр Лапласа.

Фильтры Собеля и Превита служат для выделения горизонтальных или ветикальных границ объектов на изображении.

Ранговый фильтр (ordfilt2) предназначен для фильтрации полутоновых изображений. Фильтр реализуется функцией J=ordfilter2(I, order, domain), где I-матрица исходного изображения, order – порядковый номер пиксела массива пикселов в окрестности центральной точки области domain в вариационном ряду. Пикселы исходного изображения, соответствующие ненулевым элементам маски фильтра domain, сортируются в порядке возрастания. Пикселу изображения I присваивается ззначение с порядковым номером order. Маска применяется нерекурсивно ко всему изображению. Для того, чтобы размеры массивов I и J были одинаковы, матрица I автоматически временно  дополняется нулями или единицами так же, как и при медианной фильтрации. Ниже приведен пример программы зашумления изображения I гауссовым шумом и ранговой фильтрации зашумленного изображения.

  %Ранговый фильтр

  h = imnoise(I,'gaussian',0,0.005);

  J = ordfilt2(h, 7, ones(4,4));

  figure;

  imshow(J);title('После рангового фильтра');

 

Результатом такой фильтрации может быть как эффект фокусировки так и расфокусировки (эрозии) изображения. Если параметр order соответствует цетральному элементу маски, т.е равен 8 при маске domain 4х4, то будет эффект фокусировки. Если же параметр order соответствует первому элементу маски, т.е равен 1, то будет эффект расфокусировки. Таким образом, ранговая фильтрация может подчеркивать дефекты изображения (которые могут представлять собой и информативные особенности изображения), а может и эффективно отфильтровывать мелкие дефекты, например, шумы. В обеих случаях ранговая фильтрация является инструментом для преобразования изображения. Если же целью является идентификация зашумленных изображений, то ранговая фильтрация менее эффективна по сравнению с медианной, т.е. коэффициент корреляции отфильтрованного зашумленного изображения с исходным будет больше, если использовать медианную фильтрацию.

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

Время выполнения базовых функций MATLAB для работы с изображениями на  компьютере IBM PC класса Pentium-4 приведено в табл. 2.3.

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

Выполняемая

функция

Формат изображения

640х480

800х600

1

Чтение файла изображения

32

36

2

Отображение изображения

420

420

3

Корректировка яркости

50

75

4

Корректировка контрастности

150

230

5

Выравнивание гистограммы

24

30

6

Гамма-коррекция

430

670


 

А также другие работы, которые могут Вас заинтересовать

27133. Структурированная процесс-модель «бизнес-контент-менеджмент» 1.85 MB
  Структурированная процессмодель бизнесконтентменеджмент Одно из главных требований предъявляемых к построению современного электронного бизнесрешения как можно более быстрая трансформация бизнесидеи в конкретное решение которое соответствует запросам пользователя не требует значительных расходов на поддержку функционирует эффективно и с невысокими издержками и имеет стройную организацию. Структурированная процессмодель дает солидную основу для старта проекта Процессмодель концепция бизнес контент менеджмент состоит из...
27135. Электронная коммерция: B2B. Виртуальные торговые площадки 16.68 KB
  Виртуальные торговые площадки B2B англ. Возможности Интернет позволяют совершать покупки продажи в режиме реального времени и благодаря доступности Интернет в торговой деятельности площадки могут участвовать компании из разных точек земного шара. Площадки типа buyerdriven. В качестве примера можно взять автомобильную промышленность где GM Ford и Daimler Chrysler объединились для создания глобальной онлайновой торговой площадки или здравоохранение где Tenant Healthcare объединила усилия с Ventro ранее Chemdex для создания...
27136. Электронная коммерция: B2C. Интернет-магазины 18.27 KB
  Интернетмагазины. Один из наиболее популярных инструментов B2C – это интернетмагазин. Полная автоматизация 3 Продвинутый Advanced – торговая интернетсистема. Предполагает что интернетмагазин интегрирован с внутренней информационной системой предприятия ERP система бух.
27137. Электронные платежные системы: основные виды и принцип функционирования 691.91 KB
  Кроме того следует различать виртуальные дебетовые карты выпускаемые некоторыми банками и реальные кредитные и дебетовые карты. Предоплаченные виртуальные дебетовые карты представляют собой полный аналог обычной Visa или подобной карты которую принимают в Интернете. Владельцу сообщают все платёжные реквизиты такой карты и с точки зрения стороннего наблюдателя платёж осуществляется с обычной пластиковой карты. Такую карту легче купить так как выпуск такой карты осуществляется без проверки личности владельца.
27138. Электронные финансовые структуры. Интернет-банкинг, Интернет-страхование, Интернет-трейдинг 17.72 KB
  Интернетбанкинг Интернетстрахование Интернеттрейдинг. Интернетбанкинг это общее название технологий дистанционного банковского обслуживания при котором доступ к счетам и операциям по ним предоставляется в любое время и с любого компьютера имеющего доступ в Интернет. Интернетбанкинг часто доступен по системе банкклиент с использованием технологии тонкого клиента. Как правило услуги интернетбанкинга включают: выписки по счетам предоставление информации по банковским продуктам депозиты кредиты ПИФ и т.
27139. Интернет-маркетинг. Маркетинговые исследования в Интернет. Проблемы конверсии и лояльности 22.07 KB
  Проблемы конверсии и лояльности. Механизмы повышения лояльности в электронном бизнесе. Повышение лояльности клиентов и выполняет эту важную функцию. Именно для этого существуют всевозможные программы повышения лояльности клиентов.
27140. Интернет-реклама, виды интернет-рекламы. Оценка эффективности интернет-рекламы 56 KB
  Интернетреклама виды интернетрекламы. Оценка эффективности интернетрекламы. Виды рекламы по целям а имиджевая брендинг длительно дорого трудно оценить эффективность бпродуктовая проинформировать заинтересовать клиента вторговая реклама направлена на продажу товара Медиапланирование – процесс планирования рекламной компании в сети интернет. Этапы медиапланирования: 1 определить цели 2определить целевую аудиторию для разн групп – свои способы рекламы 3определить средства и носителей рекламы 4определить бюджет 5выбор...
27141. Программная платформа электронного предприятия: фронт-офис и бэк-офис 20.59 KB
  любой интернетмагазин является синтезом двух составляющих: 1. Площадка сайт в интернете который предназначен для взаимодействия с покупателями. Сюда можно отнести IaaS PaaS SaaS infrastructure platform software as a service Cейчас в интернете ASP позиционируется как SaaS. Они являются лицом голосом и слухом интернетмагазина.