Головний результат процесу керованої класифікації космічного знімка — це карта класифікації. Але, крім неї, ще можна отримати інший результат — зображення правил (rule image). У цьому пості ми розберемо, що це таке.
Коли ми виконуємо керовану класифікацію космічного знімку, програма для кожного пікселя розраховує якийсь математичний критерій (який саме, залежить від алгоритму класифікації). За значенням цього критерію вона визначає клас, до якого належить піксель. Щоби програма могла розрахувати критерій, треба вказати еталони класів. Це робить користувач. Щоби програма могла розділити класи за критерієм, треба вказати порогове значення цього критерію. Це також робить користувач. А далі програма вже робить усе самостійно, без втручання користувача. І на виході з процесу класифікації він отримує готову карту класифікації. Тобто с цього моменту він знає, до яких класів відносяться пікселі космічного знімку. Зазвичай це саме те, що його цікавить.
Але іноді може бути необхідним дізнатися не лише клас пікселя. Користувач може захотіти побачити також і значення критерію, за яким клас певного пікселя був визначений. Інакше кажучи, користувача може цікавить, наскільки точно піксель відповідає еталонові класу. Але як це зробити, коли безпосередньо сам процес розподілу космічного знімку на класи прихований від користувача? Для цього під час класифікації можна створити так зване зображення правил. Це багатошарове растрове зображення. Воно має стільки шарів, скільки класів було у класифікації. Значення кожного пікселя в окремому шарі — це значення математичного критерію, за яким програма визначала, чи відноситься піксель до класу, чи ні.
У цьому пості ми розберемо, які засоби візуалізації для зображень правил є в ENVI, та як переглянути кількісні значення в цих зображеннях. Проілюструємо це вже знайомим прикладом дешифрування з минулого посту, що був присвячений керованій класифікації за допомогою алгоритму мінімальної відстані. Чому саме на цьому прикладі? Тому що математичний критерій алгоритму мінімальної відстані — евклідова відстань між центром класу та пікселем — це найбільш інтуїтивно зрозумілий математичний критерій. Бо це є звичайна відстань, з якою ми всі знайомі на побутовому рівні.
Створення та візуалізація зображення правил
Щоб отримати зображення правил, треба виконати наступні кроки.
Перше — створити за допомогою областей обробки навчальні вибірки.
Друге — запустити з Тулбоксу ENVI процес керованої класифікації. У вікні налаштувань параметрів класифікації є опція «Output Rule Images?» — створити зображення правил (рис. 1). Після того, як Ви налаштуєте всі інше, треба за допомогою кнопки зі стрілками поставити значення цього параметра на Yes (рис 1). А потім завдати спосіб збереження зображення (Enter Output Rule Filename). Це може бути або збереження в тимчасову пам’ять (Memory), або збереження у файл (File).
Для візуалізації зображень правил в ENVI є три способи:
- показ окремого шару (правила для окремого класу) у відтінках сірого кольору;
- показ окремого шару (правила для окремого класу) як псевдокольорового зображення;
- синтез двох-трьох шарів (правил для двох-трьох класів) у вигляді кольорового зображення (RGB-композита).
Рис. 1. Опція створення зображення правил (позначена червоною рамкою) у вікні налаштування параметрів класифікації за алгоритмом мінімальної відстані
За замовчуванням зображення правил в ENVI відображуються у вигляді RGB-композита. R, G і B шарам композита відповідають перший, другий та третій шар зображення правил. Приклад цього показаний на рисунку 2. У центрі на ньому правила зображення у RGB-комбінації 1–2–3 (водойми — хвойні ліси — листяні ліси). Для порівняння зліва на рисунку 2 наведена карта класифікації, на якій синім кольором позначені водойми, зеленим — хвойні ліси, світло-зеленим — листяні ліси.
Рис. 2. Карта класифікації (ліворуч), зображення правил у комбінації 1–2–3 (у центрі), зображення правил у комбінації 3–1–2 (праворуч)
Якщо є бажання, то можна змінити порядок правил зображення у RGB-композиті. Для цього в менеджері шарів (Layer Manager) натисніть правою кнопкою миші на ім’я шару. З’явиться контекстне меню. Оберіть у ньому команду Change RGB Bands… (рис. 3). Після цього з’явиться вікно Change Bands (рис 4).
Рис. 3. Запуск процедури зміни черги шарів у RGB-композиті
У вікні Change Bands поряд з іменем кожного шару (зліва) стоїть квадрат без кольору. Натискайте на ці квадрати лівою кнопкою миші. Перше натиснення завдає R-компонент RGB-композиті, друге — G-компонент, трете — B-компонент. Під час виконання цих дій квадрати набувають відповідний колір. Коли все вказано, треба натиснути кнопку OK у вікні Change Bands (рис. 4).
Рис. 4. Вікно зміни черги шарів у RGB-композиті
Результат зміни комбінації шарів RGB-композита показаний на рисунку 2 праворуч. Подібні зображення (рис. 2, у центрі та справа) мають ефектний вигляд, але їх важко інтерпретувати. Легше інтерпретувати окреме зображення правила класифікації. Щоби вивести його в гамі відтінків сірого, у меню ENVI треба обрати команду File → Data manager. З’явиться вікно керування даними — Data Manager (рис. 5).
Його також можна відкрити, натиснувши кнопку F4 на клавіатурі або натиснувши кнопкуна панелі інструментів ENVI. У вікні керування даними виділіть один із шарів зображення правил та натисніть кнопку Load Grayscale (рис. 5).
Рис. 5. Вікно керування даними
Приклад відображення окремого растрового шару у відтінках сірого показаний на рисунку 6. Це зображення правила класифікації мінімальної відстані для хвойних лісів. Тон зображення вказує на значення критерію класифікації. Чим темніший відтінок сірого кольору, тим менше значення критерію. У наведеному прикладі критерій — це відстань від центру класу хвойних лісів. Найтемніша частина (майже чорна) зображення на рисунку 6 відповідає хвойному лісу (Андріївському бору). Темно-сірий колір — це переважно листяні ліси, у них відстань до центру класу хвойних лісів уже більше, ніж у пікселів, що дійсно належать до хвойних лісів. А найбільше віддалені від центру цього класу водні поверхні та деякі вируби в борі, що мають відповідно світло-сірий та майже білий колір.
Рис. 6. Зображення правила класифікації мінімальної відстані для хвойних лісів
Щоб більш детально побачити різницю між об’єктами на зображенні правил класифікації для окремого класу, можна змінити чорно-білу гамму на іншу. Для цього знов натисніть у менеджері шарів (Layer Manager) правою кнопкою миші на імені шару. Оберіть у контекстному меню Change Color Table → More… З’явиться вікно Change Color Table. У цьому вікні можна обрати одну з численних палітр або створити свою власну (Рис. 7).
Рис. 7. Вибір кольорової гами та зображення правила класифікації для класу водойм, показане в цій гамі
Перегляд кількісних значень в окремому пікселі
Щоби переглянути кількісні значення окремого пікселя в ENVI, можна використати три способи:
- покажчик значень під курсором,
- спектральний профіль,
- просторовий профіль.
Перший спосіб — винятково кількісний. А другий та третій — це кількісно-графічні способи.
1) Щоби переглянути точне значення в окремому пікселі зображення правил, оберіть у меню ENVI команду Display → Cursor Value.
Також для цього можна натиснути кнопкуна панелі. З’явиться вікно Cursor Value — покажчик значень під курсором (рис. 8). Коли ми наводимо курсор миші на піксель, у цьому вікні показується його значення, а також географічні координати.
Можна також добавити перехрестя прицілу, щоби простіше було фіксувати положення пікселя, значення якого ми переглядаємо.
Для цього треба натиснути кнопкуна панелі ENVI.
Рис. 8. Покажчик значень під курсором
У вікні Cursor Value ми можемо прочитати декілька параметрів (згори вниз):
- Geo: географічні координати пікселя в градусах,
- Map: прямокутні координати пікселя в метрах,
- MGRS: координати пікселя в системі MGRS (Military Grid Reference System),
- Proj: картографічна проекція зображення,
- ім’я файлу,
- File: дисплейні координати пікселя,
- Data: значення пікселя.
Якщо зображення багатошарове, то в параметрі Data у квадратних дужках через кому будуть показані значення пікселя в кожному шарі. Черга значень буде відповідати черзі шарів у зображенні від першого до останнього. У нашому прикладі ми маємо наступну чергу шарів у зображенні правил: водойми, хвойні ліси, листяні ліси. Знаючи це, ми можемо з рисунка 8 зробити висновок, що піксель, на який був наведений курсор, скоріш за все, належить до класу водойм. Бо від пікселя до центру цього класу в багатовимірному просторі спектральних ознак пролягає найменша відстань. Ще ми можемо сказати, що найбільша відстань до центру класу листяних лісів. Ця відстань приблизно в 1,5 раза більше, ніж відстань до центру класу хвойних лісів, і приблизно в 50 разів більше, ніж до водойм.
2) Спектральний профіль — це графік, що відображaє, як змінюються значення в окремому пікселі растрового зображення від шару до шару.
Щоби його створити, натисніть кнопку Spectral Profile на панелі інструментів ENVI або наберіть із клавіатури Alt+Z.
Щоби додати декілька профілів на графік, треба клацати по пікселях лівою кнопкою миші, одночасно утримуючи Shift на клавіатурі.
На рисунку 9 ліворуч зображення правил. На нього нанесені три точки. Синя точка стоїть на водній поверхні, темно-зелена точка розміщена в сосновому лісі, світло-зелена — у листяному лісі. Праворуч на цьому рисунку показано вікно Spectral Profile. У ньому — спектральні профілі для цих трьох точок. Це та ж сама інформація, що є у вікні Cursor Value у пункті Data (рис. 8). Але вона показана в графічному вигляді.
Спектральний профіль дозволяє також установити точні значення. Для цього треба клацати лівою кнопкою миші по кривім. У нижньому лівому кутку вікна Spectral Profile будуть показуватися пари значень X та Y. Y — це значення математичного критерію класифікації, що відображують зображення правил. X — це номер шару в зображенні правил. Колір значень X та Y вказує на те, якій кривій вони належать. Так, на рисунки 9 є значення, що показує наскільки точка у хвойному лісі віддалена від еталону хвойних лісів.
Рис. 9. Спектральні профілі зображень правил (праворуч) та точки, для яких вони створені (ліворуч)
3) Просторовий профіль дозволяє переглянути, як змінюються значення в окремому шарі зображень правил вздовж заданої користувачем лінії (трансекти). Щоби створити профіль, натисніть кнопку Arbitrary Profile (Transect). Клацанням лівою кнопкою миші прокладіть трансекту (на рисунку 10 вона позначена чорним пунктиром). Потім натисніть праву кнопку миші та оберіть у контекстному меню Complete and Accept Polyline для завершення трансекти.
Рис. 10. Просторовий профіль значень правил класифікації (праворуч) вздовж заданої користувачем трансекти (ліворуч)
Трансекта, що позначена ліворуч на рисунку 10, була проведена з півночі на південь. А у вікні Arbitrary Profile (рис. 10, праворуч) цьому напрямку відповідає хід просторових профілів зліва направо. Аналізуючи ці профілі, ми бачимо два факти. Перше — це раптова зміна значень у двох місцях, що вказує на межі класів (спочатку водойм та хвойних лісів, потім хвойних та листяних лісів). Друге — це відмінності характеру ходу профілів у межах класів. У водойм коливання профілів маленькі, у хвойних та листяних лісів — навпаки, великі. Чим більше розмах коливань у межах класу, тим більш неоднорідна його поверхня на місцевості.
Отже, ми розібрали, що таке зображення правил класифікації, як їх створити, як їх візуалізувати та як переглянути кількісні значення пікселів цих зображень. Читаючи цей пост, ви могли дійти до однієї цікавої думки. А чи не можна виокремити класи безпосередньо на основі аналізу зображень правил? Це дійсно можливо. Цьому буде присвячений наступній пост — «Зображення правил класифікації. Частина II: класифікація на базі зображень правил».