Русский   English
ДонНТУ   Портал магістрів

Реферат за темою випускної роботи

Зміст

Вступ

Комп'ютерна обробка зображень актуальна в будь-якій області діяльності.

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

Деякі люди, які не вміють на професійному рівні користуватися програмним забезпеченням, зазвичай вагаються з вибором фоторедакторів або потрібного методу обробки зображення таким чином, щоб зображення в результаті було візуально приємним.

Крім того, саме поняття прийнятності (якісність) зображення – часто досить суб'єктивно і значення критеріїв оцінки можуть істотно відрізнятися у різних користувачів.

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

1. Актуальність теми

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

Об'єктом досліджень є зображення як спосіб передачі візуальної інформації. Дослідження зображень базується на їх аналізі та обробці.

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

Растрове цифрове зображення A(Y,X) представлено в дискретно двовимірному просторі, складається з деякого числа Y – номер рядка і X – номер колонок, які утворюють собою деяку сітку, а елемент на перетині Y-го рядка і X-го стовпця, званий пікселем, містить в собі код, зазвичай ідентифікує колір.

Обробка зображення, заснована на обробці відповідних сигналів, передбачає внесення в сформоване зображення тих чи інших змін у порівнянні з оригінальним зображенням, а саме [1]:

  1. Зміна (спотворення) зображення з метою досягнення будь-яких ефектів (художнє поліпшення);
  2. Візуальне (помітне оком) поліпшення якості зображення (корекція яскравості і контрасту, цветокорреція і т.п.);
  3. Об'єктивне поліпшення якості зображення (усунення спотворень типу дисторсия, смаз, расфокусировка, збільшення різкості і т.п.);
  4. Оконтурювання зображень - визначення окремих образів, виділення контурів зображення.

2. Огляд існуючих методів і інструментальних засобів

Для досягнення вище поставлених цілей обробки застосовується велика кількість різних методів [2]. Вони були поділені на групи:

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

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

Також є кілька варіантів для інтеграції зі сторонніми системами [3]:

1. Взаємодія за допомогою SDK

SDK – комплект засобів розробки, який використовується розробниками програмного забезпечення. До складу цього комплекту входить набір корисних утиліт, вихідні коди і бібліотеки, призначені для створення додатків: MatLab, OpenCV, JAI, ImageMagick, CamanJS, VTK, VIPS і багато інших.

2. Взаємодія через API

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

API поділяють на типи:

REST (RESTful) – це загальні принципи організації взаємодії додатка / сайту з сервером за допомогою протоколу HTTP [4].

Вся взаємодія з сервером зводиться до 4 операцій:

  1. отримання даних з сервера (зазвичай у форматі JSON, або XML);
  2. додавання нових даних на сервер;
  3. модифікація існуючих даних на сервері;
  4. видалення даних на сервері.

Більшість онлайн сервісів надають свій API для використання іншими розробниками. Сервіс видає певні ключі для доступу до готових методам: відкритий ключ (APP_ID) і закритий ключ (KEY).

Прикладом онлайн фоторедактора, який може надати свій API з усіма методами обробки є сервіс Editor.Pho.to [5].

У наведеному нижче прикладі запиту викликається метод знебарвлення, застосовуваний до конкретного зображення, яке вказує користувач.


<image_process_call>
<image_url>http://developers.pho.to/img/girl.jpg</image_url>
    <methods_list>
        <method order="1">
            <name>desaturation</name>
        </method>
    </methods_list>
</image_process_call>

Далі приходить відповідь на запит з інформацією про успішність або невдачі виконання.


<image_process_response>
    <request_id>REQUEST_ID</request_id>
    <status>OK</status>
    <description>DESCRIPTION</description>
    <err_code>0</err_code>
</image_process_response>

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

http://opeapi.ws.pho.to/getresult?request_id=:REQUEST_ID

Так само, як і після першого запиту, необхідно отримати відповідь про успішність і готове знебарвлене зображення.

3. Альтернативні засоби вирішення задачі

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

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

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

4. Опис задачі підвищення якості зображень

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

Задача підвищення якості зображення включає кілька підзадач:

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

Можливі два підходи до оцінки якості зображень: кількісна оцінка за допомогою математичних методів і суб'єктивна оцінка на основі експертних оцінок. Крім цього вони можуть бути абсолютними або порівняльними.

Необхідно, щоб користувач, серед представлених перед ним зображень, вибрав ті, які найбільше відповідають його візуальному сприйняттю. Тобто застосовується суб'єктивна оцінка. У вибраних зображень розраховуються параметри оцінки якості, на які зазвичай впливають застосовані методи обробки, а саме:

  1. Яскравість – являє собою характеристику, що визначає те, наскільки сильно кольору зображення відрізняються від чорного. Зміна яскравості виконується шляхом зменшення або збільшення значення b кожного пікселя на одну і ту ж величину, що приводить до того, що всі елементи коректованого зображення становятся більш світлими або темнішими.
  2. Контраст – це характеристика зображення відмінності насиченості кольору його найбільш яскравих і найбільш темних ділянок.
  3. Різкість – це ступінь розмитості кордону між сусідніми ділянками зображення з різною оптичною щільністю (яскравістю).

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

5. Математична постановка задачі

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

1. Для оцінки яскравості зображення застосовується коректна побудова гістограми розподілу яркостей елементів зображення [6].

Гістограмою цифрового зображення з рівнями яскравості в діапазоні [0, L-1] називається дискретна функція

де rk є k-й рівень яскравості, а nk – число пікселів на зображенні, що мають яскравість rk.

Значення нормалізованої гістограми будуть обчислені за формулою:

де k = 0, 1, ..., L-1.

p(rk) – оцінка ймовірності появи пікселя із значенням яскравості rk

Можна відзначити, що сума всіх значень нормалізованої гістограми дорівнює одиниці.

По горизонтальній осі гістограми відкладені значення рівнів яскравості rk, а по вертикальній – значення гістограми h(rk) = nk або p(rk) = nk/n, якщо вони нормалізовані.

На гістограмі темного зображення ненульові рівні сконцентровані в області низьких (темних) значень діапазону яркостей. Аналогічно, значимі рівні гістограми яскравості, а зміщені до верхньої частини діапазону. Зображення з низьким контрастом має вузьку гистограмму, розташовану поблизу центру діапазону яркостей. Одноколірне зображення приймає сірий вигляд. Ненульові рівні гістограми висококонтрастного зображення покривають широку частину діапазону яркостей. В результаті отримаємо, що зображення, розподіл значень елементів якого близький до рівномірного і займає весь діапазон можливих значень яскравості, буде виглядати висококонтрастним і буде містити велику кількість півтонів (див. мал. 1).

Малюнок 1 – Приклади зображень і їх гістограми

2. Для оцінки контрастності найбільш універсально використовується відношення середньо-квадратичного відхилення до максимально можливого значення яскравості [7].

де σ – середньоквадратичне відхилення,

Ymax – максимально можливе значення яскравості.

C змінюється в діапазоні 0≤C≤1, а його значення повинно прагнути до 1 для найкращого підвищення візуального сприйняття. Значення 0 відповідає однотонному зображенню, значення 1 – максимально контрастному.

3. Для оцінки різкості зображення обчислюється міра ексцесу двовимірного спектра Фур'є.

Виконуються деякі дії для визначення різкості зображення.

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

Далі необхідно виділену область інтересу перетворити в частотну область.

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

де μ2 – другий центральный момент, μ4 – четвертий центральный момент, σ – стандартне відхилення.

Ексцес визначається як відношення четвертого центрального моменту і квадрата другого центрального моменту (стандартне відхилення в четвертого ступеня). Результат обчислення повинен прагнути до максимального значення, так як більш різкого зображення відповідає велика величина ексцесу.

Тоді, виходячи з вище наведених формул для оцінки якості, для варіанта, коли користувач вибрав лише одне прийнятне зображення, отримаємо:

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

де Ридеал(rk) – значення яскравості якісного зображення,

Р(rk)' – значення ймовірності яскравості обробленого призначеного для користувача зображення,

Сидеал – значення контрастності якісного зображення,

С' – значення контрастності обробленого призначеного для користувача зображення,

γидеал – значення різкості якісного зображення,

γ' – значення різкості обробленого призначеного для користувача зображення.

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

4. Для обчислення середнього значення яскравості:

де Р(rk) – середнє значення ймовірностей яркостей якісних зображень,

Pn(rk) – значення ймовірностей яркостей якісних зображень,

n – кількість всіх якісних зображень.

k = [0 ; L–1]

5. Для контрастності:

де С – середнє значення контрастності якісних зображень,

Сn – значення оцінки контрастності якісних зображень,

n – кількість всіх якісних зображень.

6. Для різкості:

де γ – середнє значення різкостей якісних зображень,

γn – значення оцінки різкості якісних зображень,

n – кількість всіх якісних зображень.

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

де Р(rk) – середнє значення яскравості якісних зображень,

С – середнє значення контрастності якісних зображень,

γ – середнє значення різкостей якісних зображень.

k = [0 ; L–1]

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

Висновки

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

При написанні даного реферату магістерська робота ще не завершена. Орієнтовна дата завершення: Червень 2020 р. Повний текст роботи та матеріали по темі можуть бути отримані у автора або його керівника після зазначеної дати.

Перелік посилань

  1. Компьютерная обработка изображений. [Электронный ресурс] – Режим доступа: URL: http://aco.ifmo.ru/el_books/image_processing/1_01.html
  2. Ю.И. Монич, В.В. Старовойтов Оценки качества для анализа цифровых изображений Искусственный интеллект 4’2008. Стр. 376-386.
  3. Варианты протоколов для интеграции со сторонними системами в современных СКУД. [Электронный ресурс] – Режим доступа: URL: http://www.techportal.ru/196160
  4. Введение в REST API. [Электронный ресурс] – Режим доступа: URL: https://myrusakov.ru/rest-api-introduction.html
  5. Pho.to API. [Электронный ресурс] – Режим доступа: URL: http://developers.pho.to/documentation/api-keys
  6. Методы обработки изображений: лабораторный практикум. В 2 ч. Ч. 1 / сост.: С. В. Воронов, А. Г. Ташлинский, И.В. Горбачев. – Ульяновск: УлГТУ, 2016. – 50 с.
  7. Критерии и методы укрупнённой оценки качества изображений в растровых графических форматах. [Электронный ресурс] – Режим доступа: URL: http://www.aiportal.ru/articles/other/evaluation-of-image-quality.html