Зображення правил. Частина II: Класифікація на основі зображень правил

rule-based-classification

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

Стосовно самого терміну, що винесений у назву поста, треба дати важливе застереження. Класифікацією на базі правил (rule-based) можуть також звати об’єктно-орієнтовану класифікацію. Це треба мати на увазі, коли шукаєш літературу по темі.

Практичне застосування класифікації на основі правил ми розберемо на прикладі, яким раніше був ілюстрований пост про класифікацію за алгоритмом мінімальної відстані. У тому прикладі виконалося дешифрування по знімку ASTER VNIR трьох класів об’єктів – водойм, хвойних лісів і листяних лісів (рис. 1).

img1

Рис. 1. Космічний знімок та зображення правил для водойм, хвойних і листяних лісів (в черзі зліва направо)

 

1) Щоб працювати з зображеннями правил, треба спочатку їх створити, а для цього – виконати керовану класифікацію за будь-яким алгоритмом. Тому класифікацію на основі зображень правил відносять до процедур післякласифікаційної обробки космічних знімків.

2) Коли ми вже маємо самі зображення правил, тоді можна запускати класифікацію на їх основі. Для цього оберіть у Тулбоксі ENVI команду Classification→Post Classification→Rule Classifier.

3) З’явиться вікно, в якому треба обрати зображення правил. Оберіть таке зображення, та натисніть у цьому вікні кнопку OK.

4) Після вибору  зображення правил, з’явиться вікно Rule Image Classifier Tool (рис. 2). Розберемо його зміст.

img2

Рис. 2. Вікно Rule Image Classifier Tool

 

У вікні Rule Image Classifier Tool є три головних налаштування класифікації:

– режим класифікації (Classify by),

– перелік класів,

– порогове значення (Thresh:).

5) Режим класифікації (Classify by) – це те, як ми згідно з математичним критерієм класифікації визначаємо належність пікселя до класу. Існує два варіанти. Перший варіант – це коли до складу класу відносяться пікселі зі значення критерію класифікації меншим, ніж порогове (класифікація за мінімальним значенням, Minimum Value). У другому варіанті навпаки, до складу класу відносяться пікселі зі значення критерію класифікації більшим, ніж порогове (класифікація за максимальним значенням, Maximum Value).

Щоб вказати режим класифікації, треба натиснути на перемикач у вигляді кнопки зі стрілками. В нашому випадку правильний варіант – це класифікація за мінімальним значенням, бо зображення правил класифікації зроблено за допомогою алгоритму мінімальної відстані. А в цьому алгоритмі керованої класифікації пікселі відносять до того класу, до центру якого найменша дистанція.

Порівняння двох режимів класифікації для нашого прикладу показане на рисунку 3. Ми бачимо що при класифікації за мінімальним значенням до класу водойм насправді віднесено водойми (рис. 3, праворуч). А при класифікації за максимальним значенням, до класу водойм віднесено все, що не є водоймами (рис. 3, ліворуч).

img3

Рис. 3. Порівняння класифікації по максимальному (ліворуч) та по мінімальному (праворуч) значенню. В центрі – зображення правила класифікації для водойм

 

6) Перелік класів містить назви та кольори класів. У нашому прикладі (рис. 2) ми маємо три класи під назвами water, conifer, deciduous – водойми, хвойні ліси, листяні ліси. Вони мають відповідно синій, темно-зелений та світло-зелений кольори. Поруч з  кожним кольором класу, зліва, у вікні Rule Image Classifier Tool стоять вимикачі класів. Якщо в них зняти галочку, то відповідний клас не буде виокремлюватися під час класифікації. За замовчуванням увімкнені всі наявні класи. Кількість цих класів дорівнює кількості шарів у зображенні класифікації.

7) Наступний крок – це введення порогового значення. Щоб завдати всім класам однакове значення, наберіть його в рядок вводу поряд із кнопкою Set All Threshold. А потім натисніть цю кнопку. Щоб завдати для кожного класу різні порогові значення, введіть їх в окремі рядки вводу (Thresh:), що стоять праворуч від переліку класів та імен класів.

8) Щоб легше було підібрати порогове значення, у вікні Rule Image Classifier Tool передбачено два засоби: створення гістограм та розрахунок описової статистики з зображення правил. Обидва засоби дозволяють побачити, які значення є на зображенні правил для окремого класу та яке їх розподілення.

Щоб створити гістограму, треба натиснути на одну з кнопок Hist, що стоять праворуч від рядків для вводу (Thresh:). З’явиться вікно з гістограмою. На рисунку 4 показане таке вікно з гістограмою математичного критерію (відстані до центру класу) для водойм. На ній ми бачимо декілька піків. Кожний пік відповідає якомусь класу об’єктів або групі класів. Найбільш цікавим є один з двох крайніх піків. Якщо ми робимо класифікацію за мінімальним значенням то, треба звернути увагу на крайній лівий пік – пік на найменших значеннях (якраз наш випадок). Десь між ним та наступним піком по осі X (Data Value на рисунки 4) знаходиться оптимальне порогове значення.  А якщо ми робимо класифікацію за максимальним значенням, тоді, навпаки, треба дивитися на крайній правий пік на найбільших значеннях. Аналізуючи гістограму для водойм (рис. 4), можна стверджувати, що оптимальний поріг знаходиться десь між 5 та 20.

img4

Рис. 4. Гістограма значень дистанцій до центру класу водойм

 

9) Щоб переглянути статистику для зображення правил, оберіть в меню вікна Rule Image Classifier Tool команду Options → Stats for Selected Rule Bands. З’явиться вікно Statistics Results (рис. 5). У нижній частині цього вікна наведені кількісні значення для кожного шару зображення правил: мінімальне, середнє, максимальне значення та стандартне відхилення від середнього. Також там є інформація з частоти кожного наявного значення – кількість пікселів з таким значенням і відсоток таких пікселів від загального розміру зображення.

Статистика супроводжується графікою, що міститься у верхній частині вікна Statistics Results. Є декілька її варіантів, які обираються у списку, що розгортається після натиснення кнопки Select Plot. Найбільш інформативні графіки – це гістограми всіх шарів зображення правил класифікації (рис. 5, ліворуч) та графік зміни між шарами цього зображення мінімального, максимального та середнього значення (рис.5, праворуч).

img5

Рис. 5. Вікно Statistics Results з описовою статистикою та статистичною графікою

 

10) Коли всі налаштування виконано, натисніть кнопку Quick Apply. Після цього з’явиться вікно для попереднього перегляду результату. Якщо він Вам подобається, натисніть кнопку Save To File…, щоб зберегти результат. Якщо він Вам не подобається, то введіть інші порогові значення. Врешті решт, Ви знайдете оптимальну комбінацію порогових значень.

На рисунку 6 наведені результати класифікації, що були отримані за різних порогових значень. Рисунок 6А – це результат однакових і занижених значень порогу. Для кожного класу порогове значення дорівнює трьом. Це занадто мало. Тому виникли чисельні помилки пропускання. Кожен клас менше за свою реальну площу. Найбільше від цього постраждали листяні ліси, найменше – водойми.

Рисунок 6B – це результат однакових і завищених значень порогу. Для кожного класу значення критерію дорівнюють тридцяти. Це занадто високе значення. Тому виникли чисельні помилки приписування. До класу хвойних лісів була помилково віднесена частка вирубів та листяних лісів. До листяних лісів у свою чергу помилково віднесена трав’яна рослинність заплави. Лише водойми виокремлені точно.

Рисунок 6C – це результат різних, але невірно збалансованих значень порогу. Площа листяних лісів більша ніж реальна, а площа водойм та хвойних лісів менша ніж реальна.

Рисунок 6D – це результат різних і оптимально збалансованих значень порогу.

 

img6

Рис 6. Результати класифікацій, що отримані при різних комбінаціях порогових значень

 

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