1   2   3   4
Ім'я файлу: 2020_M_KITS_Illyashenko_SA.pdf
Розширення: pdf
Розмір: 1716кб.
Дата: 17.08.2022
скачати

Міністерство освіти і науки України
Харківський національний університет радіоелектроніки
Факультет комп’ютерної інженерії та управління
Кафедра комп’ютерних інтелектуальних технологій та систем
)
АТЕСТАЦ ІЙН А РО БОТА
Поя с нюв аль н а з ап и ск а
рівень вищої освіти другий (магістерський)
Нейромережеве розпізнавання текста на зображеннях
Виконав: студент
II курсу, групи
КІТм-19-1
Ілляшенко С.А.
Спеціальність
123 – Комп’ютерна інженерія
(код і повна назва спеціальності)
Тип програми
Освітньо-професійна
Освітня програма
Комп’ютерні інтелектуальні технології
(повна назва освітньої програми)
Керівник: проф. Безсонов О.О.
(посада, прізвище, ініціали)
Допускається до захисту
Зав. кафедри КІТС
Руденко О.Г.
(підпис)
(прізвище, ініціали)
2020 р.

Харківський національний університет радіоелектроніки
ЗАТВЕРДЖУЮ:
Зав. кафедри
(підпис)
“”
20 р.
ЗАВДАННЯ
НА АТЕСТАЦІЙНУ РОБОТУ студентові
Ілляшенку Святославу Анатолійовичу
(прізвище, ім’я, по батькові)
1. Тема роботи Нейромережеве розпізнавання тексту на зображеннях затверджена наказом по університету від
“ 11 ” листопада 2020 р. № 1582 Ст
2. Термін подання студентом роботи до екзаменаційної комісії
10 грудня 2020 р.
3. Вхідні дані до роботи
Розпізнавання тексту на зображеннях
Мова програмування Delphi
4. Перелік питань, що потрібно опрацювати в роботі
Аналіз проблемної області і постановка задачі
Проектування та розробка алгоритму розпізнавання зображень
Програмна реалізація модуля для розпізнавання тексту на зображеннях
Тестування
Висновки
Факультет комп’ютерної інженерії та управління
Кафедра електронних обчислювальних машин
Рівень вищої освіти другий (магістерський)
Спеціальність (напрям)
123 – Комп’ютерна інженерія
(код і назва)
Освітня програма
Комп'ютерні інтелектуальні технології
(повна назва)

5. Перелік графічного матеріалу із зазначенням креслеників, схем, плакатів, комп’ютерних
ілюстрацій (слайдів) Слайдів 10
КАЛЕНДАРНИЙ ПЛАН

Назва етапів роботи
Термін виконання етапів роботи
Примітка
1 Огляд стану проблеми та постановка задачі
11.11 – 13.11 2 Аналіз літератури за напрямком
13.11 – 20.11 3 Існуючі способи вирішення проблеми
21.11 – 23.11 4 Розробка нейромережевого алгоритму
24.11 – 26.11 5 Програмна реалізація
26.11 – 30.12 6 Оформлення пояснювальної записки
01.12 – 07.12 7 Оформлення графічної частини
08.12 – 10.12
Дата видачі завдання 11 листопада 2020 р.
Студент
(підпис)
Керівник роботи проф.Бессонов О.О.

РЕФЕРАТ
Пояснювальна записка атестаційної роботи: LXX с., XXVII рис., III табл., XX дод., IX джерел.
РОЗПІЗНАВАННЯ ЗОБРАЖЕНЬ, АНАЛІЗ ЗОБРАЖЕНЬ, МАШИННЕ
НАВЧАННЯ,
Метою атестаційної роботи є нейромережеве розпізнавання тексту на зображеннях.
У ході виконання атестаційної роботи запропоновано програмний комплекс з використанням нейронних мереж, що значно покращує якість та швидкість функції розпізнавання тексту з відсканованих документів.
Розроблено програмний продукт з використанням мови програмування
Delphi версії 7 фірми Enterprise (Borland), яка надає найбільш широкі можливості для програмування додатків ОС Windows.

ABSTRACT
Explanatory note of attestation work: XX pages, XXVII figures, III tables,
XX appendices, IX sources.
IMAGE
RECOGNITION,
IMAGE
PROCESSING,
MACHINE
LEARNING
The major goal of this thesis is recognition of text on images using neural networks.
In order to do this, was proposed software package using neural networks, which significantly improves the quality and speed of the text recognition function from scanned documents.
A software product has been released from the list of programs Delphi version 7 from Enterprise (Borland), as we have the most wide range of possibilities for software additions to Windows.

ЗМІСТ
ПЕРЕЛІК УМОВНИХ ПОЗНАЧЕНЬ, СИМВОЛІВ, ОДИНИЦЬ,
СКОРОЧЕНЬ І ТЕРМІНІВ ................................................................................ 12
ВСТУП ............................................................................................................... 13 1
ОБГРУНТУВАННЯ ДОЦІЛЬНОСТІ РОЗРОБКИ СИСТЕМИ
РОЗПІЗНАВАННЯ ТЕКСТУ ............................................................................. 16 1.1 Суть технічної проблеми ......................................................................... 16 1.2 Існуючі способи вирішення проблеми ..................................................... 18 1.2.1 Розпізнавання по шаблонах ................................................................ 18 1.2.2 Структурний підхід ............................................................................. 18 1.2.3 Контекстне розпізнавання ................................................................... 19 1.2.4 Нейронні мережі в системі розпізнавання ......................................... 19 1.2.5 Біологічний прототип .......................................................................... 20 1.2.6 Штучний нейрон .................................................................................. 21 1.2.7 Одношарові штучні нейронні мережі ................................................. 26 1.2.8 Багатошарові штучні нейронні мережі............................................... 27 1.2.9 Нейронні мережі Хопфілда і Хеммінга .............................................. 29 2 РОЗРОБКА ІНТЕЛЕКТУАЛЬНОЇ СИСТЕМИ РОСПІЗНАВАННЯ
ЗОБРАЖЕНЬ ІЗ ЗАСТОСУВАННЯМ НЕЙРОННИХ МЕРЕЖ ...................... 35 2.1 Проектування програмного модуля розпізнавання зображень із застосуванням нейронних мереж .................................................................. 35 2.1.1 Розробка алгоритму функціонування мережі Хеммінга ................... 36 2.1.2 Розробка алгоритму навчання штучної нейроної мережі ................. 38 2.1.3 Розробка алгоритму порівняння зображень з використанням відстані Хеммінга ......................................................................................... 40 3 ПРОГРАМНА РЕАЛІЗАЦІЯ .......................................................................... 44 3.1 Програмна реалізація модуля для розпізнавання зображень ................. 44 3.1.1 Обґрунтування вибору мови програмування ..................................... 44

3.1.2 Розробка програмного продукту......................................................... 45 4 ТЕСТУВАННЯ ................................................................................................ 49 4.1 Тестування приклад роботи програми та аналіз результатів ................. 49
ВИСНОВКИ ....................................................................................................... 61
ПЕРЕЛІК ДЖЕРЕЛ ПОСИЛАННЯ .................................................................. 62
ДОДАТОК А Графічний матеріал атестаційної роботи .................................. 63

12
ПЕРЕЛІК УМОВНИХ ПОЗНАЧЕНЬ, СИМВОЛІВ, ОДИНИЦЬ,
СКОРОЧЕНЬ І ТЕРМІНІВ
ПК – персональний комп’ютер
НМ – нейронна мережа
ОС – операційна система
ПЗ – програмне забезпечення
ЗНМ – згорткова нейронна мережа
БНМ – багатошарова нейронна мережа
CNN – Convolutional Neural Network – згорткова нейронна мережа

13
ВСТУП
Обчислювальні системи існують вже не один десяток років. Метою їх створення була можливість замінити людину, зробити за нього трудомістку роботу, що вимагає складних обчислень.
Одне з таких завдань полягає в тому, як навчити комп'ютер розпізнавати образи (зокрема, який алгоритм необхідно створити, щоб комп'ютер міг сприймати зображення текстів).
Розпізнавання текстів - дуже складне завдання з теоретичної і практичної точок зору. Людина, наприклад, залучає для цього весь комплекс знань і досвіду. Він визначає текст з сукупності сигналів органів почуттів, виділяє кожен символ, виділяє характерні ознаки символів і на підставі свого досвіду приходить до висновку про значення символу і всього тексту в цілому.
Комп'ютер помиляється в процесі розпізнавання набагато частіше людини. Сьогодні не існує абсолютно точного методу визначення тексту і символу по їх зображенню. Чимало розроблених комерційних проектів використовують свої запатентовані методи і не можуть похвалитися
ідеальним рішенням завдання.
У багатьох випадках хороше рішення дає комплексний підхід до задачі.
Сама задача розпізнавання тексту поділяється на підзавдання: фільтрація зображення від шуму, виділення зображень символів з зображення тексту, виділення ознак символів і порівняння цих ознак із збереженими зразками.
Кожна задача містить багато варіантів рішень, з яких лише деякі є більш- менш оптимальними.
Можливість розпізнавання спирається на схожість однотипних об'єктів.
Незважаючи на те, що всі предмети і ситуації унікальні в строгому сенсі, між деякими з них завжди можна знайти подібності з того чи іншою ознакою.
Звідси виникає поняття класифікації - розбиття всієї множини об'єктів на

14 непересічні підмножини - класи, елементи яких мають деякі схожі властивості, що відрізняють їх від елементів інших класів. І, таким чином, завданням розпізнавання є віднесення розглянутих об'єктів або явищ за їх опису до потрібних класам.
Прикладами сфер застосування розпізнавання можуть служити системи розпізнавання тексту, машинний зір, розпізнавання мови, відбитків пальців та інше. Незважаючи на те, що деякі з цих завдань вирішуються людиною на підсвідомому рівні з великою швидкістю, до теперішнього часу ще не створено комп'ютерних програм, вирішальних їх у настільки ж загальному вигляді.
Суть НМ полягає в тому, що мережа складається з елементів, котрі називаються формальними нейронами (formal neuron). Кожен нейрон приймає набір сигналів, що надходять на його входи від одної групи таких же нейронів, обробляє сигнали з врахуванням попередніх сигналів і адаптації до них на основі процедур навчання і передає результати обробки другій групі нейронів. Зв'язки між нейронами кодуються вагами, що відображають важливість їх інформації для визначення загального результату. Основний принцип настроювання нейронної мережі полягає в застосуванні процедур оптимізації та адаптації на основі певних критеріїв, здатності до перенавчання. Однією з переваг НМ є те, що всі елементи можуть функціонувати паралельно, тим самим істотно підвищуючи ефективність розв’язання задач, особливо при обробці зображень в реальному часі.
Системи розпізнавання об'єктів зображення, що засновані на нейронних мережах, використовують ієрархічну архітектуру.
Мета дослідження – розробка програмного комплексу, основною функціональністю якого є розпізнаваннямвання тексту з відсканованих документів та застосування нейронних мережі Хемінга, що значно покращує якість та швидкість функції розпізнавання.
Об’єкт дослідження – процеси розпізнавання тексту з від сканованих документів.

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

16 1. ТЕХНІКО – ЕКОНОМІЧНЕ ОБҐРУНТУВАННЯ ДОЦІЛЬНОСТІ
РОЗРОБКИ СИСТЕМИ РОЗПІЗНАВАННЯ ТЕКСТУ
1.1 Суть технічної проблеми
Розпізнавання тексту є одним з напрямків розпізнавання зображень.
Розпізнавання зображень являє собою дуже складну задачу в теоретичному і практичному сенсах, незважаючи на те, що з нею досить легко справляються чимало живих організмів і людина. Вкрай складно створити штучну систему
і її технічно реалізувати для того, щоб ефективно виконувати цей процес. У даному випадку, під розпізнаванням розуміється співвіднесення зображення об'єкта, його образу, набору ознак самому об'єкту.
Прикладами і додатками систем розпізнавання образів можуть бути як розпізнавання тексту загалом, так і окремих його символів, розпізнавання мови, людських осіб, біометричних даних людини, штрих-кодів продуктів, номерів машин і т.д.
Прикладами розпізнавання тексту є: оцифровка зображень тексту
(скановані книги, статті, журнали) для наступної роботи з його цифровим аналогом, обробка анкетних бланків, розпізнавання номерів машин і написів на об'єктах і т.д. Завдання розпізнавання тексту залишається актуальною на сьогоднішній день, так як не існує стовідсоткової універсальної системи з розпізнавання тексту.Система розпізнавання тексту передбачає наявність на вході зображення з текстом (у форматі даних графічного файлу). На виході системи повинен сформуватися текст, виділений з цього зображення.
Розпізнавання тексту включає в себе наступні підзадачі і підпроцеси:
- що поступає на вхід системи зображення повинно бути очищено від шуму і приведено до виду, що дозволяє ефективно виділяти символи і розпізнавати їх;

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

18 1.2 Існуючі способи вирішення проблеми.
1.2.1 Розпізнавання по шаблонах
Програмне забезпечення OCR (Optical Character Recognition оптичне розпізнавання символів) зазвичай працює з великим растровим зображенням сторінки з сканера. При цьому більшість систем має шаблони, створені для різних накреслень. Після кількох розпізнаних слів, програмне забезпечення визначає використовуваний шрифт і шукає відповідні пари тільки для цього шрифту. У деяких випадках програмне забезпечення використовує чисельні значення частин символу (пропорцій), щоб визначити новий шрифт. Це може поліпшити ефективність розпізнавання [4].
Прикладом, програма розпізнавання TypeReader використовує машинно- залежні алгоритми на основі шаблонного підходу.
Даний підхід вимагає створення шаблону для кожного шрифту.
Програма TypeReader використовує 2100 різних варіантів накреслень символів.
1.2.2 Структурний підхід
Дуже великий попит у всьому світі має система OCR-Caere Omni Page
Professional використовує алгоритм, заснований на знаходженні загальних специфічних особливостей символів.
Ця система містить 100 різних алгоритмів для ідентифікації 100 різних символів: верхнього та нижнього регістру від «A» до «Z», запису чисел і символів пунктуації. Кожен з цих алгоритмів шукає «особливості» накреслень типу «островів», «півостровів», точок, прямих відбитків і дуг.
Експертні системи також розглядають горизонтальні і вертикальні проекції відбитків букви і звертають увагу на основні особливості у створених кривих, підсумовуючи в них число темних пікселів. На жаль, нечіткий текст може

19 стати специфічною проблемойдля цих структурних алгоритмів, так як відсутній піксель може розбивати довгий штрих або криву, а додаткове пляма бруду може закривати петлю.
1.2.3 Контекстне розпізнавання
У програмне забезпечення системи OCR часто включається словники для допомоги алгоритмам розпізнавання. Словники надають довідки в багатьох випадках, але швидко відмовляють, коли, наприклад, мають справу з власними іменами, які не перебувають у словнику. Цей ефект особливо помітний у російській програмі FineReader, який частіше, ніж у середньому по всім символам, помиляється в словах, які відсутній в його словнику.
1.2.4 Нейронні мережі в системі розпізнавання
Нейронні мережі - це структура пов'язаних елементів, на яких задані функції перетворення сигналу, а також коефіцієнти, які можуть бути налаштовані на певний характер роботи. Частина елементів структури виділені як вхідні: на них надходять сигнали ззовні, частина-вихідні: вони формують результуючі сигнали. Сигнал, який проходить через нейронну мережу, перетворюється відповідно до формул на елементах мережі, і на виході формується відповідь.
Нейронна мережа може служити в системі розпізнавання тексту в якості класифікатора. Цей класифікатор можна навчати, налаштовуючи коефіцієнти на елементах мережі, і, таким чином, прагнути до ідеального результату розпізнавання.
Нейронні мережі з успіхом можуть застосовуватися в системах розпізнавання тексту, але існує велика кількість недоліків, які перешкоджають їх широкому застосуванню. Для побудови мережі, що забезпечує розпізнавання кожного символу тексту, необхідно побудувати

20 досить велику мережу елементів, що призводить до великих витрат пам'яті.
Ще сильніше витрачаються ресурси системи в процесі розпізнавання, так як функції на елементах мережі працюють з числами з плаваючою крапкою.
Крім цього нейронні мережі необхідно навчати на всі випадки, що, однак, не гарантує точного результату. І, нарешті, робота нейронної мережі з розпізнавання тексту багато в чому залежить від конфігурації мережі функцій, заданих в елементах, що вимагає великих зусиль для побудови ефективно працюючої мережі.
1.2.5 Біологічний прототип
Розвиток штучних нейронних мереж надихається біологією. Тобто, розглядаючи мережеві конфігурації і алгоритми, дослідники застосовують терміни, запозичені з принципів організації мозкової діяльності. Але на цьому аналогія закінчується. Наші знання про роботу мозку настільки обмежені, що мало б знайшлося точно доведених закономірностей для тих, хто побажав би керуватися ними. Тому розробникам мереж доводиться виходити за межі сучасних біологічних знань у пошуках структур, здатних виконувати корисні функції. У багатьох випадках це призводить до необхідності відмови від біологічної правдоподібності, мозок стає просто метафорою, і створюються мережі, неможливі в живій матерії або вимагають неправдоподібно великих допущень про анатомію і функціонування мозку.
Незважаючи на те, що зв'язок з біологією слабка і часто несуттєва, штучні нейронні мережі продовжують порівнювати з мозком. Їх функціонування часто має зовнішню схожість з людським пізнанням, тому важко уникнути цієї аналогії. На жаль, такі порівняння неплодотворні і створюють невиправдані очікування, що неминуче ведуть до розчарування.
Нервова система людини, побудована з елементів, званих нейронами, має приголомшливу складність. Близько нейронів беруть участь в приблизно передавальних зв'язках, що мають довжину метр і більше.

21
Кожен нейрон володіє багатьма властивостями, спільними з іншими органами тіла, але йому притаманні абсолютно унікальні здібності: приймати, обробляти і передавати електрохімічні сигнали по нервових шляхах, які утворюють комунікаційну систему мозку.
На рисунку 1.1 показана структура пари типових біологічних нейронів.
Дендрити йдуть від тіла нервової клітини до інших нейронів, де вони приймають сигнали в точках з'єднання, званих синапсами. Прийняті синапсом вхідні сигнали передаються до тіла нейрона. Тут вони підсумовуються, причому одні входи прагнуть порушити нейрон, інші - перешкодити його збудженню.
Рисунок 1.1 – Структура пари біологічних нейронів
Коли сумарне збудження в тілі нейрона перевищує деякий поріг, нейрон збуджується, посилаючи по аксону сигнал іншим нейронам. У цієї основної функціональної схеми багато ускладнень і винятків, тим не менше, більшість штучних нейронних мереж моделюють лише ці прості властивості.
1.2.6 Штучний нейрон
Штучний нейрон імітує в першому наближенні властивості біологічного нейрона. На вхід штучного нейрона надходить деяка безліч

22 сигналів, кожен з яких є виходом іншого нейрона. Кожен вхід множиться на відповідну вагу, аналогічний синаптичної силі, і всі твори сумуються, визначаючи рівень активації нейрона.
Рисунок 1.2 – Математична модель штучного нейрона
На рисунку 1.2 представлена модель, що реалізує цю ідею. Безліч вхідних сигналів. Ці вхідні сигнали, в сукупності позначаються вектором X, відповідають сигналам, що приходять в синапси біологічного нейрона.
Кожен сигнал множиться на відповідну вагу, і надходить на сумуючий блок, позначений Σ. Кожна вага відповідає "силі" однієї біологічної синаптичної зв'язку. (Безліч ваг в сукупності позначається вектором W.) Сумуючий блок, що відповідає тілу біологічного елемента, складає зважені входи алгебраїчно, створюючи вихід, який ми будемо називати NET. У векторних позначеннях це може бути компактно записано таким чином:

  1   2   3   4

скачати

© Усі права захищені
написати до нас