75602

ОБРАБОТКА ИЗОБРАЖЕНИЙ

Лекция

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

Целью обработки может являться также улучшение качества изображения для лучшего визуального восприятия геометрические преобразования масштабирование поворот в общем нормализация изображений по яркости контрастности резкости выделение границ изображений автоматическая классификация и подсчет однотипных объектов на изображении сжатие информации об изображении. К основным видам искажений изображений затрудняющих идентификацию можно отнести: Недостаточную контрастность и яркость связанную с недостаточной освещенностью объекта;...

Русский

2015-01-15

345.5 KB

51 чел.

ОИ.Лекция 15.

ОБРАБОТКА  ИЗОБРАЖЕНИЙ. ВВЕДЕНИЕ.

Главной целью обработки изображений, является обнаружение объектов и идентификация этих объектов.

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

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

  •  Недостаточную контрастность и яркость, связанную с недостаточной освещенностью объекта;
  •  Наличие шумов на изображении, вызванных  различными факторами;
  •  Искажения, вызванные «зернистостью» из-за квантования изображения;

Искажения, связанные с перемещением видеорегистратора или объекта во время экспозиции и связанную с этим «смазанность» изображения;

Математические основы и методы обработки изображений применительно как к объектам живой, так и неживой природы, разработаны и описаны в [1-57].

           Элементарные операции с изображениями

К элементарным операциям, используемых при обработке изображений, можно отнести:

  1.  Чтение и запись файлов с изображениями;
  2.  Преобразование графических форматов;
  3.  Улучшение качества изображений (путем выравнивания гистограммы, изменения яркости палитры, корректировки яркости и контрастности)
  4.  Масштабирование изображений;
  5.  Выполнение геометрических операций с изображениями (кадрирование, изменение размеров, поворот);
  6.  Функциональные преобразования (двумерное прямое и обратное дискретное косинусное преобразование, двумерное быстрое преобразование Фурье, прямое и обратное преобразование Радона);
  7.  Корреляционное сравнение изображений;
  8.  Фильтрация шумов на изображениях (медианная, ранговая, адаптивная и др.);
  9.  Выполнение операций с пикселами (построение контурных графиков объектов, вычисление признаков объектов, построение гистограммы изображения, построение профиля изображения);

Для обработки изображений может быть использована программная среда MATLAB, в которой имеется большое количество библиотечных функций для работы с изображениями и Visual C++ совместно с библиотекой обработки изображений Open CV (Computer Vision).

                      Чтение и запись файлов с изображениями

В пакете расширения Image Processing программы MATLAB используются различные форматы изображений: BMP, JPEG, PCX, PNG, TIFF, CUR, HDF, ICO, XWD и представляющих их файлов. Соответствующие типы файлов могут быть прочитаны с помощью функции imread. Функция A=imread(filename, fmt) читает из файла с именем filename  полутоновое или полноцветное изображение и создает двумерный массив A если изображение полутоновое или трехмерный массив размера m x n x 3 – если изображение полноцветное. Параметр fmt задает формат изображения и может принимать значения bmp’, ‘jpg’, ‘jpeg’, ‘pcx’, ‘png’, ‘tif’,’cur’,’hdf’, ‘ico’, ‘xwd’.  

Функция imwrite(A,filename,fmt) записывает изображение A в файл с именем filename c расширением fmt.

Функции imread и imwrite имеют и другие формы, с которыми можно познакомиться в [1-3].

                              Вывод изображения на экран

   J=imread ('moon.tif');

  figure;

  imshow (J);

 

Базовые средства фильтрации шумов на изображениях

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

Применение фильтров

Для уменьшения шумов на изображениях предусмотрены несколько различных фильтров: усредняющий (average), медианный (medfilt2), Гаусса (gaussian).

Функции медианной фильтрации (medfilt2), ранговой фильтрации (ordfilt2) и адаптивной фильтрации (wiener2) наиболее эффективны для борьбы с  зашумленностью изображения имеющего вид «снега».

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

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

Функция медианной фильтрации J= medfilt2(I,[m n])фильтрует матрицу исходного изображения, используя маску фильтра размером m x n. По умолчанию – маска имеет размер 3 х 3 пиксела. Центральный пиксел маски  заменяют медианой всех ее пикселов. Маска применяется нерекурсивно ко всему изображению. На краях изображение дополняется нулевыми элементами при классе Iunit8 или единицами при классе Idouble, поэтому в результате фильтрации крайние элементы изображения могут быть искажены.

Эффект улучшения  изображения при использовании медианного фильтра показан на рис. 2.1.

      А                                             Б                                                В                           

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

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

Усредняющий фильтр (average) функционирует таким же образом, как и медианный, но отличается тем, что центральный пиксел маски вычисляется как среднеарифметическое значение всех ее пикселов. Если медианный фильтр эффективнее при шуме типа «соль и перец», то усредняющий фильтр имеет преимущество при гауссовом белом шуме.

                      А                                      Б                                        В  

                                               

    

           Рис. 2.2.   Исходное (А), зашумленное (Б) и полученное в результате фильтрации (В) изображения. Вид шума – гауссовый белый, variance=0.005.

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

%Усредняющий фильтр 'Average'

 hsize=[3 3 ]; %маска фильтра

 h= fspecial('average',hsize);

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

 figure;

 imshow (J);   

title('После усредняющего фильтра');

 %Медианный фильтр 'medfilt2'

 hsize=[3 3 ]; %маска фильтра

 J= medfilt2(I,hsize);

 figure;

 imshow(J);

 title('После медианного фильтра');

Фильтр Гаусса (gaussian) также относится к классу фильтров низких частот, но, по сравнению с усредняющим фильтром при гауссовом белом шуме, он меньше размывает изображение. Отфильтрованное изображение получается также близко к исходному при корреляционном сравнении. Коэффициент корреляции зашумленного изображения рис. 2Б при гауссовом белом шуме с variance = 0.005 с исходным – 0.80, отфильтрованного с исходным при использовании как усредняющего фильтра, так и фильтра Гаусса – 0.97. Ниже приведен пример программы фильтра Гаусса.

 %Фильтр Гаусса 'gaussian'

 hsize=[9 9];

 sigma=0.99;

 h= fspecial('gaussian',hsize,sigma);

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

 figure;

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

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

Улучшение отношения сигнал/шум путем накопления

Еще один возможный вид обработки изображений с целью улучшения отношения сигнал/шум – накопление, т.е. усреднение нескольких изображений. Благодаря тому, что изображение объекта остается неизменным, а шумовая составляющая изменяется, в результате накопления происходит улучшение отношения сигнал/шум. На рис. 2.3 приведен пример эффекта улучшения отношения сигнал/шум в результате 10 накоплений.

                                    А                                                  Б

             

Рис.2.3. Зашумленное изображение (А) и результат 10-ти накоплений (Б).

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

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

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

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

Выполняемая

функция

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

640х480

800х600

1

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

32

36

2

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

420

420

6

Ранговая фильтрация (Улучшение фокусировки)

130

220

7

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

100

140

Наложение шумов на изображение

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

Для добавления шума к изображению MATLAB предоставляет функцию J=imnoise(I, type), где I – исходное изображение, type – класс шума:

  •  ‘gaussian’ – гауссовый белый шум;
  •  salt & pepper –«соль и перец», шум в виде включенных или выключенных пикселов;
  •  ‘speckle’мультипликативный шум.

Функция J=imnoise(I, type, parameters) позволяет дополнительно задать параметры шума, например:

  •  J=imnoise(I, ‘gaussian’, m, v) добавляет гауссовый белый шум со средним значением m и отклонением v (по умолчанию m=0, v=0.01);
  •  J=imnoise(I, ‘salt & pepper’, d) параметр d задает плотность шума, по умолчанию d=0.05;
  •  J=imnoise(I, ‘speckle, v) добавляет мультипликативную компоненту шума, так что J=I + n*I, где n – равномерно распределенный шум со средним значением 0 и среднеквадратичным отклонением v (по умолчанию v=0.04). Этот шум не виден на темных участках изображения, но проявляется на его светлых участках.

               

Рис. 2.4. Пример исходного  и  зашумленных изображений.

  

  %Программа производит зашумление изображения m00200011.tif

  %тремя различными способами

  

  img1=imread ('m00200011.tif'); subplot(2,2,1);

  imshow (img1);

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

  img2=imnoise(img1,'gaussian',0.03);subplot(2,2,2);

  imshow (img2);    

  title('С гауссовым шумом');

  img3=imnoise(img1,'salt & pepper',0.02);subplot(2,2,3);

  imshow (img3);    

  title('С шумом "соль и перец"');

  img4=imnoise(img1,'speckle',0.03);subplot(2,2,4);

  imshow (img4);    

  title('С мультипликативным шумом');

Входное изображение должно быть представлено матрицей классов unit8, unit16 или double. Выходной сигнал имеет тот же класс, что и входной. Файл входного черно-белого или цветного изображения может быть представлен в формате .bmp, .jpg, .tif, .gif и т.д.

PAGE  7


 

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

42703. ИССЛЕДОВАНИЕ ПОЛУПРОВОДНИКОВЫХ ДИОДОВ 275.5 KB
  Диффузия основных носителей заряда через границу раздела р и nобластей создает ток диффузии в рnпереходе равный сумме электронного и дырочного токов: Уход основных носителей заряда из слоев вблизи границы в соседнюю область оставляет в этих слоях нескомпенсированный неподвижный объемный заряд ионизированных атомов примеси: уход электронов положительный заряд ионов доноров в nобласти а уход дырок отрицательный заряд ионов акцепторов в робласти рис. В результате появления потенциального барьера диффузионный ток уменьшается. Движение...
42704. Программирование вложенных циклов и матричных задач 174 KB
  В самом начале для удобстава пользователю предоставляется менюшка с выбором действий. 1-ручное заполнение матрицы, 2 – рандомное и выход из программы. Эта реализация выполняется спомощь оператора switch (+ разумеется выбор действий case 1, case 2, case 3). После того как матрица будет заполнена программа по условию задачи с помощью цикла for переберает каждый эл. матрицы по диагонале и ищет отрицательный эл. если не находит то выводит сообщение “Отрицательные числа в диагонале отсудствуют”.
42705. Инструкции по движению поездов и маневровая работа, конспект лекций 218.5 KB
  Правила приема, отправления и пропуска поездов при различных устройствах сигнализации, централизации и блокировки на железнодорожных станциях и средствах сигнализации и связи при движении поездов, как в нормальных условиях, так и в случаях их неисправности...
42706. Міжнародна система інтелектуальної власності 59.5 KB
  Основою міжнародної системи інтелектуальної власності на сьогодні є 22 угоди, 14 з яких регулюють правовідносини у сфері промислової власності, а вісім відносяться до авторського права і суміжних прав. Україна приєдналася до більшості
42707. Изучение массивов в языке ANSI C 1.8 MB
  Задача лабораторной работы состоит в практическом освоении массивов, совмещения их с функциями ввода и вывода, математическими функциями в одном приложении, написание приложения по индивидуальному варианту.
42708. Розпорядження майновими правами інтелектуальної власності, курс лекцій 1.35 MB
  Придбання прав інтелектуальної власності є засобом стратегії розвитку субєкта господарювання, спрямованої на оптимальне економічне використання такого обєкту не тільки в інтересах сторін договору, але й в інтересах широкої громадськості.
42709. ИССЛЕДОВАНИЕ ДИОДНЫХ ОГРАНИЧИТЕЛЕЙ И ДИОДНЫХ ФОРМИРОВАТЕЛЕЙ 155.5 KB
  Краткие теоретические сведения Основная функция положительных диодных ограничителей заключается в том чтобы повторять амплитуду входного напряжения если она не превышает заданный порог а при превышении поддерживать амплитуду выходного напряжения на пороговом уровне. Отрицательные диодные ограничители работают аналогично: амплитуда напряжения на выходе повторяет входную если она выше порогового уровня. В схемах диодных формирователей амплитуда выходного напряжения равна сумме амплитуды входного напряжения и некоторой постоянной...
42710. ЯЗЫКИ ПРОГРАММИРОВАНИЯ. ПРОЦЕДУРЫ И ФУНКЦИИ 145.5 KB
  функция печати массива чисел диапазона от n до 2n не возвращает значения принимает указатель на массив чисел и размер массива void ProstNumunsigned long int; функция инициализации массива простыми числами не возвращает значения принимает указатель на массив чисел и размер массива unsigned EnterNumvoid; функция ввода натурального числа возвращает натуральное число значений не принимает void Find_Twinsunsigned long...
42711. АЛГОРИТМИЗАЦИЯ ЗАДАЧ ОБРАБОТКИ ДИНАМИЧЕСКИХ МАССИВОВ 92.5 KB
  Введите натуральное целое число: ; cin n; cout n ; генерация случайных чисел flot p = new flot [n21]; создание динамического массива вещественных чисел на i элементов srnd timeNULL ; forint k=0; k n21; k { p[k] = flotrnd RND_MXrnd100 rnd50; заполнение массива случайными числами printf = 3. Начало cout введите натурасльное целое число: ; cin n; нет да forint k=0; k n21;...