17520

Фільтрація сигналів і зображень

Лабораторная работа

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

Лабораторна робота №4 На тему: Фільтрація сигналів і зображень Мета роботи Ознайомитися з методами та засобами фільтрації сигналів та зображень. Проілюструвати процес фільтрації зображення в просторовій області. Теоретичні відомості Цифрова фільтрація д

Украинкский

2013-07-01

256.5 KB

50 чел.

Лабораторна робота №4

На тему: «Фільтрація сигналів і зображень»

Мета роботи

Ознайомитися з методами та засобами фільтрації сигналів та зображень. Проілюструвати процес фільтрації зображення в просторовій області.

Теоретичні відомості

Цифрова фільтрація даних (сигналів) є одною з основних і найпоширеніших задач цифрової обробки інформації. Під фільтрацією будемо розуміти будь-яке перетворення інформації, в нашому випадку - сигналів, при якому у вхідній послідовності оброблюваних даних цілеспрямовано змінюються певні співвідношення (динамічні або частотні) між різними компонентами цих даних. До основних операцій фільтрації інформації відносять: згладжування; прогнозування; диференціювання; інтегрування; поділ на певні складові; виділення інформаційних (корисних) сигналів; придушення шумів (завад).

У загальному випадку терміном цифровий фільтр (ЦФ) називають апаратну або програмну реалізацію математичного алгоритму, входом якого є цифровий сигнал, а виходом – інший цифровий сигнал з певним чином модифікованою формою і/або амплітудною і фазовою характеристикою. Класифікація цифрових фільтрів звичайно базується на функціональних ознаках алгоритмів цифрової фільтрації, відповідно до якого ЦФ підрозділяються на 4 групи:

  •  фільтри частотної селекції;
  •  оптимальні (квазіоптимальні);
  •  адаптивні;

евристичні.

Відомі методи цифрової обробки даних, які є методами цифрової фільтрації такі як метод згладжування відліків у ковзаючому вікні постійної довжини. Наприклад для лінійного згладжування даних за п’ятьма точками з однаковими ваговими коефіцієнтами використовується формула:

yk = 0.2(xk-2+xk-1+xk+xk+1+xk+2).

З точки зору цифрової фільтрації це двосторонній симетричний нерекурсивний фільтр:

yk =bn xk-n,     bn = 0,2.

Фільтрація зображень в часовій (просторовій) області

В часовій і просторовій області процес фільтрації сигналів описується рівнянням одновимірної згортки:

,

де:  - вихідний сигнал;

 вхідний сигнал;

 імпульсна характеристика фільтру.

Фільтрація  зображень в часовій області зводиться до двовимірної лінійної згортки:

,

де:  - вхідне зображення;

- фільтроване зображення;

- імпульсна характеристика фільтру (маска, що визначає вид фільтрації);

- розмір зображення,  ;

- розмір вікна фільтрації (апертури);

, .

Очевидно, що процес фільтрації – це послідовне обчислення згортки обраної маски з «вікном» (частиною) зображення. Елементи вікна, розташовані в області точки для якої обчислюється згортка. Таким чином, маска фільтру, її ще називають апертурою, «пробігає» всі елементи зображення, утворюючи вихідне зображення.

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

; ; .

Для високочастотної фільтрації можна навести такі маски:

;   ;  

Особливістю таких апертур є те, що алгебраїчно сума елементів кожної з них дорівнює одиниці. Використання високочастотних масок приводить до виділення границь об’єктів, тому може бути використана, наприклад, маска Роберта, різницевий оператор Собеля, Кірша.

Широке поширення набули методи контрастування (один з випадків високочастотної - фільтрації), в яких використовується оператор Лапласа. На практиці він заміняється згорткою зображення з однією з масок:

;  ;  .

Алгоритми лінійної фільтрації

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

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

Алгоритм 1. Прямий.

1. Перший і останній рядки (верхня і нижня границі зображення)

 for (p = 0;  p < M;  p++)

 for (q = 0; q < Q; q++)

  {    g[p, q]=x[p, q];    g[P-1-p, q]=x[P-1-p, q]};

2. Решта рядків

for (p = M; p < P - M; p++)

{

2.1. Перші і останні M елементів рядка (ліва і права границі зображення)

 for (q=0; q < M; q++ )

  { g[p, q]=x[p, q];    g[p, Q-1-q]=x[p,Q-1-q]  };

2.2. Решта елементів (основне перетворення)

for (q=M; q < Q - M; q++ )

  { Sum=0.0;

for (i = - M; i < = M; i++ )

for (j = -M;  j < = M;  j++ )

Sum = Sum +h [i,j] * x[i+p,j+q];

  g[p,q] = Sum;

  }  }

Алгоритм 2. Прямий, з мінімізацією необхідної пам’яті.

1. Ініціалізація додаткавої матриці xtemp[p, q] , розміру ( M+1) x Q

 for (p = 0;  p <= M;  p++)

 for (q = 0; q < Q; q++)  

 xtemp[p, q]=x[p, q];

2. Фільтрація

for (p = M; p < P - M; p++)

{for (q=M; q < Q - M; q++ )

  { Sum=0.0;

for (j = -M;  j < = M;  j++ )

{for (i = 1; i < = M; i++ )

Sum = Sum +h [i,j] * x[i+p,j+q];

for (i = -M;  i < 1;  i++ )

Sum = Sum +h[i,j] * xtemp[i+M,j+q];

   }

  g[p,q] = Sum;

  }

Модифікація матриці xtemp

for (i = 1; q < M; q++)  

  for (q = 0; q < Q; q++)  

xtemp[i-1, q]= xtemp[i, q];

for (q = 0; q < Q; q++)  

xtemp[M, q]= x[p+1, q];  }

Завдання

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

 Варіант

Імпульсна характеристика фільтру

5

h=[-1 -1 -1;-1 9 -1;-1 -1 -1]

Виконання:

Для розв’язання поставленого завдання, обираємо перший алгоритм лінійної фільтрації, оскільки він є найбільш простим для реалізації і створюємо програму в середовищі MatLab. При цьому вхідне зображення подається у стандартному двійковому форматі (.raw), який опрацьовується стандартними засобами обраного пакету. В даному випадку тестовим є типове в практиці цифрової обробки сигналів, чорно-біле зображення “Lenna”, розмір якого 256 на 256 пікселів.

Фільтрація виконується за граф-схемою, яка наведена на рис. 1. Повний текст програми, що реалізовує дану граф-схему обробки наведений в Додатку.

Для того, щоб утворити вхідну матрицю, розроблено власну підпрограму <readim.m>, що дозволяє зчитати зображення у форматі .raw, переконатися у коректності відкриття/існування файлу, та присвоїти відповідні значення елементам матриці.

Результатом роботи створеного програмного засобу є матриця, що містить елементи фільтрованого зображення. За допомогою розробленої підпрограми графічного виводу <autoimage.m>, ця матриця відображається як чорно-біле зображення, розміром 256 на 256 пікселів.

Блок-схема 1. Алгоритм лінійної фільтрації зображення.

Малюнок 1. Виконання програми.

Малюнок 2. Зображення, отримане в результаті застосування фільтру

<filtr.m>

clc

clear all

close all

echo off

x = readim('Hlynka.raw',[256,256]);

subplot(111); title('in');

autoimage(x);

P=256;

Q=256;

h=[-1 -1 -1;-1 -9 -1;-1 -1-1]; % задання імпульсної характеристики фільтру

M=length(h);

%1. Перший і останній рядки (верхня і нижня границі зображення)

 for p=1:1:M

   for q=1:1:Q

       g(p, q)=x(p, q);    

       g(P-p, q)=x(P-p, q) ;

   end;

 end;

%2. Решта рядків

   for p=M:1: P - M;

%2.1. Перші і останні M елементів рядка (ліва і права границі зображення)

       for q=1:1:M

           g(p, q)=x(p, q);    

           g(p, Q-q)=x(p,Q-q);

       end;

% 2.2. Решта елементів (основне перетворення)

       for q=M:1: Q - M

            SUM=0.0;

           for  ii =1:1: M;

             for  jj = 1:1: M;

               SUM = SUM +h ( ii,jj) * x( (ii-round(M/2))+p,(jj-round(M/2))+q);

             end;  

           end;

           g(p,q) = SUM;

       end

   end

figure(2) subplot(111); title('out');

autoimage(g);

 

<readim.m>

function Image = readim(filename,par)

       fid = fopen(filename,'r');

          if fid < 0,

           disp('Error reading.');

       else

           Image = fread(fid,par);

           fclose(fid);

       end

   end

<autoimage.m>

function autoimage(img)

    mmin = min(min(img));

   mmax = max(max(img));

    image(256*(img-mmin)/(mmax-mmin))

    axis('image')

   colormap(gray(256))

Висновок: Після виконання даної лабораторної роботи вдалося проілюструвати процес фільтрації зображення в просторовій області. А також познайомитися з методами та засобами фільтрації зображення.


 

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

46168. Методы социально-экономического прогнозирования 1.71 MB
  Прогноз относительно будущей цены бензина не однозначен что связано с особенностями изначальных данных и разработанных моделей. Предварительная обработка данных. Использование данных методов для построения моделей описывающих изменение цен на бензин. Описание используемого математического аппарата при проведении расчетов Регрессионный анализ Регрессионный анализ метод моделирования измеряемых данных и исследования их свойств.
46169. Механизм оценки и регулирования риска кредитного портфеля банка 884 KB
  МАГИСТЕРСКАЯ РАБОТА на тему: Механизм оценки и РЕГУЛИРОВАНИя РИСКА кредитного портфеля банка Специальность Финансы 8.3 Раздел 1 Концептуальный подход к оценке и регулированию риска кредитного портфеля банка6 1.1 Особенности оценки и регулирования совокупного кредитного риска банка.2 Методологические основы оценки и регулирования кредитного портфельного...
46170. Розробка багатоконтурної системи регулювання дифузійної установки на базі контролера Реміконт-130 443.5 KB
  Вибір і обгрунтування критерію управління Для оцінки працездатності автоматичних систем керування використовуються різні показники але загальними вимогами є : стійкість це необхідна але не достатня умова для автоматичних систем регулювання це означає збіжність перехідних процесів тобто обмежений час їх тривалості; якість що характеризується якістю перехідних процесів : відхилення від заданого режиму в статиці та динаміці ступінь затухання і тривалість перехідних процесів; надійність яка доповнюється...
46171. Биография и проблематика конфликта в социологии Макса Вебера 108 KB
  Биография Макса Вебера Творческие периоды3 Работы. Проблематика конфликта в социологии Макса Вебера Проблематика конфликта в социологии политики.18 1 Биография Макса Вебера Макс Вебер родился в 1864 в городе Эрфурт в Германии.
46172. Миграция населения 157 KB
  В настоящей работе мы рассмотрим некоторые аспекты миграционных явлений в России в первую очередь в больших городах. Это привлекает в город студентов не только из других регионов России но и изза рубежа. Давая классификацию миграции в Европе Сергей Рязанцев2 называет следующие виды: Экономическая миграция Этническая миграция Вынужденная миграция Нелегальная миграция Как мы видим России свойственны те же миграционные тенденции. Она грозит накрыть собой крупные города европейской части России прежде считавшиеся мононациональными.
46173. АФГАНИСТАН В НОВЕЙШЕЕ ВРЕМЯ 32 KB
  Саурские события 1978 г Неудача вооруженных выступлений фундаменталистов Хекматиара и раскол НДПА продлили дни режима М Дауда. единство НДПА было формально восстановлено генсеком вновь стал Тараки. В ответ на это контролируемые НДПА воинские части выступили против Дауда. Успех апрельского военного переворота объяснялся в первую очередь слабостью режима Дауда а не наличием революционной ситуации в ее классическом понимании: Армия была в большей степени под контролем НДПА чем Правительства из 18 тыс.
46174. Массаж, значение, показания, противопоказания 94 KB
  История массажа В создании современного метода массажа русским ученым принадлежит огромная роль. Русскими врачами еще в прошлом столетии не только была проделана большая работа в области физиологического обоснования общего действия массажа на организм человека но и созданы отдельные приемы массажа в соответствии с их практической пригодностью в каждом отдельном случае расширены показания и противопоказания к назначению массажа. Еще до появления в свет шведской гимнастической системы и шведского врачебного массажа отец русской терапевтической...
46175. Отношение и развитие между людьми в первобытное время. Зарождение искусства, музыки и архитектуры в первобытное время 66.5 KB
  Люди в первобытных общинах были равноправными по своему положению имели одинаковые права и обязанности среди них не было богатых и бедных. Основой существования первобытных коллективов это равные обмены которые имели символистическую опору. Не было излишек все делили поровну для первобытных людей равный обмен помогал в общении. Очень несовершенными были также трудовые навыки и производственный опыт первобытных людей.
46176. Public Relations 47.5 KB
  Цель ПР установление двустороннего общения для выявления общих представлений или общих интересов и достижение взаимопонимания основанного на правде знании и полной информированности. Специалисты ПР используют для наведения мостов и установления взаимопонимания современные методы общения и убеждения. ТЕОРИЯ ОБЩЕНИЯ В философии ПР большое значение придается необходиимости двусторонних отношений. Сейчас эта необходимость признается достаточно широко но как ее достичь Недостаток общения порождает множество случаев непонимания и...