- •Міністерство освіти і науки україни національний університет “львівська політехніка”
- •Лабораторний практикум
- •“Комп’ютерні науки”
- •Методи класифікації та понижування розмірності і. Формування даних
- •1.1. Поняття класу.
- •1.2. Суть задач класифікації та понижування розмірності.
- •1.3. Типові задачі практики.
- •1.4. Типи математичних постановок задач класифікації
- •Лабораторна робота № 1.1. Формування таблиць “об’єкт – властивість”
- •2. Побудова матриць близькості
- •2.1. Гіпотеза компактності.
- •2.2. Міри подібності (близькості) кількісних та якісних ознак.
- •Побудова матриць близькості для кількісних ознак
- •Побудова матриць близькості для якісних ознак
- •Список літератури
- •Кластерний аналіз
- •3.1. Модель кластерного аналізу.
- •3.2. Кластерний аналіз.
- •Комбінаторний метод ієрархічної класифікації.
- •Ієрархічний кластерний аналіз для бінарних об’єктів.
- •Іii. Лінійні розділяючі функції і поверхні рішень.
- •1.1. Основні поняття теорії розпізнавання образів
- •1.2. Випадок двох класів.
- •1.3. Випадок багатьох класів.
- •Обчислення відстані між класами
- •Побудова розділяючої функції
- •Статистичні методи розпізнавання.
- •2.1. Основи байєсівського підходу.
- •Іv. Розпізнавання зображень
- •4.1. Поняття зображення.
- •1.2. Формалізація поняття “алгоритм розпізнавання зображень”.
- •4.3. Математична постановка задачі розпізнавання.
- •1.4. Функціональна модель процесу розпізнавання.
- •Побудова класів об’єктів з заданим типом ознак.
- •Лабораторна робота 4.2. Побудова розпізнаючого алгоритму.
Лабораторна робота 4.2. Побудова розпізнаючого алгоритму.
Мета роботи.
Розробити розпізнавальний алгоритм для власних створених об’єктів на основі принципу розгортки та відповідних логічних предикатів узгоджених з даним типом ознак об’єктів в кожному класі.
Зміст роботи.
В основі поняття розпізнавального алгоритму, тобто алгоритму з допомогою якого здійснюється розпізнавання зображень об’єктів два базові принципи: принцип аналізу елементів зображення, в якості якого найчастіше виступає принцип розгортання або сканування елементів цього зображення в заданій послідовності та принцип порівняння або логічного аналізу у відповідності з яким порівнюють кожен елемент або групу елементів щодо їх подібності чи еквівалентності заданому еталону. Таким чином розпізнавальний алгоритм забезпечує планомірне відслідковування елементів зображення з одночасним їх логічним аналізом.
Суть
принципу сканування полягає в наступному.
Розглянемо деяке прямокутне бінарне
зображення розмірності
,
яке створюється в результаті сканування
деякого інформаційного поля, тобто
реалізується принцип розгортки. Нехай
– множина однотипних елементів –
пікселів, які можуть приймати один із
станів, що визначені підмножиною
,
.
Введемо множину
індексів таку, що
і будемо вважаємо, що між множинами
та
існує бієктивне відображення
,
тобто
існує
така
нумерація
,
що має місце відношення
,
тобто маємо відношення строгого
порядку. Тоді, організація пронумерованих
елементів
у
форму матриці
,
отримана в результаті реалізації
принципу розгортки відповідає відображенню
, (14)
причому
елементи
лежать на траєкторії, яка забезпечує
скрізь щільне їх впорядкування, відповідно
до елементів множини
.
В процесі впорядкованого розгортання
(перегляду або перебирання) одного
за одним елементів множини
у форму матриці
,
одинарний нижній індекс
замінюється на подвійний
,
де
,
– номер стрічки, а
,
– номер стовпчика. Зв’язок між
індексами
і індексами
та
має наступний вид
, (2)
де
оператор
визначає цілу частину частки в круглих
дужках. Траєкторія розгортання елементів
прямокутної матриці
складається
з двох впорядкованих синхронних,
узгоджених і незалежних переміщень:
вздовж і поперек стрічок.
Таким чином, при розгортанні області зображення елемент за елементом (піксел за пікселом) в межах локалізованої на ньому площі, здійснюється ідентифікація всіх точок цієї області у відповідності з визначеними задачами, умовами та критеріями, тобто аналізується колір, інтенсивність, сусідство кожного елемента в контексті даної задачі. Найпростішою ознакою будь-якого об’єкта, представленого на екрані монітору є характеристичні параметри довільної точки, що належить об’єкту розпізнання. Проте, використання в якості ознак тільки одного елементе є ефективним лише в окремих випадках, наприклад, якщо об’єкт відрізняється кольором. Переважно в описах, тобто робочих словниках використовують, як правило, конфігуративні ознаки, які є фрагментами форми розпізнаваних об’єктів, або ж в якості ознак використовують інваріанти, тобто параметри, які не змінюються при афінних чи інших перетвореннях. Такі параметри визначаються через характерні точки, які, в свою чергу, визначаються через цілісне зображення або його фрагменти.
Процедура розгортання заданої області або цілого зображення, яку часто назівають скануванням, є основною частиною перважної більшості розпізнавальних алгоритмів і легко може бути реалізована програмно з допомогою двох вкладених один в одного операторів циклів, наприклад
де внутрішній цикл переміщує апертуру аналізатора (тобто активну область аналізуючого пристрою, наприклад, для людського зорового аналізатора – ока це є точка фіксації зору (погляду) в яку скерована увага і відносно якої здійснюється аналіз баченого, в технічних системах це область зображення виділена оптичною сенсорною системою, в якій проводиться аналіз спеціалізованими пристроями (наприклад роботами), а при комп’ютерній обробці це матриця, з допомогою якої відображається виділена прямокутна область зображення, яка розглядається як математичний обєкт і аналізується математичними алгоритмами, оскільки кожен елемент матриці є відповідним значенням елемент (піксела) зображення у виділеній області).
Фактично алгоритм розгортки це алгоритм B, який практично є однаковим для різних розпізнавальних алгоритмів.
Для
комп’ютерного аналізу ознак, суть якого
зводиться до константації факту наявності
тої чи іншої ознаки, заданої словником
ознак конфігурації пікселів, найбільш
простим в цьому плані є представлення
ознаки конфігурацією, утвореною чотирьома
пікселами, розміщеними у формі квадратної
матриці
.
В бінарному випадку (монохромне зображення
з двома градаціями) матрицею
,
в залежності від розміщення в ній
“чорних” і “білих” пікселів можна
представити
ознак. У випадку, коли об’єкт розпізнавання
має лінійно прямокутну форму (синтезовані
зображення в попередній лабораторній
роботі), причому орієнтація об’єкта є
такою, що лінійні ділянки контура об’єкта
є паралельні осям координат області
сканування, в якості ознак можуть бути
вибрані вершини кутів.
Це значить, що такі об’єкти можуть бути описані послідовністю, порядок якої визначений процедурою розгортки, яка включає вісім видів ознак, вид яких зображено на рис. 2.
Рис.2. Розпізнавальні ознаки, описані предикатами.
Зображенні на рис. 2. темні піксели відповідають фону, а світлі об’єкту, хоча може бутти і навпаки. Як бачимо з цього рисунка ознаки 1, 2, 3, 4 відповідають зовнішнім кутам контура об’єкта і представлені лише пікселом вершини кута в оточенні трьох пікселів фону. Ознаки 5, 6, ,7, 8, утворені трьома пікселам, які належать об’єкту і тому представляють внутрішні кути об’єкта.
Для
розпізнавання об’єкта за цими ознаками
використовується логічний предикат.
Нагадаємо, що логічним предикатом
називається функція яка відображає
множину довільної природи (в даному
випадку характеристик піксела) в множину
або
(відсутність чи наявність ознаки). В
якості такого логічного предикату –
алгоритму С для розпізнавання синтезованих
об’єктів використовується низка
логічних умов наступного виду:
На рисунку 2. показано нумерацію пікселів так, як вони входять в логічний даний логічний предикат. Розпізнавання ознак в цього випадку є бінарною процедурою прийняття рішення: 1 – ознака є, 0 – ознака відсутня. Для візуального контролю роботи даного алгоритму виконучою рішення структурою є оператор CIRCLE(X, Y),R. Робота цього оператора полягає у виділенні розпізнаної ознаки круговою областю (колом), колір якого (за домовленістю) відповіцдає номеру ознаки, наприклад за нумерацією прийнятою на рис.2.
Хід роботи.
В даній роботі використано зображення створені в попередній лабораторній роботі.
1. Використовуючи будь-яку з алгоритмічних мов розробити і програмно реалізувати алгоритм розгортки зображення. Тобто алгоритм В. При цьому передбачити зміну розмірів і положення (на зображенні) області сканування, та напрямку сканування (наприклад: зліва – направо і зверху – вниз або навпаки). При демонстрації роботи цього алгоритму передбачити візуалізацію траєкторії розгортки, яку можна виключити при розпізнаванні, або ж виключити її вплив на розпізнавання, залишивши її зображення на екрані монітору.
2. Вивести на екран монітору клас розроблених бінарних об’єктів, так щоб вони не торкались один одного і добре сприймалися візуально і їх легко можна було б охопити областю сканування.
3. Побудувати логічний предикат і включити його в алгоритм розгортки у внутрішній цикл. Виключивши візуалізацію перевірити роботу роботу алгоритму. Якщо алгоритм працює нормально – тобто всі ознаки даного об’єкта обведені колами, переходять програмно чи “вручну” (зміна параметрів області в програмі) до наступного об’єкта.
4. В звіті описати алгоритм розгортки, показати схематично її траєкторію, дати фрагмент програми для її реалізації. Крім того, у звіті необхідно привести повністю опис логічного предикату. Чітко сформулювати висновки і рекомендації до побудови алгоритмів фіксації ознак, заданих уматричній формі.
Лабораторна робота 4.3.
розпізнаВАННЯ ЗОБРАЖЕНЬ ОБ’ЄКТІВ.
Мета роботи.
Розробити розпізнавальний алгоритм для ідентифікації зображень власних створених об’єктів на основі принципу розгортки та відповідних логічних предикатів узгоджених з даним типом ознак об’єктів в кожному класі.
Зміст роботи.
В основі поняття розпізнавального алгоритму, тобто алгоритму з допомогою якого здійснюється розпізнавання зображень об’єктів два базові принципи: принцип аналізу елементів зображення, в якості якого найчастіше виступає принцип розгортання або сканування елементів цього зображення (в обмеженій, охоплюючій дане зображення об’єкта області) в заданій послідовності та принцип порівняння або логічного аналізу у відповідності з яким порівнюють кожен елемент або групу елементів щодо їх подібності чи еквівалентності заданому еталону. Таким чином розпізнавальний алгоритм забезпечує планомірне відслідковування елементів зображення з одночасним їх логічним аналізом.
В даній лабораторній роботі з допомогою, отриманих в лабораторних роботах 1 і 2 даного розділу необхідно створити робочі словники ознак для кожного об’єкта даного класу. В якості процедури розпізнавання має бути використана процедура ідентифікації двох будь-яких об’єктів одного класу. Власне, сама процедура ідентифікації полягає у визначенні міри подібності між цими об’єктами з допомогою деякої метрики. З допомогою такого підходу можна здійснити поділ класу на підкласи. Для цього необхідно побудувати словники ознак індивідуально для кожного об’єкта. Якщо такі словники побудовані то процедура ідентифікації зведеться до визначення відстані між об’єктами.
Побудова словників ознак для кожного об’єкта може бути виконана в наступний спосіб. Використовуючи розпізнавальний алгоритм попередньої лабораторної роботи, не змінюючи напрямку траєкторії розгортки (має бути одна і таж траєкторія рохгортки для всіх об’єктів) сканують об’єкти, попередньо домовившись про їх стандартну орієнтацію. Практично, це вже було пророблено в попередній роботі. Далі необхідно модифікувати логічний предикатдля того щоб мати можливість зафіксувати послідовність ознак. Крім того, необхідно також кожній ознаці присвоїти ім’я, номер або деяке числове значення, для того щоб можна було їх якось розрізняти. Позначені в конкретний спосіб ознаки в процесі розгортки в послідовності їх виявлення можуть бути записані у файл. В результаті процедура їх ідентифікації і власне розпізнавання буде полягати у визначенні відстані між змісто файлів.
Модифікація логічного предикату полягає в томиу, що замість оператора СIRCLE (хоча він може і залишитись для контрою процедури) використовується оператор запису у файл, тобто
Крім запису у файл можна вивести на екран послідовність номерів ознак для кожного з об’єктів, забезпечивши роботу алгоритму так, щоб вивід результату розпізнавання ознак попереднього об’єкта не першкоджав розпізнаванню наступного.
Хід роботи.
1. Розташовуємо об’єкти в ряд в нижній частині екрану.
2. Налаштовуємо алгоритм, включивши його візуалізацію, визначаємо параметри області сканування для кожного з об’єктів, так щоб вона мінімально покривала об’єкт.
3. Модифікуємо логічний предикат так, щоб можна було і вивести інформацію про ознаки на екран монітру і записати послідовність ознак у окремий файл для кожного об’єкта.
4. Вибрати потрібну метрику для визначення відстані між об’єктами і розробити програмне забезпечення для визначення цієї відстані, зчитуючи дані про ознаки з відповідних файлів.
5. Побудувати матрицю відстаней для об’єктів
6. У звіті представити опис класу об’єктів, які підлягали розпізнаванню, дати опис і пояснення виду логічного предикату, зокрема тієї його частини, яка відповідає за візуалізацію онак. Обгрунтувати вибір метрики та привести опис і схему алгоритму ідентифікації об’єктів. Привести матрицю відстаней та пояснити і описати отримані результати. При захисті роботи продемострувати роботу розроблених алгоритмів. Чітко сформулювати висновки.
СПИСОК ЛІТЕРАТУРИ
Журавлев Ю.И., Гуревич И.Б. Методы и средства преобразования и обработки информации в задачах распознавания образов и анализа изображений // Параллельная обработка информации, т.5. – Киев: Наук. думка, 1984. – С. 218 – 318.
Кочевых В.И., Никонов В.К. Система зрительного анализа объектов роботизированного производчтва. – К.: Тэхника, 1990. – 128 с.
Горелик А.Л., Скрипкин В.А. Методы распознавания. – М.: Высш. Шк., 1989. – 232 с.
