Принцип роботи OCR-систем
Більшості програм оптичного розпізнавання символів (Optical Character Recognition - OCR)
доводиться працювати із зображеннями документів, отриманими через факс-модем або сканер. З точки зору дій над зображеннями, OCR-система повинна розбити сторінку на блоки, що являють собою текстовий зміст, графіку, таблиці та інші елементи. Найскладніший та трудомісткий процес розпізнання пов’язаний з текстом, оскільки при його ідентифікації потрібно враховувати особливості вирівнювання тексту , наявності декількох колонок та інші елементи форматування.
Власне процес розпізнавання зображення документа починається з виявлення тексту, що являє собою набір елементарних зв’язаних областей (букв), що мають приблизно однаковий розмір і розташовані на площині вздовж паралельних прямих.
Після розпізнавання текстового блока він розбивається на рядки. Це не така проста задача, оскільки на практиці неминуче має місце перекіс зображення сторінки. Навіть невеликий нахил приводить до того, що лівий край біжучого рядка опиняється нижче правого краю наступного рядка, особливо при маленькому міжрядковому інтервалі. В зв’язку з цим виникає задача, до якого з двох рядків віднести даний елементарний фрагмент зображення - зв’язану область. Зв’язана область - це не обов’язково буква. Наприклад, i та j складаються з двох елементарних фрагментів, крім цього, кожна буква може опинитись розірваною на декілька елементарних областей в результаті дефектів друку та сканування. Тобто, якщо десь між двома рядками опинилась окрема зв’язана область, це може бути відірвана частина букви верхнього рядка, або крапка над i, або частина букви нижнього рядка. Після розпізнавання рядків відбувається їх розбиття на слова. На перший погляд достатньо проаналізувати відстань між сусідніми символами (зв’язаними областями) в рядку, вибрати порогову величину, і якщо відстань між сусідніми символами перевищує це значення, рахувати, що в цьому місці є пробіл. Однак на практиці мають місце і такі помилки, як “злипання ” різних слів і розрив одного слова. Тому дуже часто відмовляються від єдиного порогового значення для всього рядка і проводиться обчислення локального порога по відношенню до декількох сусідніх символів.
І, нарешті, необхідно вирішити задачу розпізнавання символів. Вона ускладнюється тим, що в зв’язку з непродрукуванням символів та їх злипанням в слові неможливо знайти окремі символи без застосування різних способів розпізнавання.
Дата добавления: 2014-12-08; просмотров: 1361;