причому фази також можуть бути різні. На зображенні кожна з цих базисних функцій являють собою хвилю певної частоти, певної орієнтації і певної фази.
Тут N 1 ??xN 2 - розмір вихідного сигналу, він же - розмір спектра. k 1 і k 2 - це номера базисних функцій (номери коефіцієнтів двовимірного ДПФ, при яких ці функції знаходяться). Оскільки розмір спектра дорівнює розміру вихідного сигналу, то k 1=0, ..., N 1 - 1; k 2=0, ..., N 2 - 1. 1 і n 2 - змінні-аргументи базисних функцій. Оскільки область визначення базисних функцій збігається з областю визначення сигналу, то n 1=0, ..., N 1 - 1; n 2=0, ..., N 2 - 1.
Двовимірне ДПФ (у комплексній формі) визначається наступними формулами (тут x [n 1, n 2] - вихідний сигнал, а X [k +1, k 2] - його спектр):
,
.
Безпосереднє обчислення двовимірного ДПФ за наведеними формулами вимагає величезних обчислювальних витрат. Однак можна довести, що двовимірне ДПФ має властивість сепарабельного, тобто його можна обчислити послідовно по двох вимірах.
Для обчислення двовимірного ДПФ достатньо обчислити одномірні комплексні ДПФ всіх рядків зображення, а потім обчислити в результуючому «зображенні» одномірні комплексні ДПФ всіх стовпців.
При цьому результати всіх одновимірних комплексних ДПФ потрібно записувати на місце вихідних даних для цих ДПФ. Наприклад, при обчисленні одновимірного ДПФ першого рядка зображення потрібно результат ДПФ записати в перший рядок цього зображення (він має той же розмір). Для цього потрібно кожен «піксель» зберігати у вигляді комплексного числа.
Таким чином, ефективний алгоритм обчислення ДПФ зображення полягає в обчисленні одновимірних БПФ спочатку від всіх рядків, а потім - від усіх стовпців зображення.
3. Відновлення розфокусувати і змазаних зображень
Для усунення змазування і расфокусировки практично нічого немає. Відповідний математичний апарат почав розроблятися приблизно 70 років тому, але, як і для багатьох інших алгоритмів обробки зображень, все це знайшло широке застосування тільки в недавній час. Наведемо як демонстрації пару картинок:
Правое зображення отримано з лівого, без використання 48-бітного формату (в цьому випадку буде 100% відновлення вихідного зображення) - зліва звичайний PNG, розмитий штучно. У результаті ми бачимо більш якісне зображення.
Багато хто вважає, що розмиття необоротна операція і інформація безповоротно втрачається, тому що кожен піксель перетворюється на пляму, все змішується, а при великому радіусі розмиття виходить однорідний колір по всьому зображенню. Це не зовсім так - вся інформація просто перерозподіляється і може бути однозначно відновлена. Виняток становлять лише краї зображення шириною в радіус розмиття, де повноцінне відновлення неможливо.
Продемонструємо це, використовуючи невеликий приклад для одновимірного випадку. Уявімо, що у нас є ряд з пікселів зі значеннями:
x 1 | x 2 | x 3 | x 4 ... - Початкове зображення.
Після спотворення значення кожного пікселя підсумовується зі значенням лівого, тобто x i=x i + x i - 1. Треба ще поділити на 2, але ...