Комплекс розпізнавання письмового тексту

 

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

ВОЛИНСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ

ІМЕНІ ЛЕСІ УКРАЇНКИ

Кафедра прикладної математики











ДИПЛОМНА РОБОТА

КОМПЛЕКС РОЗПІЗНАВАННЯ ПИСЬМОВОГО ТЕКСТУ




Виконав

Бондарчук Віталій Петрович

Науковий керівник

Острей Сергій Вікторович






Луцьк 2010

Зміст


Вступ

Розділ 1. Теоретичні основи розпізнавання зображень

1.1 Сегментація, нормалізація і розпізнавання зображень

1.2 Алгоритми розпізнавання друкованого тексту

1.2.1 Шрифтові алгоритми розпізнавання друкованого тексту

1.2.2 Безшрифтові алгоритми розпізнавання друкованого тексту

1.3 Алгоритми розпізнавання рукодрукованих символів

1.4 Розпізнавання рукописних символів

1.5 Використання нейронних мереж як один із методів розпізнавання тексту

1.6 Огляд і характеристика існуючих комплексів розпізнавання письмового тексту

Розділ 2. Розробка комплексу оптичного розпізнавання символів

2.1 Постановка задачі та формування вимог до створення комплексу

2.2 Опис проекту та алгоритмів реалізації комплексу розпізнавання тексту

2.3 Засоби і середовище створення комплексу

2.4 Основні функціональні можливості та режими роботи комплексу розпізнавання письмового тексту

2.5 Організація тестування та налагодження комплексу розпізнавання письмового тексту

2.6 Рекомендації по впровадженню і використанню комплексу розпізнавання письмового тексту

Висновки

Список використаних джерел


Вступ


На стадії підготовки і обробки інформації, особливо при комп'ютеризації підприємства, виникає завдання введення великого об'єму текстової і графічної інформації в ПК. Основними пристроями для введення графічної інформації є: сканер, факс-модем і рідше - цифрова фотокамера.

Завдання розпізнавання текстової інформації при переведенні друкованого і рукописного тексту в машинні коди є одним з найважливіших завдань, що мають на меті автоматизацію документообігу. Разом з тим ця проблема є однією з найбільш складних і наукоємких в області автоматичного аналізу зображень. Навіть людина, що читає рукописний текст, робить в середньому 4% помилок. Що ж стосується систем розпізнавання друкованих документів, то тут складність полягає в тому, що у відповідальних завданнях, таких як, наприклад, автоматизація введення паспортно-візової інформації, необхідно забезпечити високу надійність розпізнавання (більше 98-99%) навіть при поганій якості друку.

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

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

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

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

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

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

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

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

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

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

Для досягнення даної мети були поставлені такі завдання:

·розглянути методи сегментація, нормалізація і розпізнавання зображень;

·ознайомитися з шрифтовими та безшрифтовими алгоритмами розпізнавання друкованого тексту;

·ознайомитися з методами і проблемами розпізнавання рукописного тексту;

·ознайомитись з використання нейронних мереж як одним із методів розпізнавання тексту;

·характеристика існуючих комплексів розпізнавання письмового тексту;

·опис проекту та алгоритмів реалізації комплексу розпізнавання тексту;

·визначення функціональних можливостей та основних режимів роботи комплексу розпізнавання письмового тексту;

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

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

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

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


Розділ 1. Теоретичні основи розпізнавання зображень


.1 Сегментація, нормалізація і розпізнавання зображень


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

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

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

·Зображення пред'являються на складному фоні.

·Зображення еталону і вхідні зображення відрізняються положенням в полі зору.

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

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

·Еталони і зображення можуть відрізнятись геометричними перетвореннями.

Для вирішення завдання в цілому і на окремих її етапах застосовуються різні методи сегментації, нормалізації і розпізнавання. [1,52]

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


Рис. 1.1. Основні процедури і методи розпізнавання зображень

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

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

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

Всі методи досить прийнятні з погляду обчислювальних витрат, проте, для кожного з них характерна неоднозначність розмітки точок в реальних ситуаціях із-за необхідності застосування евристик (вибір порогів збігу яскравості, вибір цифрових масок і так далі). Заслуговує уваги у зв'язку з цим запропонований метод багатозначної розмітки, заснований на комбінації різних прийомів для зниження невизначеності. Важливе практичне значення мають ті, що допускають паралельну обробку алгоритми прискорення процесу розмітки на основі логічного аналізу сусідніх елементів [3].

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

Після сегментації виникають шуми у вигляді як розрізнених змін ізольованих елементів зображення, так і у вигляді спотворень деяких зв'язних областей. Не зупиняючись детально на методах боротьби з подібними шумами, відзначимо лише, що на практиці найбільшого поширення набули цифрові фільтри - маски і нелінійні фільтри типу медіанних. При цьому у разі сегментації шляхом виділення меж використання усереднюючих фільтрів - масок неможливе, оскільки межі при цьому не виділяються, а розмиваються. Для підкреслення контурів застосовуються спеціальні оператори інтегрального типу. [1, 65]

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

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

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

Кореляційні методи знайшли широке застосування при виявленні і розпізнаванні зображень в системах навігації, стеження, промислових роботах. При повністю заданому еталоні багатокрокова кореляція шляхом сканування вхідного поля зору є по суті повним перебором в просторі сигналів. Тому цю процедуру можна вважати базовою, потенційно найбільш шумостійкою, хоча і самою трудомісткою. Решта методів спрямована на скорочення обчислювальних витрат при спробі забезпечення наперед заданої надійності розпізнавання, габаритно-вагових характеристик обчислювача і вартості витрат на створення програмних і технічних засобів. [2, 32]

Ознакові і синтаксичні методи - найбільш розроблені в теорії розпізнавання образів. Вони засновані як на статистичних, так і детермінованих підходах. Головну трудність в ознакових методах складає вибір ознак. При цьому виходять з природних правил:

1)ознаки зображень одного класу можуть розрізнятися лише трохи (за рахунок впливу перешкод);

2)признаки зображень різних класів повинні істотно розрізнятися;

3)набор ознак повинен бути мінімально можливим, оскільки від їх кількості залежить і надійність, і складність обробки.

Хоча ознакові методи і не володіють такими перешкодозахисними як чисто кореляційні методи, проте, завдяки меншим трудовитратам, їх застосування корисне на першому етапі, коли вирішується завдання про нееквівалентність. При цьому частина вхідних зображень, ознаки яких не відповідають жодному з еталонів, відкидаються відразу.[2, 40]

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

Суть нормалізації полягає в автоматичному обчисленні невідомих параметрів перетворень, яким піддані вхідні зображення, і подальшому приведенні їх до еталонного вигляду. Процедура перетворень проводиться за допомогою операторів нормалізації (нормалізаторів), а обчислення параметрів виконується функціоналами, що діють на безлічі зображень. Існують паралельні і послідовні, параметричні і стежачі нормалізатори, які знайшли ефективне застосування для базових перетворень: , поворотів, розтягувань, косих зрушень і деяких їх комбінацій. Залишається відкритим питання про пошук універсальних і надійних нормалізаторів для складних груп перетворень - аффінних і проектних.[1, 68]


1.2 Алгоритми розпізнавання друкованого тексту


Кожен друкований текст має первинну властивість - шрифти, якими він надрукований. Виходячи з цього, існують два класи алгоритмів розпізнавання друкованих символів: шрифтовий та безшрифтовий. [4, 24]


1.2.1 Шрифтові алгоритми розпізнавання друкованого тексту

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

Недоліки зазначеного підходу:

vалгоритм повинен заздалегідь знати шрифт, що йому представляють для розпізнавання, тобто він повинен зберігати в базі різні характеристики цього шрифту;

vякість розпізнавання тексту, надрукованого довільним шрифтом, буде прямо пропорційна кореляції характеристик цього шрифту зі шрифтами, наявними в базі програми. [4, 29]

Ці фактори обмежують універсальність таких алгоритмів.

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

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

З іншого боку, у шрифтового підходу є перевага, завдяки якій його активно використовують й, очевидно, будуть використовувати в майбутньому. А саме, маючи детальну апріорну інформацію про символи, можна побудувати досить точні й надійні алгоритми розпізнавання. Взагалі, при побудові шрифтового алгоритму розпізнавання, на відміну від безшрифтового, надійність розпізнавання символу є інтуїтивно ясною й математично вираженою величиною. Ця величина визначається як відстань у якому-небудь метричному просторі від еталонного символу, пред'явленого програмі в процесі навчання, до символу, що програма намагається розпізнати. [4, 30]


1.2.2 Безшрифтові алгоритми розпізнавання друкованого тексту

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

Переваги цього підходу тісно пов'язані з його недоліками. Основними перевагами є:

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

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

vзручність у процесі використання програми. У випадку, якщо програма побудована на шрифтонезалежних алгоритмах, користувач не зобов'язаний знати що-небудь про сторінку, яку він хоче ввести в комп'ютерну пам'ять і повідомляти програму про ці знання. Також спрощується інтерфейс користувача програми за рахунок відсутності набору опцій і діалогів, що обслуговують навчання й керування базою характеристик. У цьому випадку процес розпізнавання можна представляти користувачеві як чорний ящик (при цьому користувач повністю не має змоги керувати, або якимось чином модифікувати хід процесу розпізнавання). У підсумку це приводить до розширення кола потенційних користувачів за рахунок включення в нього людей, що наділені мінімальною комп'ютерною грамотністю. [4, 35]


.3 Алгоритми розпізнавання рукодрукованих символів


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

Перший метод який ми розглянемо використовує для розпізнавання топологічний опис зображень, які можна вважати плоскими графами. При цьому в окремих задачах (автоматичне читання тексту і ін.) всі можливі зображення, які складають той або інший клас, можна представити як результат гомеоморфних перетворень деякого еталонного зображення. Задача розпізнавання в цьому випадку може бути зведена до встановлення гомеоморфності пред'явленого зображення з одним з еталонних. Її можна виявити за допомогою топологічних інваріантів - таких властивостей зображення, які не змінюються при його гомеоморфних перетвореннях. Інваріантом, що дозволяє дати чисельний опис зображень, є, наприклад, індекс точки, що визначається кількістю ліній, що сходяться в ній. Відповідний опис отримують обходом в певному порядку контурів зображення з одночасною фіксацією індексів точок. Встановлення гомеоморфності - власне розпізнавання - зводиться до порівняння описів пред'явленого зображення і еталонних зображень класів. Основна перевага топологічного опису - його нечутливість до сильних деформацій зображення. Навчання топологічному коду полягає у веденні набору еталонних описів. [10, 287]

Іншим структурним методом є алгоритм подієвого розпізнавання. Подієвий метод спирається на топологічну структуру об'єкту, що складається з ліній і не змінюється при малих деформаціях образу. Лінії, огрублені на деякій сітці, визначають події. Подієве представлення є не тільки формальним набором ознак, але і адекватним топологічним описом. Навчання методу зводиться до складання списку еталонів на достатньо великій послідовності образів. Достоїнствами методу здібність до відмов і висока швидкодія. [11, 288]

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

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

Розпізнаваний символ піддається процедурі скелетизації (стоншенню). Існують різноманітні методи отримання скелетів символів, що відрізняються один від одного. Розглянемо метод, запропонований Щепіним Е.В. Цей метод не відноситься до групи популярних в даний час паралельних алгоритмів скелетизації, є послідовним, але його і не передбачалося використовувати на машинах з паралельною архітектурою. В той же час даний метод володіє багатьма перевагами. Так, цей метод повністю зберігає 8-и зв'язність початкового зображення. Це дозволяє ефективно використовувати табличні дані, тому алгоритм працює з великою швидкодією - більше 1000 символів в секунду на процесорі Intel Celeron 366. Крім того, цей метод дає скелетне уявлення товщиною в один піксел, що виключає необхідність подальшої дообработки скелета. Також даний метод дозволяє зберігати всі особливості початкової картинки, що буває корисно при аналізі тонких випадків розпізнавання. [11, 13]

Спочатку відбувається розділення початкового образу символу на компоненти зв'язності, для чого може бути використане лінійне представлення, сформоване для подієвого методу. У кожній компоненті для кожного зовнішнього і кожного внутрішнього контура знаходяться початкові ліві верхні точки. Далі крок за кроком видаляється один шар точок. Для чергової точки контура розглядається конфігурація восьми сусідніх точок. Точка видаляється, якщо вона не є кінцевою, (тобто не лежить на початковому або кінцевому інтервалі прямої або поворотної лінії) і якщо після її видалення вісім її сусідів як і раніше утворюватимуть зв'язну множину. Відзначимо, що зв'язність може розумітися по-різному (8-и зв'язність, 4-х зв'язність), тому можна легко отримувати різні види скелетних представлень. Після аналізу точки і її сусідів і можливого видалення точки здійснюється перехід до наступної точки контура так, щоб залишитися на межі зображення.

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


Рис 1.2. Скелетізація образу, що складається з 1-го зовнішнього і 2-х внутрішніх контурів


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

Отримання скелетного представлення символу - це не кінець, це зображення використовується потім для виділення характеристик символу. Головне завдання скелетного представлення символу - надати можливість для отримання ряду характеристик початкового зображення. [11, 15]

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

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

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

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

Для зовнішнього контура знаходиться його тип або топологічний код. Для цього контур записується у вигляді послідовного набору номерів особливих точок, відповідних обходу за годинниковою стрілкою. Потім за допомогою перенумерації особливих точок і зміни початку контура, робиться спроба ототожнення контура з одним з основних типів. Статистичний аналіз на навчальній послідовності, що складається з рукодрукованих образів заголовних українських букв від "А" до "Я" і цифр від "0" до "9", показав, що контурів, які мають типи відмінні від основних, в сумі складали менше 1%. [11, 16]

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

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

·нормовані координати особливої точки (вершини графа);

·довжина ребра до наступної вершини у відсотках від довжини всього графа;

·нормоване направлення з даної точки на наступну особливу точку;

·нормований напрям входу в точку, виходу з точки;

·кривизна дуги, точніше "ліва" і "права" кривизна дуги, що сполучає особливу точку з наступною вершиною (кривизна зліва і справа). Кривизна обчислюється як відношеннямаксимальної відстані від точок дуги до прямою, що сполучає вершини, до довжини відрізка, що сполучає ті ж вершини. [11, 18]


Рис. 1.3. Приклади скелетних ознак


На малюнку 2 умовно показані деякі з топологічних ознак. Граф має 4 особливі точки - a0, a1, a2, a3. При обході графа по маршруту a0 ==> a1 ==> a2... у вершині a1 умовно показані наступні ознаки: вектор r1 - напрям входу в точку, вектор r2 - направлення виходу з точки, вектор r3 - глобальний напрям на наступну особливу точку. Двонаправлений вектор h показує величину "лівого" відхилення дуги (a1,a2) від прямій; "праве" відхилення рівне нулю

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

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

Навчання методу полягає в побудові дерев розпізнавання для кожної з визначених заздалегідь (уручну або автоматично) топологічних кодів.

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

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

·склеїти точки скелета, що знаходяться на мінімальній відстані одна від одної;

·відкинути найкоротшу лінію (дугу графа); зайві короткі дуги (лінії) нерідко виникають при рукописному написанні;

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

·видалити внутрішній контур. Якщо один або декілька з внутрішніх контурів малі, не виключено, що вони з'явилися в результаті дефектів написання або сканування, а не як характерні елементи символу. [11, 20]

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

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

Характеристики методу розпізнавання по скелетних ознаках такі: точність - 95.6%, швидкодія - 1000 образов/сек. Також до достоїнств методу належить стійкість до деформацій типу розривши, вигин ліній, появи малих ліній. Стійкість забезпечується алгоритмом побудови представлення і дає методу перевагу в розпізнаванні рукодрукованих образів, яким властиві подібні деформації. [11, 23]

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

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


.4 Розпізнавання рукописних символів


Тема читання рукописних текстів серйозно стала обговорюватися на рубежі 50-х і 60-х років одночасно з публікаціями по розпізнаванню образів. Першими великими проектами були обробка поштової кореспонденції, перепис населення, анкетування. Для реалізації процесу обробки застосовувалися дорогі апаратні засоби - оптичні читаючі пристрої. Поступово їх стали поєднувати з керуючими машинами, і в кінцевому рахунку, система автоматичного читання перетворилася в об'єднання сканера та одного чи декількох ПК. Сфера застосування технології розширилася, збільшилася гнучкість, упала вартість, в результаті чого отримали розвиток роботи і меншого масштабу, орієнтовані на корпоративні цілі.

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

Розрізняють два види технології розпізнавання рукопису: традиційний напрямок читання паперових документів, що називають «автономним» (off-line), і більш пізніший - «оперативний» (on-line), у якому як інструмент використовуються перо і спеціальний екран, сприйнятливі до руху пера і фіксуючі його траєкторію. Off-line розпізнавання у свою чергу поділяється на кілька розділів, для кожного з який також існують окремі технології. Усього таких розділів три: розпізнавання рукописного тексту, рукодрукованого, просто друкованого. Задача розпізнавання рукописного тексту найбільш складна з цих трьох, і існуючі на сьогодні технології в цій області можуть застосовуватись тільки для рішення задач, обмежених твердими рамками, таких як, наприклад, розпізнавання чеків. Проблема, як і у випадку з розпізнаванням об'єктів, полягає в тому, що кількість можливих варіантів написання того чи іншого символу або їхніх сполучень практично нескінченно. Тому класифікувати їх не просто складно, а дуже складно.

Надійність розпізнавання дуже сильно залежить від якості зображень символів, що визначається формою символів або стилем написання і способом виконання. Гарний стиль написання означає, що знак за формою легко впізнати, він не містить зайвих, але всі необхідні елементи присутні. Реально вимоги до якості символів цілком не виконуються, тому прямі помилки і конфліктні ситуації усуваються шляхом логічних і словникових перевірок і втручання операторів. [3, 54]

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

vоцінки ефективності систем розпізнавання символів;

vоцінки оптимального розподілу процедури розпізнавання на апаратну і програмну частини;

vпідвищення їх інваріантності до масштабних і афінних перетворень;

vсегментації рукописного тексту на окремі символи;

vзадача виділення інформативних ознак нестандартних символів;

vрозробки ефективних методів класифікації графічних зображень символів.


.5 Використання нейронних мереж як один із методів розпізнавання тексту


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

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

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

Одним із широко використовуваних методів підвищення точності розпізнавання є одночасне використання декількох різних розпізнавальних модулів і наступне об'єднання отриманих результатів (наприклад, шляхом голосування). При цьому дуже важливо, щоб алгоритми, використовувані цими модулями, були як можна більше незалежні. Це може досягатися як за рахунок використання розпізнавальних модулів, що використовують принципово різні алгоритми розпізнавання, так і спеціальним підбором навчальних даних. [7]

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

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

На різних етапах навчання можливе використання різних оптимізуючих факторів:

. Крок зміни коефіцієнтів мережі.

. Використання регуляризації мережі.

. Історія навчання мережі.

. Використання додаткового шуму й перекручувань символів.

. Момент зупинки навчання. Бажано уникати як недостатнього навчання мережі, так і перенавчання.

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

Алгоритм може бути вдосконалений шляхом пошуку більш адекватного подання структурних ознак розпізнаваних символів. Використання більшої навчальної бази даних і збільшення пам'яті нейронної мережі також може дати деяке поліпшення якості розпізнавання. Проектована система має працювати у режимі, близькому до реального часу, а отже розроблюваний алгоритм має бути досить швидким і, в той же час, мати достатню точність розпізнання. [3, 13]


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


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

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

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

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

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

Почнемо огляд з лідера в цій області FineReader. Це програмний продукт фірми ABBYY Software, раніше розроблявся фірмою Bit Software. Восьма версія програми (8.0) знає величезну кількість форматів для збереження, включаючи PDF і має можливість прямого розпізнавання з PDF-файлів. Нова технологія Intelligent Background Filtering (інтелектуальна фільтрація фону) дозволяє відсіяти інформацію про текстуру документа і фоновий шум зображення: іноді для виділення тексту в документі використовується сірий або кольоровий фон. Людині це не заважає читати, але звичайні алгоритми розпізнавання тексту відчувають серйозні труднощі при роботі з буквами, розташованими поверх такого фону. Програма FineReader уміє визначати зони, що містять подібний текст, відокремлюючи текст від фону документа, знаходячи точки, розмір яких менше певної величини, і видаляючи їх. При цьому контури букв зберігаються, так що точки фону, що близько розташовані до цих контурів, не вносять перешкод, здатних погіршити якість розпізнавання тексту. [5]

ABBYY FormReader ще одна програма для розпізнавання тексту від ABBYY, заснована на ABBYY FineReader Engine. Ця програма призначена для розпізнавання і обробки форм, які можуть бути заповнені вручну. Виробники стверджують, що програма ABBYY FormReader може обробляти форми з фіксованою схемою так само добре, як і форми, структура яких може мінятися. Для розпізнавання була застосована нова технологія ABBYY FlexiForm technology.

OCR CuneiForm один з головних конкурентів FineReader як на російському, так і на світовому ринку. Виробником є російський розробник програмного забезпечення Cognitive Technologies. За словами виробників, OCR CuneiForm вигідно відрізняється рівнем розпізнавання, особливо текстів низької якості; зручним інтерфейсом з наявністю вбудованих помічників в роботі; вбудованим текстовим редактором, що не поступається по своїй функціональності популярним текстовим процесорам, і багатьма іншими можливостями.

OCR CuneiForm здатна розпізнавати будь-які поліграфічні і машинописні гарнітури всіх зображень і шрифтів, за винятком декоративних і рукописних. Також програма здатна розпізнавати таблиці різної структури, у тому числі і без ліній і меж; редагувати і зберігати результати в поширених табличних форматах. Істотно полегшує роботу і можливість прямого експорту результатів в MS Word і MS Excel

Також програма забезпечена можливостями масового введення можливістю пакетного сканування, включаючи цілодобове, сканування з віддалених комп'ютерів локальної мережі і організації розподіленого паралельного сканування в локальній мережі. [8]

Readiris 7 професійна програма розпізнавання тексту. За словами виробників (I.R.I.S.), дана OCR відрізняється від аналогів високою точністю перетворення звичайних друкарських документів, таких як листи, факси, журнальні статті, газетні вирізки, в об'єкти, доступні для редагування (включаючи файли PDF). Основними достоїнствами програми є: можливість більш менш точного розпізнавання картинок, стиснутих по максимуму методом JPEG, підтримка цифрових камер і автовизначення орієнтації сторінки. Підтримка до 92 мов (включаючи російський).[9]

OmniPage 11 продукт компанії ScanSoft. Обмежена версія цієї програми (OmniPage11 Limited Edition, OmniPage Lite) зазвичай поставляється в комплекті з новими сканерами (на території Європи і США). Розробники стверджують, що їх програма практично з 100% точністю розпізнає друкарські документи, відновлюючи їх форматування, включаючи стовпці, таблиці, перенесення (зокрема перенесення частин слів), заголовки, назви розділів, підписи, номери сторінок, виноски, параграфи, нумеровані списки, графіку і картинки. Є можливість збереження у формати Microsoft Office, PDF і в 20 інших форматів, розпізнавання з файлів PDF, редагування прямо у форматі PDF. Система штучного інтелекту дозволяє автоматично виявляти і виправляти помилки після першого виправлення вручну. Новий спеціально розроблений модуль Despeckle дозволяє розпізнавати документи з погіршеною якістю (факси, копії, копії копій). Перевагами програми є можливість розпізнавання кольорового тексту і можливість коректування голосом.


НазваЛіцензіяОпераційні системиПриміткиONLINEOCR.ruКомерційнаOnlineOnline OCR сервіс дозволяє розпізнати багатомовний текст з відсканованого документа або фотографії. Конвертує результат в редаговані формати (PDF, DOC, EXCEL, TXT, HTML)img2txt.ruКомерційнаOnlineOnline OCR сервіс дозволяє розпізнати багатомовний текст з відсканованого документа або фотографії. Конвертує результат в редаговані формати (RTF, TXT, HTML)ABBYY FineReaderКомерційнаWindows; Linux, Mac OSДля роботи з різними мовами потрібна підтримка відповідної мови.OmniPageКомерційнаWindows, Mac OSВиробництво Nuance CommunicationsReadirisКомерційнаWindows, Mac OSВиробництво бельгійської I.r.i.s. Group. Містить регіональні пакети для розпізнання азіатських мов і мов середнього сходу.Persian ReaderКомерційнаWindowsСпециальзірується на перській мові (фарсі).Kirtas Technologies Arabic OCRКомерційнаWindowsМоже розпізнавати арабські і англійські символи на одній сторінці.CuneiFormBSDWindows (с GUI), Linux, Mac OS, FreeBSD (CLI)Промислова, багатомовна система, уміє зберігати форматування тексту і розпізнає заплутані таблиці довільної структуриBrainwareКомерційнаWindowsІмпортування даних з документів і їх обробка; наприклад рахунки, сповіщення, накладні і платежкиHOCRGPLLinuxРозпізнавання текстів на івритіReadSoftКомерційнаWindowsСканування, розпізнавання і класифікація ділових паперів наприклад договорів, рахунків і платіжних доручень.SILVERCODERS OCR ServerКомерційнаLinuxСерверна багатомовна система, має високу якість розпізнавання, може зберігати форматування тексту і розпізнає заплутані таблиці довільної структуриSmartScoreКомерційнаWindows, Mac OSДля розпізнавання нотного записуTesseractApacheWindows, Mac OS X, Linux, OS/2Розробляється компанією Google

Розділ 2. Розробка комплексу оптичного розпізнавання символів


.1 Постановка задачі та формування вимог до створення комплексу


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

Робота з OCR-системами, як правило, не повинна викликати особливих утруднень. Більшість таких систем мають простий автоматичний режим скануй і розпізнавай (Scan&read). Водночас система повинна вміти вручну готувати зображення до розпізнавання (видаляти шуми, виділяти області з текстом і т.д.).

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

В розробленому мною комплексі реалізовано більшість перерахованих вимог до OCR-систем.


2.2 Опис проекту та алгоритмів реалізації комплексу розпізнавання тексту


Програмний продукт Perceive складається з двох модулів: модуля Main.pas якому відповідає форма Perceive і в якому описані процедури монохроматизації, інвертації та розпізнавання зображення; та модуля MultiTWAIN.pas, який відповідає за процес сканування.

Відкриття зображення відбувається процедурами OpenButtonClick та OpenEditChange, після чого воно переноситься в елемент Image. Перед виконанням будь-яких дій над зображення, воно переводиться до монохромного вигляду, за це відповідає процедура Mono. Принцип дії даної процедури полягає в наступному: якщо середня яскравість трьох кольорів точки (червоний, зеленій, синій) перевищує деякий заданий поріг, то точка набуває білого кольору, якщо ж не перевищує - чорного.

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

Процедура InvertButtonClick, що визивається натисненням кнопки «Інвертувати», відповідає за інвертацію кольорів зображення.

І нарешті сама основна процедура, яка і виконує власне розпізнавання тексту - PerceiveButtonClick. Процедура містить в собі ряд інших процедурі функцій, зокрема процедури TopPP, BottomPP, LeftP, RightP, TopP, BottomP. Ці процедури відповідають за виділення рядка символів з тексту та одного символу з вже виділеного рядка. Далі отримане нормалізоване зображення символу порівнюється з набором еталонних символів. Процедура аналізую відсоток співпадань нормалізованого символа з еталонним і виводить відповідний символ в поле Memo. Цикл продовжується доки не буде розпізнаний останній символ останнього рядка.

Процедури SaveButtonClick і SaveEditChange відповідають за зберігання результату розпізнавання в текстовий або табличний файл.

В програмі також реалізована можливість перенесення розпізнаного тексту в різноманітні редактори. Ця можливість реалізована в процедурах MicrosoftWord1Click, NotepadClick, MicrosoftExcel1Click.


.3 Засоби і середовище створення комплексу


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

В якості апаратної бази при розробці додатку використовувався персональний компютер на основі процесору Pentium 4 3.0 ГГц, 1 ГБ.


.4 Основні функціональні можливості та режими роботи комплексу розпізнавання письмового тексту


Програма запускається викликом файлу «Perceive.exe», після чого перед користувачем зявляється головна форма (Рис 2.1). На головній формі користувачу надається можливість визначати свої дії за допомогою кнопок.

Наступним кроком є імпортування зображення в програму. Це можна зробити двома способами: відкрити готове зображення з диску (кнопка «Відкрити») (рис 2.2), або внести зображення з сканера (кнопка «Сканувати») (рис 2.3.).


Рис 2.1. Головна форма


Рис 2.2. Відкриття зображення з диска


Рис. 2.3. Внесення зображення з сканера


Відкриту картинку можна масштабувати, вибираючи потрібний масштаб з випадаючого списку в лівому нижньому кутку області «Зображення» (рис 2.4).


Рис 2.4. Масштабування зображення


Наступні кроки є підготовчими до розпізнавання. В отриманому зображені можна інвертувати кольори, а також очистити зображення від шумів відповідно натиснувши кнопки «Інвертувати» і «Очистити». Результати даних перетворень будуть відображатися в області «Зображення».

Щоб розпізнати внесене в програму і підготовлене зображення користувачу необхідно натиснути кнопку «Розпізнати». Після закінчення процесу розпізнавання результат (текст) буде відображатися в правій частині вікна програми, в області «Текст» (рис 2.5).


Рис 2.5. Розпізнаний текст


На наступному етапі отриманій текст можна зберегти в файл, причому є можливість зберігання в декількох текстових форматах (txt, doc, rtf) і табличному (xls). (рис 2.6) Також отриманий текст можна одразу перенести в необхідний редактор: Microsoft Word, Microsoft Excel чи Блокнот. (Рис 2.7)


Рис 2.6. Зберігання тексту в файл


Рис 2.7. Перенесення тексту в редактор


2.5 Організація тестування та налагодження комплексу розпізнавання письмового тексту


На етапі тестування програмного продукту мною використовувалися різноманітні контрольні приклади, різні кольорові схеми символів. Також під час тестування використовувались зашумлені зображення, тексти з різноманітною величиною шрифтів (рис 2.8 - 2.)


Рис 2.8. Звичайний текст


Рис 2.9. Зашумлений текст


Рис 2.9. Різнокольоровий текст


Провівши тестування я отримав такі результати: середня точність розпізнавання тексту - 85%, швидкість розпізнавання - 10 символів в секунду.


2.6 Рекомендації по впровадженню і використанню комплексу розпізнавання письмового тексту


Даний програмний продукт дозволяє розпізнавати цифри та літери українського алфавіту. Програма не потребує інсталяції. Для початку роботи з програмою достатньо запустити файл «Perceive.exe». Для того щоб завантажити потрібний файл в програму потрібно натиснути кнопку «Відкрити» або «Сканувати». Після відкриття файлу зображення зявляється на панелі «Зображення». Далі користувачу потрібно проаналізувати яскравості фону і символу: якщо символ є яскравішим ніж фон, то потрібно інвертувати кольори зображення натиснувши кнопку «Інвертувати».

При наявності шуму на зображенні, останнє можна очистити натисканням на кнопку «Очистити».

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

Після виконання процедури розпізнання, на панелі «Текст» зявиться розпізнаний текст, який, в подальшому, можна зберегти(кнопка «Зберегти») або перенести в один з декількох можливих текстових редакторів для подальшого редагування.

Для завершення роботи з програмою потрібно натиснути кнопку «Вихід».


Висновки


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

У даній дипломній роботі була розглянута тематика розбору тексту. В результаті виконання дипломної роботи мною був створений комплекс розпізнавання тексту. Крім того набув навичок роботи з професійним програмним забезпеченням даного виду, закріпив і поглибив теоретичні і практичні знання в галузі програмування.

розпізнавання письмовий текст символ

Список використаних джерел


1.Путятин Е.П., Аверин С.И. Обработка изображений в робототехнике. М: Машиностроение, 1990. 320 с.

2.Гиренко А.В., Ляшенко В.В., Машталир В.П., Путятин Е.П. Методы корреляционного обнаружения объектов. Харьков: АО БизнесИнформ, 1996. 112 с.

.А.В. Мисюрёв. Использование искусственных нейронных сетей для распознавания рукопечатных символов. В сб. "Интеллектуальные технологии ввода и обработки информации", М.: Эдиториал УРСС, 1998, 142 c.

.Арлазаров В.Л., Славин О.А. Алгоритмы распознавания и технологии ввода текстов в ЭВМ. Информационные технологии и вычислительные системы 1996, No 1., 146 c.

5.ABBYY FineReader - Википедия [Цит. 2010, 12 квітня]. - Доступний з <http://ru.wikipedia.org/wiki/ABBYY_FineReader>.

6.Online OCR - Онлайн сервис распознавания текста - Что такое Online OCR? [Цит. 2010, 12 квітня]. - Доступний з <http://www.onlineocr.ru/support/SupportMain.aspx>.

.Штучні нейронні мережі [Цит. 2010, 12 квітня]. - Доступний з <http://www.victoria.lviv.ua/html/neural_nets/zmist.htm>.

8.CuneiForm - Вікіпедія [Цит. 2010, 12 квітня]]. - Доступний з <http://uk.wikipedia.org/wiki/CuneiForm >.

.Readiris Pro 11 Retail Multi - Readiris Pro, Офис, распознавание текста - CWER.ru [Цит. 2010, 12 квітня]. - Доступний з <http://www.cwer.ru/readiris_pro_corporate_edition_v_11_0_retail_multi>.

.Славин О.А., Корольков Г.В., Болотин П.В. Методы распознавания грубых объектов. В сб. "Развитие безбумажных технологий в организациях", 1999 р 311 с.

.Е.В. Щепин, Г.М. Непомнящий. К топологическому подходу в анализе изображений. Геометрия, топология и приложения (Межвузовский сборник научных трудов). Москва, Мин. высшего и средн. спец. образ. РСФСР, Московский институт приборостроения, 1990 г., 315 c.


МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ ВОЛИНСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ ІМЕНІ ЛЕСІ УКРАЇНКИ Кафедра прикладної математики

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ