опустимо цей крок для простоти. В результаті маємо розмите зображення зі значеннями пікселів:
1 + x 0 | x 2 + x 1 | x 3 + x 2 | x 4 + x 3 ... - Розмите зображення.
Тепер спробуємо відновити. Віднімемо послідовно по ланцюжку значення за схемою: із другого пікселя - перший, із третього - результат другого, з четвертого - результат третього і так далі. Одержуємо:
x 1 + x 0 | x 2 - x 0 | x 3 + x 0 | x 4 - x 0 ... - Відновлене зображення.
У підсумку, замість розмитого зображення отримали вихідне, до пікселів якого додана невідома константа x 0 з чередующимся знаком. Це вже набагато краще - цю константу можна підібрати візуально, можна припустити, що вона приблизно дорівнює значенню x 1 , можна автоматично підібрати з таким критерієм, щоб значення сусідніх пікселів «скакали» якомога менше і т.д. Але все змінюється, коли ми додаємо шум (який завжди є в реальних зображеннях). При описаною схемою на кожному кроці буде накопичуватися внесок шуму в загальну складову, що в підсумку може дати зовсім неприйнятний результат. Але, як ми переконалися, відновлення цілком реально навіть таким примітивним способом.
3.1 Модель процесу спотворення
Тепер перейдемо до більш формального і науковому опису процесів спотворення і відновлення. Будемо розглядати тільки напівтонові чорно-білі зображення в припущенні, що для обробки повнокольорового зображення досить повторити всі необхідні кроки для кожного з колірних каналів RGB. Введемо наступні позначення: (x, y) - вихідне неспотворене зображення. (X, y) - искажающая функція. (X, y) - адитивний шум. (X, y) - результат спотворення, тобто те, що ми спостерігаємо в результаті (змащене або розфокусувати зображення).
Сформулюємо модель процесу спотворення наступним чином:
g (x, y)=h (x, y) * f (x, y) + n (x, y). (1)
Завдання відновлення спотвореного зображення полягає в знаходженні найкращого наближення f '(x, y) вихідного зображення. Розглянемо кожну складову більш докладно. З f (x, y) і g (x, y) все досить зрозуміло. Розберемо функцію h (x, y): у процесі спотворення кожен піксель вихідного зображення перетворюється на пляму для випадку расфокусировки і в відрізок для випадку простого змащування. Або ж можна сказати навпаки, що кожен піксель спотвореного зображення «збирається» з пікселів деякій околиці початкового зображення. Все це один на одного накладається і в результаті ми отримуємо спотворене зображення. Те, за якою функції розмазується або збирається один піксель і називається функцією спотворення.
Інші синоніми - PSF (Point spread function, тобто функція розподілу точки), ядро ??спотворює оператора, kernel та інші. Розмірність цієї функції менше розмірності самого зображення. Наприклад, в початковому розгляді прикладу, розмірність функції була 2, т.к. кожен піксель складався з двох.
.1.1 Спотворюють функції
Подивимося, як виглядають типові спотворюють функції. Будемо використовувати стандартний інструмент - Matlab, він містить у собі все необхідне для найрізноманітніших експериментів з обробкою зображень і дозв...