Предмет:
Тип роботи:
Розрахунково-графічна робота
К-сть сторінок:
27
Мова:
Українська
обернену згортку або розгортання. Дана операція використовується при оберненій згортці сигналів, цифровому перетворенні зображень, а також для інших інженерних та наукових операцій.
В загальному випадку метою деконволюції є пошук рішення рівняння згортки, заданого у вигляді:
f*g=h
Де h- записаний сигнал, аf – сигнал, який потрібно відновити, причому відомо. Що перший сигнал отриманий шляхом згортки другого з деяким відомим сигналом – g (наприклад, з імпульсною характеристикою кінцевого імпульсного фільтру). Якщо сигнал g невідомий заздалегідь, його потрібно оцінити. Зазвичай це робиться за допомогою методів статистичного оцінювання.
Алгоритм сліпої деконволюції може бути ефективно використаний при відсутності інформації про спотворення (розмиття і шум). Він належить до алгоритмів одночасного відновлення зображень і функції точок (поширення) розповсюдження (PSF).
Даний алгоритм широко застосовується в системах відеоспостереження, для наведення чіткості отриманого зображення. Для прискорення операції, затухаючий алгоритм Річардсона-Люсі використовується в кожній ітерації при розпізнаванні матриці.
В якості вхідних параметрів для функції відновлення може виступати додаткова оптична система, характеристики якої можуть допомогти підвищити якість відновлення зображень.
PSF-обмеження можуть бути передані через зазначені користувачем допоміжні функції.
Для наглядного прикладу функціонування даного алгоритму візьмемо зображення і виконаємо такі операції перетворення:
Зчитування;
Моделювання Blur;
Відновлення розмитого зображення (використання PSF різних розмірів);
Аналіз PSF-відтвореного зображення;
Поліпшення відновлення;
Використання додаткових обмежень на відновлення PSF.
7. Моделювання blur
Змоделюємо зображення, яке може бути розмите через рух камери, відсутність фокусу. Зімітуємо розмиття шляхом згортки фільтру Гауса з trueimage (за допомогою функції imfilter).
Синтаксис:
P=imread ('c: \images\Picture49. jpg') ;
PSF=fspecial ('gaussian', 7, 10) ;
Blurred=imfilter (I, PSF, 'symmetric', 'conv') ;
figure;
imshow (Blurred) ;
title ('Blurred image') ;
Рис. 11. Розмите зображення
8. Відновлення розмитого зображення
Для того, щоб проілюструвати важливість знання розміру істинного PSF, виконаємо 3 реставрації. Кожного разу, коли виконується відновлення зображення, PSF починається з рівномірності масиву. На початку завжди використовують один масив.
В реставрації, J3 і P3, використовується одиничний масив, INITPSF, для початкової PSF, що має такий же розмір як справжня PSF.
Синтаксис:
P=imread ('c: \images\Picture49. jpg') ;
PSF=fspecial ('gaussian', 7, 10) ;
Blurred=imfilter (P, PSF, 'symmetric', 'conv') ;
figure;
imshow (Blurred) ;
title ('Blurredimage') ;
INITPSF=padarray (PSF, [22], 'replicate', 'both') ;
[J3 P3]=deconvblind (Blurred, INITPSF) ;
figure;
imshow (J3) ;
title ('Dedluringwith INITPSF') ;
Рис. 12. Реставрація по маломірному масиву INITPSF
9. Усунення розмитості зображення з допомогою фільтру Вінера
Деконволюції Вінера використовуються у випадках, коли точка розповсюдження функції і рівень шуму повністю відомі або їх можливо оцінити.
Виконаємо такі операції перетворення:
Завантаження зображення;
Імітація Blur ефекту (розмитості) ;
Відновлення розмитого зображення.
Завантажимо зображення із подвійною точністю, за допомогою функції im2double:
Функція im2double дозволяє представити всі пікселі матриці зображення у вигляді дійсних чисел подвійної точності. При реалізації цієї функції, на відміну від функції double, здійснюється приведення значень пікселів до необхідного діапазону. Для бінарних, на півтонових і повнокольорних зображень – це діапазон [0, 1], а для па літрових зображень – [1, N], деN – кількість кольорів у палітрі.
Синтаксис:
Р=im2double (imread ('c: \images\Picture49. jpg')) ;
figure,
imshow (Р) ;
title ('OriginalImage (courtesyof MIT) ') ;
Рис. 13. Оригінальне зображення (пом’якшений МІТ)
10. Імітація (Motionblur) розмитості рухом
Моделювання розмитого зображення, яке може бути отримане від руху камери. Створимо точку розповсюдження функції, PSF, яка буде відповідною лінійному руху в 36пікселів (LEN=36), під кутом 5 градусів (THETA=5). Для імітації розмиття, необхідно виконати згортку фільтра з зображення за допомогою функції: imfilter.
h = fspecial (‘motion’, len, theta)
Синтаксис:
P=im2double (imread ('c: \images\Picture49. jpg')) ;
imshow (P) ;
LEN=36;
THETA=5;
PSF=fspecial ('motion', LEN, THETA) ;
blurred=imfilter (P, PSF, 'conv', 'circular') ;
imshow (blurred) ;
title ('Blurredimage') ;
Рис. 14. Розмите зображення
11. Відновлення розмитого зображення
Функція J=deconvwnr (I, PSF) відновлює зображення P, яке було зіпсовано згорткою з функцією точки розповсюдження PSF і можливим доповненням шуму. Алгоритм оптимізується з точки зору найменшої середньоквадратичної похибки між зображенням що обчислюється та вихідним зображенням і використовує матрицю кореляції та шуму зображення. При відсутності шумової складової, фільтр Вінера перетворюється в ідеальний інверсний фільтр.
У функції J=deconvwnr (I, PSF, NSR) параметр NSR вказує на співвідношення сигнал/шум. Величина NSR є скаляром або масивом, розмірність якого така ж як І. За замовчуванням це значення дорівнює 0.
Найпростіший синтаксис функції deconvwnr записується таким чином:
deconvwnr (А, PSF, NSR),
де А – змінна, під якою збережено розмите зображення, PSF – точки розповсюдження функції, і NSR – величина співвідношення потужності шуму до потужності сигналу. Оскільки дане розмите зображення формується у