- •Методичні вказівки до вивчення дисципліни
- •«Цифрова обробка сигналів та зображень»
- •Для студентів заочної форми навчання
- •За напрямом 6.050102 «Комп’ютерна інженерія»
- •1 Зміст навчальної дисципліни
- •2 Методичні вказівки до виконання розрахунковографічної роботи та варіанти завдань
- •2.1. Можливості цифрової обробки зображень в Matlab
- •Типи зображень
- •2.1.1. Геометричні перетворення зображень.
- •2.1.2. Аналіз зображень.
- •2.1.3. Поліпшення зображень.
- •2.1.4. Фільтрація зображень.
- •2.1.5. Сегментація зображень.
- •2.2. Алгоритми усунення розмитості цифрових зображень
- •2.2.1 Усунення розмитості зображення за допомогою алгоритму сліпої деконволюції.
- •Зчитування зображення.
- •2.2.2. Моделювання Blur.
- •2.2.3.Відновлення розмитого зображення.
- •2.2.4. Усунення розмитості зображення з допомогою фільтру Вінера
- •2.2.5. Імітація (Motion Blur) розмитості рухом.
- •2.2.6. Відновлення розмитого зображення.
- •3 Методика виконання розрахунково-графічної роботи
- •3.1 Цілі та завдання ргр
- •3.2. Порядок виконання ргр
- •4 Запитання для підготовки до екзамену
- •Рекомендована література
- •Приклад оформлення розрахунковографічної роботи
Типи зображень
Типи зображення |
double |
uint8 |
Бінарне |
0 та 1 |
0 та 1 |
Півтонове |
[0, 1] |
[0, 255] |
Палітрове |
[1, розмір палітри], де 1 – перший рядок палітри |
[0, 255], де 0 – перший рядок палітри |
Повно кольорове |
[0, 1] |
[0, 255] |
Примітка. При програмній реалізації краще уникати використання індексації рядків, де перший рядок кольорової палітри позначається – 0. MATLAB коректно сприймає індексацію з першого, а не з нульового рядку.
Далі, при розгляді методів обробки зображень, вважатимемо, що зображення представляється матрицею чисел (розмір матриці N×M), де значення кожного елемента відповідає певному рівню квантування його енергетичної характеристики (яскравості). Це піксельна система координат. Вона застосовується в більшості функцій пакету IPT. Існує також просторова система координат, де зображення наводиться неперервним числовим полем квадратів з одиничною величиною. Кількість квадратів збігається з числом пікселів. Значення інтенсивності елементу в центрі квадрату збігається зі значенням відповідного пікселя в піксельній системі координат. При вирішенні практичних завдань, пов'язаних з вимірами реальних геометричних розмірів об'єктів на зображенні, зручно використовувати просторову систему координат, тому що вона дозволяє враховувати розподільчу здатність (кількість пікселів на метр) системи.
Маска фільтр (або ковзне вікно, або апертура) представляє собою матрицю розміру n×m, яка накладається на зображення і здійснюється множенням елементів маски фільтру та відповідних елементів зображення з подальшою обробкою результату. Коли маска пересувається до кордону зображення, виникає так зване явище крайового ефекту. Щоб уникнути цього небажаного ефекту необхідно, коли маска вийшла за межі вихідного зображення, доповнити його не нульовими елементами, а елементами зображення, симетричними відносно його країв.
Обробка зображень здійснюється рекурсивними та нерекурсивними методами. Рекурсивні методи використовують результат обробки попереднього пікселя, нерекурсивні – не використовують. У більшості випадків використовуються нерекурсивні алгоритми обробки зображень.
2.1.1. Геометричні перетворення зображень.
До найбільш поширених функцій геометричних перетворень відноситься кадрування зображень (imcrop), зміна розмірів (imresize) і поворот зображення (imrotate).
Суть кадрування полягає в тому, що функція imcrop дозволяє за допомогою миші в інтерактивному режимі вирізати частину зображення і помістити її в нове вікно перегляду. Причому, зображення утворене функцією imcrop, можна одразу присвоювати до якоїсь змінної.
Синтаксис:
L=imread('cameraman.tif');
imshow(L);
imcrop;
Рис. 1. Оригінальне та кадроване зображення
Функція зміни розмірів зображення imresize дозволяє, використовуючи спеціальні методи інтерполяції, змінювати розмір будь-якого типу зображення.
Синтаксис:
imresize(L,0.5);
Рис. 2. Оригінальне та в два рази зменшене зображення
В пакеті Image Processing Toolbox існує функція imrotate, яка дозволяє здійснювати поворот зображення на заданий в градусах кут. Значення кута повороту можна задавати як цілими так і десятковими дробами, тобто частини кута (хвилини та секунди).
Синтаксис:
L1=imrotate(L,35,'bicubic');
figure,imshow(L1)
Рис. 3. Оригінальне та повернене, на 35º, зображення
Таким чином, наведені вище функції дозволяють повертати, вирізати частини, масштабувати, тобто працювати з цілим масивом зображення.