RU2707320C1 - Method of recognizing a symbol on a banknote and a coprocessor for a computing system of a banknote processing device - Google Patents

Method of recognizing a symbol on a banknote and a coprocessor for a computing system of a banknote processing device Download PDF

Info

Publication number
RU2707320C1
RU2707320C1 RU2019119156A RU2019119156A RU2707320C1 RU 2707320 C1 RU2707320 C1 RU 2707320C1 RU 2019119156 A RU2019119156 A RU 2019119156A RU 2019119156 A RU2019119156 A RU 2019119156A RU 2707320 C1 RU2707320 C1 RU 2707320C1
Authority
RU
Russia
Prior art keywords
symbol
familiarity
image
line
pixels
Prior art date
Application number
RU2019119156A
Other languages
Russian (ru)
Inventor
Петр Валерьевич Минин
Дмитрий Геннадиевич Письменный
Сергей Викторович Камбалин
Original Assignee
Общество С Ограниченной Ответственностью "Конструкторское Бюро "Дорс" (Ооо "Кб "Дорс")
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество С Ограниченной Ответственностью "Конструкторское Бюро "Дорс" (Ооо "Кб "Дорс") filed Critical Общество С Ограниченной Ответственностью "Конструкторское Бюро "Дорс" (Ооо "Кб "Дорс")
Priority to RU2019119156A priority Critical patent/RU2707320C1/en
Application granted granted Critical
Publication of RU2707320C1 publication Critical patent/RU2707320C1/en

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07DHANDLING OF COINS OR VALUABLE PAPERS, e.g. TESTING, SORTING BY DENOMINATIONS, COUNTING, DISPENSING, CHANGING OR DEPOSITING
    • G07D7/00Testing specially adapted to determine the identity or genuineness of valuable papers or for segregating those which are unacceptable, e.g. banknotes that are alien to a currency
    • G07D7/20Testing patterns thereon
    • G07D7/2008Testing patterns thereon using pre-processing, e.g. de-blurring, averaging, normalisation or rotation
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07DHANDLING OF COINS OR VALUABLE PAPERS, e.g. TESTING, SORTING BY DENOMINATIONS, COUNTING, DISPENSING, CHANGING OR DEPOSITING
    • G07D7/00Testing specially adapted to determine the identity or genuineness of valuable papers or for segregating those which are unacceptable, e.g. banknotes that are alien to a currency
    • G07D7/20Testing patterns thereon
    • G07D7/202Testing patterns thereon using pattern matching
    • G07D7/206Matching template patterns

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Character Discrimination (AREA)

Abstract

FIELD: data processing.
SUBSTANCE: group of inventions relates to a method of recognizing symbols on banknotes and a coprocessor of a computer system of a banknote processing device, which enables to implement said method. In the method of character recognition, scanning a banknote to obtain a digital image consisting of pixels, for which membership in a certain class is determined, based on said class, the location of the symbol to be recognized is determined, character locate predefined shape and size matched with the symbol image, wherein binarization is carried out to extract pixels associated with the symbol. Coprocessor for the banknote processing device computing system comprises an input port for obtaining pixel values corresponding to the character locate, where said value defines either a pixel of a symbol, or a pixel of a space, a decision logic circuit configured to provide a set of numerical characteristics for each verification character locate and an output port for issuing sets of numerical characteristics corresponding to character locate string lines.
EFFECT: technical result consists in broader possibility of using method for recognizing characters of any type of font.
20 cl, 11 dwg

Description

Группа изобретений относится к способу распознавания символов на банкнотах и сопроцессору вычислительной системы устройства обработки банкнот, позволяющему реализовать данный способ.SUBSTANCE: group of inventions relates to a method of recognizing characters on banknotes and to a coprocessor of a computing system of a banknote processing device that allows implementing this method.

Банкнота представляет собой ценный документ, каждый экземпляр которого помечен уникальной строкой символов, которую принято называть серийным номером. Серийный номер, несмотря на свое название, может содержать не только цифры, но также и буквы в произвольной комбинации. В современной технологии обработки банкнот необходимо вести учет движения индивидуальных экземпляров банкнот по цепочкам денежного оборота. Для этого необходимо оборудование, которое может распознавать символы в серийном номере для их последующего использования в системах учета движения.A banknote is a valuable document, each copy of which is marked with a unique string of characters, which is usually called a serial number. The serial number, despite its name, can contain not only numbers, but also letters in any combination. In modern technology for processing banknotes, it is necessary to keep track of the movement of individual copies of banknotes along chains of money circulation. This requires equipment that can recognize characters in the serial number for their subsequent use in motion accounting systems.

Кроме учета движения, распознавание серийного номера позволяет проверить подлинность банкноты. С этой целью, распознанный серийный номер на банкноте сравнивают с базой данных известных серийных номеров фальшивых банкнот. Кроме того, для банкнот, в которых строка символов серийного номера напечатана на банкноте дважды, распознают в отдельности каждую из этих строк, затем сравнивают полученные результаты между собой, и при различии в распознанных символах, признают банкноту подозрительной. За счет такого сравнения двух строк серийного номера удается выявить неплатежеспособные банкноты, составленные из частей различных подлинных банкнот.In addition to accounting for movement, recognition of the serial number allows you to verify the authenticity of banknotes. To this end, the recognized serial number on the banknote is compared with a database of known serial numbers of counterfeit banknotes. In addition, for banknotes in which a string of characters of a serial number is printed on a banknote twice, each of these lines is individually recognized, then the results are compared with each other, and if the characters are different, the banknote is recognized as suspicious. Due to this comparison of two lines of the serial number, it is possible to identify insolvent banknotes made up of parts of various genuine banknotes.

Машинное распознавание символов известно с конца 1960-х годов и к настоящему моменту представляет собой зрелую область техники, в которой, в разнообразных комбинациях применяется множество различных способов распознавания, описанных как в научной, так и в патентной литературе (группы МПК G06K 9/46, G06K 9/48, G06K 9/50, G06K 9/52, G06K 9/62 и другие).Machine recognition of characters has been known since the late 1960s and to date is a mature field of technology in which, in various combinations, many different recognition methods are used, described both in the scientific and patent literature (IPC groups G06K 9/46, G06K 9/48, G06K 9/50, G06K 9/52, G06K 9/62 and others).

Распознавание символов применяется для получения текста, содержащегося в документе, в виде цифровой последовательности кодов символов. Как правило, на документе, подлежащем распознаванию, сначала выделяют отдельные знакоместа, а затем, по раздельности, распознают символы в знакоместах. Под знакоместом понимают участок документа или его изображения, имеющий форму параллелограмма или прямоугольника, который содержит одиночный символ. Положение знакоместа может быть заранее известно, либо же его определяют на основе характерных признаков. Например, если фон имеет белый цвет и символ имеет черный цвет, то границы знакоместа целиком попадают на белые пиксели, а во внутренней части знакоместа имеются черные пиксели.Character recognition is used to obtain text contained in a document as a digital sequence of character codes. As a rule, on a document to be recognized, individual familiarities are first distinguished, and then, separately, characters are recognized in familiarity. Familiarity is understood to mean a section of a document or its image in the form of a parallelogram or rectangle that contains a single character. The position of familiarity may be known in advance, or it may be determined on the basis of characteristic features. For example, if the background is white and the symbol is black, then the borders of familiarity fall entirely on white pixels, and there are black pixels in the interior of the familiarity.

Главной областью применения машинного распознавания символов является перевод в цифровую форму печатных изданий, а также документов, используемых в деловом и административном обороте. Это определило основные цели и технические достижения при совершенствовании распознавания символов.The main area of application of machine recognition of characters is the digitization of print media, as well as documents used in business and administrative circulation. This determined the main goals and technical achievements in improving character recognition.

Шрифтом в полиграфии принято называть набор символов определенного размера и рисунка. Графический рисунок символов, составляющих один шрифт, объединен художественным стилистическим единством. Шрифты могут отличаться друг от друга как рисунком, так и размером символов. Понятие шрифта необходимо отличать от близкого понятия гарнитуры шрифта, которая представляет собой набор символов, имеющих стилистическое единство начертания. Рисунок для одного и того же вида символа, например, для определенной буквы либо цифры, в различных шрифтах может отличаться множеством особенностей, таких как: наклон символа; соотношение ширины и высоты символа; толщина линий; постоянство либо изменение толщины линий; характер и расположение изгибов линий; наличие засечек на концах линий, и многие другие. В полиграфической практике применяются сотни различных гарнитур шрифтов, обладающих большим разнообразием рисунков.A font in printing is called a set of characters of a certain size and pattern. The graphic drawing of the characters that make up one font is united by artistic stylistic unity. Fonts can differ from each other in both pattern and character size. The concept of a font must be distinguished from the close concept of a typeface, which is a set of characters that have a stylistic unity of style. Drawing for the same type of symbol, for example, for a certain letter or number, in different fonts can differ in many features, such as: the inclination of the symbol; the ratio of the width and height of the character; line thickness; constancy or change in line thickness; the nature and location of the bends of the lines; the presence of serifs at the ends of the lines, and many others. In printing practice, hundreds of different typefaces with a wide variety of patterns are used.

Документы и печатные издания для распознавания обычно напечатаны заранее неизвестным шрифтом, либо множеством разных шрифтов. Поэтому, в современном уровне техники основное внимание уделено способам распознавания, работоспособность которых не зависит от рисунка и размера символа шрифта. Такие способы обладают высокой вычислительной сложностью, однако, к ним не предъявляются жесткие требования по быстродействию. Как правило, время распознавания в пределах нескольких секунд на страницу считается вполне допустимым. Кроме того, для реализации алгоритмов, применяемых в этих способах, обычно применяются высокопроизводительные процессоры рабочих станций или серверов с архитектурой IBM PC. Использование высокопроизводительных процессоров компенсирует повышенные вычислительные затраты на распознавание символа, независимое от шрифта.Recognition documents and prints are usually printed in advance with an unknown font, or in many different fonts. Therefore, in the current state of the art, the main attention is paid to recognition methods, the operability of which does not depend on the pattern and font symbol size. Such methods have high computational complexity, however, they are not subject to stringent performance requirements. As a rule, recognition time within a few seconds per page is considered quite acceptable. In addition, high-performance workstation or server processors with IBM PC architecture are typically used to implement the algorithms used in these methods. The use of high-performance processors compensates for the increased computational cost of character recognition, independent of the font.

Еще одной особенностью большинства современных способов распознавания является высокое качество цифрового изображения распознаваемого документа. Для его получения применяются сканеры достаточно высокого разрешения, от 300 точек на дюйм и выше. К быстродействию сканирования не предъявляются очень высокие требования, поэтому, скорости взаимного перемещения документа и элементов сканера оказываются небольшими. За счет этого в цифровом изображении практически отсутствуют динамические геометрические искажения сканирования. Далее, за исключением небольшого числа особых видов документов (исторические документы, древняя литература), распознаваемые документы имеют высокое качество печати. Как правило, они напечатаны черным цветом на белом фоне, а загрязнения бумаги и повреждения красочного слоя практически отсутствуют. При сканировании таких документов получается контрастное и целостное изображение каждого символа.Another feature of most modern recognition methods is the high quality digital image of a recognized document. To obtain it, scanners of sufficiently high resolution are used, from 300 dpi and higher. Very high requirements are not imposed on the scanning speed, therefore, the relative speeds of the mutual movement of the document and scanner elements turn out to be small. Due to this, in the digital image there are practically no dynamic geometric distortions of the scan. Further, with the exception of a small number of special types of documents (historical documents, ancient literature), recognized documents have high print quality. As a rule, they are printed in black on a white background, and paper pollution and damage to the paint layer are practically absent. When scanning such documents, a contrasting and complete image of each character is obtained.

Как правило, к точности распознавания отдельных символов на обычных документах и печатных изданиях не предъявляются очень высокие требования. Это связано с тем, что для коррекции ошибок в распознавании отдельных символов применяются алгоритмы, опирающиеся на набор слов и грамматические правила того языка, на котором выполнен документ. Ошибка в одном символе в слове исправляется, исходя из правильного написания слова и грамматического контекста всего предложения. Когда ошибки в документе совершенно недопустимы, результат автоматического распознавания дополнительно проверяет человек.As a rule, very high requirements are not imposed on the accuracy of recognition of individual characters on ordinary documents and print media. This is due to the fact that algorithms based on a set of words and grammatical rules of the language in which the document is executed are used to correct errors in the recognition of individual characters. A mistake in one character in a word is corrected based on the correct spelling of the word and the grammatical context of the whole sentence. When errors in the document are completely unacceptable, the result of automatic recognition is additionally checked by a person.

Распознавание серийных номеров банкнот представляет собой совершенно иную задачу. Рисунок и размер символов шрифта серийного номера всегда известны. Качество сканирования банкнот в машинах для обработки наличности значительно уступает качеству сканирования обычных документов, поскольку банкнота перемещается в машине на высокой скорости (до 10 километров в час), а на получение цифрового изображения, как правило, отводится менее 100 миллисекунд. Это приводит к невысокому разрешению сканирования, не более 200 точек на дюйм, а также к большим динамическим геометрическим искажениям из-за проскальзывания банкнот в банкнотопроводном тракте.Recognizing serial numbers of banknotes is a completely different task. The pattern and font size of the serial number font is always known. The quality of scanning banknotes in cash processing machines is significantly inferior to the quality of scanning ordinary documents, since the banknote moves in the machine at high speed (up to 10 kilometers per hour), and less than 100 milliseconds are usually allocated to receive a digital image. This leads to a low resolution of scanning, not more than 200 dpi, as well as to large dynamic geometric distortions due to slipping of banknotes in the banknote path.

Далее, банкноты постоянно находятся в обращении, что приводит к постепенному истиранию красочного слоя, покрыванию пятнами и общему загрязнению бумаги. В результате, контрастность и целостность изображения символа на банкнотах могут очень ощутимо снижаться. Ситуация также осложняется тем, что серийный номер далеко не всегда печатается на белом участке банкноты. Во многих случаях, он наносится на ранее запечатанную область, поэтому, даже на новых банкнотах, фон символа уже содержит дополнительное изображение, мешающее распознаванию.Further, banknotes are constantly in circulation, which leads to a gradual abrasion of the paint layer, staining and general pollution of the paper. As a result, the contrast and image integrity of the symbol on banknotes can be very noticeably reduced. The situation is also complicated by the fact that the serial number is not always printed on the white section of the banknote. In many cases, it is applied to a previously sealed area, therefore, even on new banknotes, the background of the symbol already contains an additional image that interferes with recognition.

За счет высокой скорости перемещения банкноты в машине, высокие требования предъявляются и к быстродействию распознавания серийного номера. Обычно, допустимым является время распознавания строки серийного номера в пределах нескольких миллисекунд. Это время примерно сопоставимо с временем распознавания слова той же длины в современных способах распознавания обычных документов, выполняемых на высокопроизводительных процессорах. Однако, применение высокопроизводительных процессоров в большинстве машин для обработки банкнот невозможно по экономическим причинам. Те же виды процессоров, которые экономически оправданы для применения в машинах для обработки банкнот, имеют в 10 и более раз низкую производительность, чем производительность процессора рабочей станции с архитектурой IBM PC.Due to the high speed of banknote movement in the machine, high demands are placed on the speed of recognition of the serial number. Typically, it can take a few milliseconds to recognize a serial number string. This time is approximately comparable with the time of recognition of a word of the same length in modern methods of recognition of ordinary documents executed on high-performance processors. However, the use of high-performance processors in most banknote processing machines is not possible for economic reasons. The same types of processors that are economically viable for use in banknote processing machines have 10 or more times lower performance than the processor performance of a workstation with an IBM PC architecture.

Вероятность ошибки в распознавании серийного номера банкноты должна быть весьма низкой. Более точно, совершенно недопустимо распознавание изображения одного символа как другого. Однако, более допустимым является вывод о нераспознанности такого символа. Это связано с особенностью обработки банкнот: банкнота с нераспознанным символом может быть далее отбракована для повторной обработки, в то время как неверно распознанный символ приведет не к отбраковке, но к скрытой ошибке в финансовом учете движения банкнот. Нужно отметить, что при распознавании обычных документов, когда возникает сомнение в распознавании конкретного символа, обычно стараются найти для него наиболее вероятный вариант значения, и лишь в крайнем случае помечают символ как нераспознанный. Так как серийный номер не является словом какого-либо языка и не входит в предложение, отсутствует возможность исправить ошибку распознавания символа на основе контекста и грамматики языка.The probability of an error in recognizing the serial number of a banknote should be very low. More precisely, the recognition of the image of one character as another is completely unacceptable. However, the conclusion about the unrecognition of such a symbol is more acceptable. This is due to the peculiarity of processing banknotes: a banknote with an unrecognized symbol can be further rejected for reprocessing, while an incorrectly recognized symbol will lead not to rejection, but to a hidden error in the financial accounting of the movement of banknotes. It should be noted that when recognizing ordinary documents, when there is doubt about the recognition of a particular character, they usually try to find the most likely value for it, and only in extreme cases mark the character as unrecognized. Since the serial number is not a word of any language and is not included in the sentence, there is no way to correct the character recognition error based on the context and grammar of the language.

Таким образом, отличие распознавания серийных номеров банкнот от распознавания обычных документов в чем-то облегчает, но в большинстве аспектов усложняет задачу. Задача распознавания серийных номеров облегчается из-за того, что заранее известны рисунок и размер символов шрифта. Однако, она усложняется из-за низкого качества изображения символа, высоких требований по безошибочности и быстродействию распознавания, низкого уровня вычислительной мощности процессора, которая доступна для реализации способа, а также невозможности контекстной и грамматической коррекции ошибок. На современном уровне техники, поиск оптимального решения этой задачи пока не завершен. Для ее решения применяются технические приемы, отличающиеся от используемых в распознавании обычных документов.Thus, the difference between recognizing serial numbers of banknotes and recognition of ordinary documents makes it somewhat easier, but in most aspects complicates the task. The task of recognizing serial numbers is facilitated by the fact that the pattern and size of the font characters are known in advance. However, it is complicated due to the low image quality of the symbol, high requirements for error-freeness and speed of recognition, low processor computing power that is available for implementing the method, and the impossibility of contextual and grammatical error correction. At the current level of technology, the search for the optimal solution to this problem has not yet been completed. To solve it, techniques are used that differ from those used in the recognition of ordinary documents.

Известна задача распознавания регистрационного номера автомобиля по его фотографии. Такая задача возникает при учете потока автомобилей в ходе регулирования дорожного движения. Распознавание регистрационного номера автомобиля имеет определенное сходство с распознаванием серийного номера банкноты. В обеих этих задачах распознается строка символов, не являющаяся словом языка, и к точности распознавания предъявляются высокие требования.The known task of recognizing the registration number of a vehicle from its photograph. This problem arises when taking into account the flow of cars during traffic regulation. Recognition of registration number of the car has a certain similarity with recognition of serial number of a banknote. In both of these tasks, a character string that is not a language word is recognized, and high demands are placed on recognition accuracy.

Также, в обеих задачах символы имеют известный рисунок и размер символов шрифта. Различия между задачами заключаются в требованиях быстродействия и в качестве изображения символа. Практическое быстродействие распознавания регистрационного номера при нынешнем уровне техники составляет одну секунду или несколько секунд, то есть более чем на два порядка хуже, чем требуется при распознавании серийных номеров банкнот. Изображение регистрационного номера автомобиля, используемое для распознавания, имеет существенно худшее качество, чем изображение серийного номера банкноты. Так как фотографирование автомобиля может производиться с разных расстояний и под разными ракурсами, то изображение регистрационного номера всегда имеет искажения масштаба и перспективные искажения, которые требуют обязательной коррекции перед распознаванием. На разборчивость символов влияют состояние атмосферы, загрязнение и повреждение таблички с номером и неточная фокусировка камеры, а также неравномерность внешнего освещения. Из-за этого, попытки сегментации изображения символа в регистрационном номере, то есть выделения пикселей, относящихся к символу, часто приводят к полной потере формы символа, даже при использовании современных алгоритмов бинаризации. Как следствие, дальнейшее распознавание оказывается невозможным. Для сравнения, сегментация символов серийного номера банкноты может привести к появлению незначительных разрывов контура символа или небольших шумовых ложных кластеров пикселей, не относящихся, на самом деле, к символу. Однако, эти нарушения не препятствуют распознаванию сегментированного символа.Also, in both tasks, characters have a known pattern and font character size. The differences between the tasks are performance requirements and the quality of the symbol image. The practical speed of recognition of registration numbers at the current level of technology is one second or several seconds, that is, more than two orders of magnitude worse than required for recognition of serial numbers of banknotes. The image of the vehicle registration number used for recognition has significantly worse quality than the image of the serial number of the banknote. Since photographing a car can be made from different distances and from different angles, the image of the registration number always has scale distortions and perspective distortions that require mandatory correction before recognition. The legibility of the characters is affected by the state of the atmosphere, pollution and damage to the number plate and inaccurate focusing of the camera, as well as uneven external lighting. Because of this, attempts to segment the image of a symbol in a registration number, that is, highlighting pixels related to a symbol, often lead to a complete loss of the shape of the symbol, even when using modern binarization algorithms. As a result, further recognition is not possible. For comparison, segmentation of characters of a serial number of a banknote can lead to the appearance of minor gaps in the outline of the symbol or small noise false clusters of pixels that are not, in fact, related to the symbol. However, these violations do not prevent recognition of a segmented character.

По указанной причине, в распознавании регистрационных номеров используются, главным образом, те методы, которые не требуют предварительного сегментирования. К ним относится вычисление двумерной корреляции с шаблонами всех символов в шрифте, метод гистограммы градиентов, а также сверточные нейронные сети. Эти методы хорошо известны специалистам в области распознавания изображений. Не вдаваясь в подробное техническое описание, отметим, что все они обладают высокой способностью к распознаванию сильно зашумленных изображений символов, но отличаются очень большими вычислительными затратами. Кроме того, возникает проблема предварительного обучения алгоритма распознавания на образцах. Для обучения распознаванию определенного символа шрифта требуется обработать множество образцов изображений этого символа, полученных в несколько отличающихся условиях. Это приводит к большим затратам времени и труда на подготовку и ввод образцов.For this reason, in the recognition of registration numbers are used mainly those methods that do not require preliminary segmentation. These include the calculation of two-dimensional correlation with patterns of all the characters in the font, the gradient histogram method, and convolutional neural networks. These methods are well known to those skilled in the art of image recognition. Without going into a detailed technical description, we note that all of them have a high ability to recognize highly noisy symbol images, but differ in very high computational costs. In addition, the problem of preliminary training of the recognition algorithm on the samples arises. To learn the recognition of a particular font character, it is necessary to process many samples of images of this character obtained in slightly different conditions. This leads to a large expenditure of time and labor for the preparation and introduction of samples.

Наилучшие результаты, среди остальных методов, при относительно небольших вычислительных затратах дают сверточные нейронные сети. Однако, они требуют обучения на очень большом количестве образцов, измеряемом сотнями тысяч. Корреляционные методы требуют наименьшего обучения, но отличаются самыми большими вычислительными затратами. Метод гистограммы градиентов дает достаточно высокое быстродействие и требует среднего количества образцов для обучения, но неточно работают при загрязнении или при резких перепадах в освещении регистрационного номера. Некоторое увеличение быстродействия всех трех перечисленных методов, в последнее время, стало достигаться за счет использования мощных специализированных сопроцессоров, ориентированных на ускорение и параллельное выполнение типовых операций распознавания.Convolutional neural networks give the best results, among other methods, with relatively small computational costs. However, they require training on a very large number of samples, measured in hundreds of thousands. Correlation methods require the least training, but differ in the largest computational costs. The method of a histogram of gradients gives a fairly high speed and requires an average number of samples for training, but it does not work accurately with contamination or with sudden changes in the registration number lighting. A slight increase in the speed of all three of these methods, in recent times, has been achieved through the use of powerful specialized coprocessors focused on acceleration and parallel execution of typical recognition operations.

При распознавании серийных номеров банкнот наибольшую применимость находит метод гистограммы градиентов с классификацией при помощи машины опорных векторов. Такой выбор связан с тем, что качество изображения серийного номера на банкноте, в целом, выше, чем качество изображения регистрационных номеров автомобиля. Подобный метод, например, используется в способе распознавания серийного номера банкноты, описанном в международной заявке WO 2017016240, опубл. 02.02.2017, МПК G07D 7/20. После извлечения признаков, для классификации применяется классификатор на основе машины опорных векторов, предварительно обученный по методу последовательной минимальной оптимизации (SMO). Некоторые символы, сходные по рисунку, такие как «В» и «8», при применении машины опорных векторов могут определяться с ошибкой. Для более точного различения этих символов, дополнительно проводится проверка при помощи корреляционного сравнения определенной зоны символа с шаблоном. Расположение зоны выбирается таким образом, чтобы в ней находилась та часть символа, которая в наибольшей степени отличает его от других похожих на него символов.When recognizing serial numbers of banknotes, the greatest applicability is found by the gradient histogram method with classification using the support vector machine. This choice is due to the fact that the image quality of the serial number on the banknote is generally higher than the image quality of the vehicle’s registration numbers. A similar method, for example, is used in the banknote serial number recognition method described in WO 2017016240, publ. 02.02.2017, IPC G07D 7/20. After the features are extracted, a classifier based on the support vector machine preliminarily trained by the method of sequential minimal optimization (SMO) is used for classification. Some symbols similar in pattern, such as “B” and “8”, may be detected with an error when using the support vector machine. To more accurately distinguish between these symbols, an additional check is carried out using a correlation comparison of a certain zone of the symbol with the template. The location of the zone is chosen so that it contains the part of the symbol that most distinguishes it from other symbols similar to it.

Метод гистограммы градиентов, хотя и является относительно быстродействующим по сравнению с корреляционными методами, все же требует достаточно высокой вычислительной мощности процессора или же применения специализированного сопроцессора. Для построения локальной гистограммы градиентов требуется 8 операций сравнения на каждый пиксель изображения, к чему далее прибавляются массивные матричные вычисления. В результате, распознавание серийных номеров оказывается затруднительным реализовать в простом оборудовании, предназначенном для массового применения. Изучая уровень техники, авторы заявленного изобретения пришли к выводу, что для широкого применения распознавания символа серийного номера банкнот критически важно обеспечить высокое быстродействие с использованием процессоров небольшой вычислительной мощности, при достижении устойчивости к искажениям изображения, характерным для обработки банкнот. Эта задача требует применения иных способов распознавания, менее затратных с точки зрения вычислительной сложности.The gradient histogram method, although it is relatively fast in comparison with correlation methods, still requires a sufficiently high computational power of the processor or the use of a specialized coprocessor. To construct a local histogram of gradients, 8 comparison operations for each pixel of the image are required, to which massive matrix calculations are added. As a result, serial number recognition is difficult to implement in simple equipment designed for mass use. Studying the prior art, the authors of the claimed invention came to the conclusion that for the widespread use of recognition of the symbol of the serial number of banknotes, it is critical to ensure high speed using processors of low processing power, while achieving resistance to image distortion characteristic of banknote processing. This task requires the use of other recognition methods that are less costly in terms of computational complexity.

В уровне техники известны способы, в которых повышение быстродействия достигается за счет упрощения вычисления признаков, которые далее используются для классификации. Один из таких способов описан в заявке CN 108320374, опубл. 24.07.2018, МПК G06K 9/62. В нем для характеризации банкноты применяется так называемый перцептивный хэш (perceptual hash, хэш зрительного восприятия). Перцептивный хэш - это двоичное число, обычно 64-битное, которое вычисляется для определенного изображения. Его можно использовать для сравнения двух изображений. Чем более сходными являются изображения, тем меньшим оказывается количество двоичных разрядов, в которых отличаются перцептивные хэши этих изображений. Количество отличающихся двоичных разрядов известно как расстояние Хэмминга. В упомянутой заявке, в ходе обучения находят перцептивные хэши для всех возможных видов символа. Для символа, подлежащего распознаванию, вычисляют перцептивный хэш и определяют расстояния Хэмминга от него до перцептивных хэшей всех возможных символов, полученных в ходе обучения. Этот набор расстояний используют как вектор признаков, подаваемый на предварительно обученный классификатор на основе машины опорных векторов. Преимуществом такого распознавания можно считать быстроту выполнения, так как в нем используется самый быстрый из известных алгоритмов перцептивного хэширования, так называемый усредняющий хэш (average hash). Классификация усилена за счет того, что классификатор принимает решение не только по степени схожести изображения с наиболее вероятным видом символа, но и по степени отличия от других видов символов. Учет степени отличия от других видов символов улучшает классификацию символов тем сильнее, чем больше различий между разными видами символов. Недостатки этого способа являются продолжениями его достоинств. Перцептивное хэширование, в особенности, работающее по усредняющему алгоритму, подчеркивает крупные элементы изображения и игнорирует малые. Поэтому, хэши сходных символов, таких, как цифры «8», «9» и «6», имеют очень малые различия, особенно, если шрифт имеет тонкое начертание, а зазоры между концом штриха и окружностью в цифрах «9» и «6» сделаны очень узкими. Из-за этого трудно различить такие символы, используя перцептивный хэш. Примером шрифта с тонким начертанием и малыми зазорами является шрифт серийного номера на российских рублях, выпущенных до 2017 года. Кроме того, учет степени различия с другими символами не позволяет улучшить классификацию сходных символов, так как расстояния Хэмминга от каждого из сходных символов до другого, сильно отличающегося символа оказывается почти одинаковыми. Поэтому, применимость данного способа ограничена шрифтами, специально оптимизированными под машинное распознавание.The prior art methods are known in which an increase in performance is achieved by simplifying the calculation of features, which are then used for classification. One of these methods is described in application CN 108320374, publ. 07.24.2018, IPC G06K 9/62. In it, to characterize a banknote, the so-called perceptual hash (hash of visual perception) is used. A perceptual hash is a binary number, usually 64-bit, that is computed for a particular image. It can be used to compare two images. The more similar the images are, the smaller is the number of binary bits in which the perceptual hashes of these images differ. The number of different binary bits is known as the Hamming distance. In the said application, during training, perceptual hashes are found for all possible types of symbol. For the character to be recognized, a perceptual hash is calculated and the Hamming distances from it to the perceptual hashes of all possible characters obtained during training are determined. This set of distances is used as a feature vector fed to a pre-trained classifier based on a reference vector machine. The speed of execution can be considered an advantage of this recognition, since it uses the fastest known perceptual hashing algorithm, the so-called average hash. The classification is strengthened due to the fact that the classifier makes a decision not only on the degree of similarity of the image with the most likely type of symbol, but also on the degree of difference from other types of symbols. Taking into account the degree of difference from other types of characters improves the classification of characters the stronger, the more differences between different types of characters. The disadvantages of this method are extensions of its advantages. Perceptual hashing, in particular, using the averaging algorithm, emphasizes large image elements and ignores small ones. Therefore, the hashes of similar characters, such as the numbers “8”, “9” and “6”, have very small differences, especially if the font has a thin face and the gaps between the end of the stroke and the circle in the numbers “9” and “6” "Made very narrow. Because of this, it is difficult to distinguish between such characters using a perceptual hash. An example of a font with a thin outline and small gaps is the font of the serial number in Russian rubles issued before 2017. In addition, taking into account the degree of difference with other characters does not improve the classification of similar characters, since the Hamming distance from each of the similar characters to another, very different character is almost the same. Therefore, the applicability of this method is limited to fonts specially optimized for machine recognition.

Нужно отметить, что общим недостатком способов, использующих машину опорных векторов для классификации, является частая выдача неправильного вида символа при ошибке распознавания. Как уже указывалось выше, по финансовым причинам, для серийного номера банкноты более правильно сообщить о невозможности распознавания символа, чем сообщить вид символа, который не соответствует действительности. Известен патент США US 4,180,800, опубл. 25.12.1979, МПК G06K 9/50, в котором описано устройство распознавания символов, основанное на построчном анализе цифрового изображения знакоместа. Оно отличается исключительной простотой формирования признаков. Строки знакоместа последовательно, одна за другой, анализируются, и содержимое каждой из них классифицируется по небольшому количеству возможных вариантов кодов, иначе называемых строчными признаками. Так, код С0 обозначает пустую строку, С1 - узкую метку в строке слева, С3 - узкую метку справа, С6 - широкую метку по центру и т.д. Тогда, стилизованная цифра «2», состоящая из отрезков, ориентированных друг к другу под прямым углом, при движении по строкам сверху вниз будет кодироваться как С0 (пустая строка сверху) С6 С6 (верхний горизонтальный штрих) С3 С3 С3 С3 (правый вертикальный штрих) С6 С6 (средний горизонтальный штрих) С1 С1 С1 С1 (левый вертикальный штрих) С6 С6 (нижний горизонтальный штрих) С0 (пустая строка снизу).It should be noted that a common drawback of methods that use the machine of support vectors for classification is the frequent output of the wrong type of character with a recognition error. As already mentioned above, for financial reasons, it is more correct to report the impossibility of recognizing a symbol for a serial number of a banknote than to report the type of symbol that does not correspond to reality. Known US patent US 4,180,800, publ. 12/25/1979, IPC G06K 9/50, which describes a character recognition device based on line-by-line analysis of a digital image of familiarity. It is distinguished by the exceptional simplicity of the formation of features. Familiarity strings are sequentially analyzed, one after another, and the contents of each of them are classified according to a small number of possible variants of codes, otherwise called lowercase characters. So, the code C0 stands for an empty line, C1 stands for a narrow mark in the line on the left, C3 stands for a narrow mark in the right, C6 stands for a wide mark in the center, etc. Then, the stylized number “2”, consisting of segments oriented at right angles to each other, when moving along lines from top to bottom will be encoded as C0 (empty line from above) C6 C6 (upper horizontal bar) C3 C3 C3 C3 (right vertical bar ) С6 С6 (middle horizontal stroke) С1 С1 С1 С1 (left vertical stroke) С6 С6 (lower horizontal stroke) С0 (empty line below).

В ходе анализа строк, коды последовательно подаются на конечный автомат, так что каждый код вызывает переход из одного состояния автомата в другое в соответствии с предварительно заданным графом. Работа автомата начинается с начального состояния и к моменту прохода по всем строкам знакоместа автомат переходит в одно из состояний, соответствующих возможному распознанному символу. Такое устройство хорошо приспособлено к распознаванию цифр, напечатанных специальным шрифтом, где каждая цифра имеет фиксированный размер и состоит из отрезков, ориентированных друг к другу под прямым углом. Подобные шрифты успешно используются для пометки и автоматической сортировки почтовых отправлений, начиная с 1970-х годов. Реализация устройства в виде логических схем кодера строк и конечного автомата обеспечивает высокое быстродействие. Некоторое усложнение графа переходов конечного автомата позволяет устройству успешно распознавать символы, имеющие умеренный наклон из-за неверной ориентации сканера по отношению к документу.During string analysis, codes are sequentially fed to the state machine, so that each code causes a transition from one state of the machine to another in accordance with a predefined graph. The operation of the machine starts from the initial state and by the time it passes through all the lines of familiarity, the machine goes into one of the states corresponding to a possible recognized character. Such a device is well adapted to recognize numbers printed in a special font, where each digit has a fixed size and consists of segments oriented to each other at right angles. Such fonts have been used successfully for marking and automatically sorting mailings since the 1970s. The implementation of the device in the form of logic circuits for the string encoder and the state machine provides high performance. Some complication of the transition state graph of the state machine allows the device to successfully recognize characters that have a moderate slope due to incorrect scanner orientation relative to the document.

Это устройство имеет два главных недостатка. Во-первых, оно адаптировано только к одному виду шрифта, который сильно отличается от традиционных типографских шрифтов. Адаптация к другому шрифту возможна только с заменой графа переходов, и новый шрифт также должен состоять только из отрезков, ориентированных под прямым углом.This device has two main disadvantages. Firstly, it is adapted to only one type of font, which is very different from traditional typographic fonts. Adaptation to another font is possible only with the replacement of the transition graph, and the new font should also consist only of segments oriented at right angles.

Во-вторых, устройство не обладает устойчивостью к дефектам изображения символа. Истирание части красочного слоя или пятно грязи вызывает неверную последовательность кодов, которая не позволяет конечному автомату прийти в нужное состояние, соответствующее реальному символу.Secondly, the device is not resistant to image defects of the symbol. Abrasion of a part of the paint layer or a stain of dirt causes an incorrect sequence of codes, which does not allow the state machine to come to the desired state corresponding to the real symbol.

Благодаря указанным недостаткам, область применения устройства ограничивается высококачественными документами, выполненными специально адаптированным шрифтом.Due to these shortcomings, the scope of the device is limited to high-quality documents made with a specially adapted font.

Патент US 4,180,800 был выбран в качестве прототипа заявленного изобретения. Технический результат состоит в расширении возможности применения способа к распознаванию символов шрифта, обладающего практически любыми особенностями рисунка.US patent 4,180,800 was selected as a prototype of the claimed invention. The technical result consists in expanding the possibility of applying the method to the recognition of characters in a font that has almost any pattern features.

Этот технический результат достигается за счет того, что в способе распознавания символа на банкноте, относящегося к известному шрифту,This technical result is achieved due to the fact that in the method for recognizing a character on a banknote relating to a known font,

сканируют банкноту с получением цифрового изображения, состоящего из пикселей, для которого определяют принадлежность к определенному классу, на основании указанного класса определяют место расположения символа, подлежащего распознаванию,scanning a banknote to obtain a digital image consisting of pixels for which membership in a particular class is determined, based on the specified class, the location of the character to be recognized is determined,

совмещают знакоместо заранее заданной формы и размера с изображением символа, подлежащего распознаванию, так чтобы пиксели, относящиеся к символу, находились в пределах границ знакоместа,combine familiarity of a predetermined shape and size with the image of the character to be recognized, so that the pixels related to the character are within the boundaries of familiarity,

при этом проводят бинаризацию для выделения пикселей, относящихся к символу, причем,while conducting binarization to highlight pixels related to the symbol, moreover,

для знакоместа заранее определен набор проверочных прямых линий, пересекающих это знакоместо,for familiarity, a set of test straight lines intersecting this familiarity is predefined,

и на каждой из проверочных прямых линий задана одномерная система координат,and on each of the test straight lines a one-dimensional coordinate system is set,

так что положение каждой проверочной прямой линии и начало системы координат на ней установлено заранее заданным образом относительно границ знакоместа,so that the position of each test straight line and the origin of the coordinate system on it is set in a predetermined manner relative to the boundaries of familiarity,

затем, на каждой проверочной прямой отмечают пиксели, по которым проходит эта прямая, указывая их различным образом для пикселей символа и для пробельных пикселей,then, on each test line, pixels are marked along which this line passes, indicating them in different ways for the pixels of the symbol and for whitespace pixels,

и сопоставляют каждой проверочной прямой набор числовых характеристик, включающий в себяand match each test direct set of numerical characteristics, including

длину интервала, охватывающего все указанные пиксели символа,the length of the interval covering all the specified pixels of the character,

количество интервалов указанных пикселей символа, в которых указанные пиксели символа расположены подряд друг за другом,the number of intervals of the specified pixels of the symbol, in which the specified pixels of the symbol are arranged in a row one after another,

координату центра тяжести указанных пикселей символа, выраженную в системе координат для данной проверочной прямой,the coordinate of the center of gravity of the specified pixels of the symbol, expressed in the coordinate system for this test line,

и суммарное число всех указанных пикселей символа,and the total number of all the specified pixels of the character,

после чего выполняют классификацию символа, подлежащего распознаванию, с использованием ранее полученных наборов числовых характеристик в качестве признаков.then perform the classification of the character to be recognized, using the previously obtained sets of numerical characteristics as features.

На знакоместе символа заранее определяют набор проверочных прямых. По пересечению этих прямых с изображением будут выбираться пиксели для последующей классификации символа. В общем случае, прямые могут быть ориентированы любым образом: вдоль строк изображения, вдоль его столбцов, или же под произвольным углом. В основе использования набора проверочных прямых для классификации лежит особенность символа как набора графических элементов. Символы алфавитов, созданных человеком, имеют только два уровня интенсивности. Один уровень, обычно черный, соответствует самому символу, а другой уровень, обычно белый, соответствует пробелу. Термины «черный» и «белый» используются здесь с определенной условностью, поскольку банкноты имеют многокрасочную печать, а сканирование идет с использованием определенных длин волн подсветки. Черным мы называем уровень, соответствующий оптически контрастной краске с высоким поглощением излучения подсветки, а белым называется уровень, соответствующий бумаге или красочному слою с низким поглощением излучения подсветки.On character familiarity, a set of test lines is predefined. At the intersection of these lines with the image, pixels will be selected for the subsequent classification of the symbol. In general, straight lines can be oriented in any way: along image lines, along its columns, or at an arbitrary angle. The use of a set of test lines for classification is based on the feature of a symbol as a set of graphic elements. Symbols of alphabets created by man have only two levels of intensity. One level, usually black, corresponds to the character itself, and another level, usually white, corresponds to a space. The terms “black” and “white” are used here with a certain convention, since banknotes are multi-color printing, and scanning is carried out using certain backlight wavelengths. We call black the level corresponding to optically contrasting paint with a high absorption of backlight radiation, and white the level corresponding to paper or a colorful layer with a low absorption of backlight radiation.

Символ состоит из линий, которые имеют постоянную либо слабо изменяющуюся толщину. В результате, пересечение проверочной прямой с линиями символа представляется набором черных отрезков, где каждый отрезок соответствует отдельной линии, а длина отрезка определяется толщиной линии и углом пересечения с проверочной прямой. Набор проверочных прямых позволяет, таким образом, характеризовать изображение символа не как двумерный массив пикселей, а как множество отрезков, возникающих на пересечении линий символа с проверочными прямыми. Таким образом, описанная здесь характеризация дает возможность анализировать структуру неизвестного символа, как набора линий. Эта возможность важна для быстрого и достоверного распознавания, поскольку конкретный вид символа, к которому требуется отнести распознаваемое изображение символа, определяется именно количеством и взаиморасположением составляющих его линий.The symbol consists of lines that have a constant or slightly varying thickness. As a result, the intersection of the test line with the lines of the symbol is represented by a set of black segments, where each segment corresponds to a separate line, and the length of the segment is determined by the thickness of the line and the angle of intersection with the test line. The set of check lines allows, therefore, to characterize the image of the symbol not as a two-dimensional array of pixels, but as a set of segments that occur at the intersection of the lines of the symbol with the test lines. Thus, the characterization described here makes it possible to analyze the structure of an unknown symbol, as a set of lines. This feature is important for quick and reliable recognition, since the specific type of symbol to which the recognizable symbol image is related is determined precisely by the number and relative position of its constituent lines.

В прототипе используются проверочные прямые, ориентированные вдоль строк изображения. Результат пересечения проверочной прямой с линиями символа анализируется по грубым признакам наличия отрезка и оценки его длины как короткого, либо длинного. В результате обработки пересечения проверочной прямой с изображением символа, в прототипе находят код, относящийся к небольшому множеству возможных кодов. Заявленный способ, в отличие от прототипа, не ограничен распознаванием символов, состоящих из ортогональных штрихов.The prototype uses test lines oriented along the lines of the image. The result of the intersection of the test line with the lines of the symbol is analyzed by rough signs of the presence of a segment and an assessment of its length as short or long. As a result of processing the intersection of the test line with the image of the symbol, a code relating to a small number of possible codes is found in the prototype. The claimed method, in contrast to the prototype, is not limited to the recognition of characters consisting of orthogonal strokes.

В заявленном способе, в отличие от прототипа, вместо кода формируется набор из четырех числовых характеристик. Эти характеристики дают значительно более широкие возможности для описания особенностей формы и расположения линий символа, даже если рисунок символа отличается высокой сложностью. С другой стороны, через допустимые отклонения числовых характеристик, при классификации можно учесть влияние различных факторов, искажающих изображение и мешающих достоверному распознаванию символа. К таким факторам относятся геометрические погрешности сканирования, выражающиеся в смещении элементов цифрового изображения, а также отклонения толщины линий от номинала, возникающие как из-за погрешностей в печатном процессе, так и из-за износа банкнот и градационных погрешностей сканирования.In the claimed method, in contrast to the prototype, instead of a code, a set of four numerical characteristics is formed. These characteristics give significantly wider possibilities for describing the features of the shape and arrangement of the lines of the symbol, even if the drawing of the symbol is highly complex. On the other hand, through the permissible deviations of the numerical characteristics, the classification can take into account the influence of various factors that distort the image and interfere with reliable character recognition. Such factors include geometric scanning errors, expressed in the displacement of digital image elements, as well as deviations of the line thickness from the nominal value, arising both from errors in the printing process, and due to wear of banknotes and gradation errors of scanning.

На исходном знакоместе выделяют пиксели, относящиеся к символу, а остальные пиксели знакоместа относят к пробельным. Эта операция известна в обработке цифровых изображений под названием бинаризации. Известно множество алгоритмов бинаризации, из которых наибольшее распространение получил алгоритм Отсу, обеспечивающий высокое качество отделение символа от фона при хорошем быстродействии. Заявленный метод не накладывает ограничений на применяемый алгоритм бинаризации. В результате, получается бинаризованное изображение, имеющее только два уровня интенсивности пикселей, один из которых соответствует символу, а другой пробелу. На каждой проверочной прямой отмечают пиксели, по которым проходит эта прямая, с указанием их типа: как пиксели символа, либо как пробельные пиксели. Если прямая проходит по строке или по столбцу изображения, для этого достаточно составить линейный массив, в котором каждое значение соответствует значению пикселя соответствующей строки либо соответствующего столбца бинаризованного изображения. Для наклонной прямой необходимо составить линейный массив, копируя в него значения пикселей бинаризованного изображения, взятые по определенному пути их обхода, который является аппроксимацией наклонной прямой. Такой путь обхода может быть составлен с использованием широкоизвестного алгоритма Берзенхема, применяемого в компьютерной графике для рисования прямых.At the initial familiarity, pixels related to the symbol are distinguished, and the remaining familiarity pixels are assigned to whitespace. This operation is known in digital image processing called binarization. There are many binarization algorithms known, of which the Otsu algorithm is most widely used, which ensures high quality separation of the symbol from the background with good speed. The claimed method does not impose restrictions on the binarization algorithm used. As a result, a binarized image is obtained having only two pixel intensity levels, one of which corresponds to a symbol and the other to a space. On each test line, pixels are marked along which this line passes, indicating their type: as pixels of a symbol, or as white pixels. If the line passes along a row or a column of an image, it’s enough to compose a linear array in which each value corresponds to the pixel value of the corresponding row or corresponding column of the binarized image. For an inclined line, it is necessary to compose a linear array, copying into it the pixel values of the binarized image taken along a certain path of their traversal, which is an approximation of the inclined line. Such a bypass path can be compiled using the well-known Bersenham algorithm used in computer graphics to draw lines.

Рассмотрим числовые характеристики более подробно. Длину интервала на проверочной прямой, охватывающего все пиксели символа, мы будем в этом описании называть шириной и обозначать W. Ширина измеряется в пикселах и показывает полную протяженность участка, на котором проверочная прямая пересекает линии символа. Для различных изображений одного и того же символа, относящегося к известному шрифту, ширина на определенной проверочной прямой является стабильной характеристикой, которая изменяется в небольшой степени по причине геометрических погрешностей сканирования и погрешностей толщины линии.Consider the numerical characteristics in more detail. In this description, we will call the length of the interval on the test line that covers all the pixels of the symbol the width and denote W. The width is measured in pixels and shows the total length of the section where the test line intersects the symbol lines. For different images of the same character belonging to a known font, the width on a certain test line is a stable characteristic, which changes to a small extent due to geometric scanning errors and errors in line thickness.

Количество интервалов пикселей символа, в которых пиксели символа расположены друг за другом, мы будем называть числом штрихов и обозначать Р. Число штрихов обозначает, сколько линий символа пересекла проверочная прямая. Для различных изображений одного и того же символа, число штрихов на определенной проверочной прямой практически не изменяется, за исключением тех случаев, когда проверочная прямая проходит вблизи мест слияния или пересечения линий либо же касается линии. В этих особых случаях, значение Р может изменяться от малейших случайных факторов и не является показательным, поэтому, его рекомендуется не учитывать для анализа. Координата центра тяжести пикселей символа, выраженная в пикселях в системе координат проверочной прямой, будет далее называться центром и обозначаться С. Центр показывает месторасположение на проверочной прямой того участка, на котором эта прямая пересекает линии символа. Центр С на проверочной прямой слабо изменяется при геометрических погрешностях сканирования, и почти не зависит от погрешностей толщины линии. Однако, это единственная из четырех числовых характеристик, которая отсчитывается от начала системы координат проверочной прямой, положение которой установлено некоторым заданным образом относительно границ знакоместа. Поэтому, для стабильного вычисления С нужно обеспечить установку положения начала системы координат по отношению к границам знакоместа с учетом расположения изображения символа в знакоместе. Как будет показано в дальнейшем, для такой установки положения лучше всего использовать ось тяжести либо центр тяжести всего изображения знакоместа.The number of symbol pixel intervals in which the symbol pixels are arranged one after another will be called the number of strokes and denoted by R. The number of strokes indicates how many lines of the symbol the test line crossed. For different images of the same symbol, the number of strokes on a certain test line is practically unchanged, except when the test line passes near the points of merging or intersection of lines or touches the line. In these special cases, the value of P can vary from the smallest random factors and is not indicative, therefore, it is recommended not to take it into account for analysis. The coordinate of the center of gravity of the pixels of the symbol, expressed in pixels in the coordinate system of the test line, will be called the center and denoted by C. The center shows the location on the test line of the section where this line intersects the symbol lines. The center C on the test line changes slightly with geometric scanning errors, and is almost independent of the errors in the line thickness. However, this is the only one of the four numerical characteristics, which is measured from the origin of the coordinate system of the test line, the position of which is set in some predetermined manner relative to the boundaries of familiarity. Therefore, for stable calculation of C, it is necessary to ensure the position of the origin of the coordinate system with respect to the boundaries of familiarity, taking into account the location of the image of the symbol in familiarity. As will be shown later, for such a positioning, it is best to use the axis of gravity or the center of gravity of the entire familiarity image.

Суммарное число всех пикселей символа, отмеченных на проверочной прямой, мы будем называть весом и обозначать WT. Для различных изображений одного и того же символа, вес мало зависит от геометрических погрешностей сканирования, и почти полностью определяется погрешностями толщины линии.The total number of all pixels of the symbol marked on the test line, we will call the weight and denote WT. For different images of the same symbol, the weight depends little on the geometric errors of the scan, and is almost entirely determined by the errors in the line thickness.

Вычисление всех четырех числовых характеристик в соответствии с приведенным описанием их значения является достаточно очевидным для специалиста. Перед их вычислением, проводимым для определенной проверочной прямой, нужно положить Р, W, С и WT равными нулю. Двигаясь по проверочной прямой от края знакоместа в определенном направлении, необходимо анализировать значение каждого отмеченного пикселя, и каждый раз принимать решение о возможном увеличении Р, W, WT в соответствии со значением пикселя. Для вычисления центра С необходимо подсчитать сумму координат для всех пикселей на прямой, относящихся к символу, и разделить ее на вес WT. Это соответствует общеизвестному методу подсчета центра тяжести. Сумма координат для всех пикселей на прямой, относящихся к символу, является промежуточной цифровой характеристикой, которую мы далее будем обозначать SC.The calculation of all four numerical characteristics in accordance with the description of their meaning is obvious enough for a specialist. Before calculating them, carried out for a certain test line, it is necessary to set P, W, C and WT equal to zero. Moving along the test line from the edge of familiarity in a certain direction, it is necessary to analyze the value of each marked pixel, and each time decide on a possible increase in P, W, WT in accordance with the pixel value. To calculate the center C, it is necessary to calculate the sum of the coordinates for all the pixels on the line related to the symbol and divide it by the weight WT. This corresponds to the well-known method of calculating the center of gravity. The sum of the coordinates for all the pixels on the line related to the symbol is an intermediate digital characteristic, which we will denote by SC.

Вычисление числовых характеристик проверочной строки является быстрой операцией, которая не требует множества сравнений и матричных действий, характерных, например, для широко известного метода гистограммы градиентов. Более того, так как вычисление числовых характеристик для разных проверочных прямых не взаимосвязано, то оно легко поддается распараллеливанию. Распараллеливание позволяет многократно ускорить работу при использовании многоядерного центрального процессора в вычислительной системе машины для обработки банкнот. В целом, заявленный способ обеспечивает быстродействие не хуже прототипа. Дополнительное ускорение работы может быть реализовано за счет вычисления числовых характеристик в аппаратном обеспечении при помощи несложного сопроцессора. Такой сопроцессор может быть реализован в структуре микросхемы программируемой логики (FPGA).The calculation of the numerical characteristics of the check string is a quick operation that does not require many comparisons and matrix actions, characteristic, for example, of the well-known gradient histogram method. Moreover, since the calculation of numerical characteristics for different test lines is not interconnected, it can easily be parallelized. Parallelization allows you to speed up the work many times when using a multi-core central processor in the computer system of a banknote processing machine. In General, the claimed method provides a performance not worse than the prototype. Additional work acceleration can be realized by calculating the numerical characteristics in the hardware using a simple coprocessor. Such a coprocessor can be implemented in the structure of a programmable logic chip (FPGA).

Выбор четырех числовых характеристик Р, W, С и WT для кодирования результата пересечения изображения символа с проверочной прямой обоснован тем, что такое кодирование можно рассматривать как разновидность локального частотного анализа. Частотный анализ, например, преобразование Фурье, и локальный анализ, такой, как вейвлетное преобразование, зарекомендовали себя в обработке изображений как надежные методы обнаружения структурных особенностей изображения, что важно для распознавания символа. Кодирование при помощи четырех числовых характеристик имеет значительное сходство с методом оконного преобразования Фурье, хорошо известного в цифровой обработке сигналов и являющегося комбинацией частотного и локального анализа. Укажем здесь на соответствие параметров оконного преобразования Фурье и числовых характеристик. Ширина W примерно соответствует ширине прямоугольного окна оконного преобразования. Центр С соответствует положению центра окна. Значение числа штрихов Р задает количество периодов синусной компоненты, укладывающееся в окно. А именно, значение (2Р-1) примерно равно числу полупериодов синусной компоненты в пределах ширины окна. Так, при Р=1 в окне укладывается половина периода синусоиды и формирует единственный пик, соответствующий единственному отрезку на проверочной прямой, полученному в результате пересечения с единственной линией символа. При Р=2 в окне укладывается полтора периода, которые формируют два пика, соответствующих паре отрезков на проверочной прямой и пересечению с двумя линиями символа. При Р=3 в окне укладывается два с половиной периода, которые формируют три пика, соответствующих трем отрезкам на проверочной прямой и пересечению с тремя линиями символа.The choice of four numerical characteristics P, W, C and WT for encoding the result of the intersection of the symbol image with the test line is justified by the fact that such encoding can be considered as a kind of local frequency analysis. Frequency analysis, for example, Fourier transform, and local analysis, such as wavelet transform, have proven themselves in image processing as reliable methods for detecting the structural features of an image, which is important for character recognition. Coding using four numerical characteristics has significant similarities with the window Fourier transform method, well known in digital signal processing and a combination of frequency and local analysis. We point out here the correspondence between the parameters of the window Fourier transform and numerical characteristics. The width W approximately corresponds to the width of the rectangular window of the window transform. Center C corresponds to the position of the center of the window. The value of the number of strokes P defines the number of periods of the sine component that fit into the window. Namely, the value (2P-1) is approximately equal to the number of half-periods of the sine component within the window width. So, at P = 1, half the period of the sinusoid is laid in the window and forms a single peak corresponding to a single segment on the test line obtained as a result of intersection with a single line of the symbol. At P = 2, one and a half periods fit in the window, which form two peaks corresponding to a pair of segments on the test line and the intersection with two lines of the symbol. At P = 3, two and a half periods fit in the window, which form three peaks corresponding to three segments on the test line and the intersection with three lines of the symbol.

Удобство использования локального частотного преобразования состоит в том, чтобы закодировать результат пересечения проверочной прямой с изображением символа в виде одной, доминирующей компоненты, которая определяется шириной окна, положением центра окна, и частотой периодической функции в этом окне. В терминах числовых характеристик, это соответствует набору из W, С и Р, соответственно. Такая кодировка является приближенной, поскольку она отбрасывает остаточные компоненты преобразования, и оставляет только доминирующую. При обратном преобразовании этой доминирующей компоненты к значениям пикселей на проверочной прямой, можно приблизительно восстановить исходное распределение черных и белых пикселей. Так как пиксели на проверочной прямой могут принимать только два возможных значения, то для отображения доминирующей компоненты, представленной с помощью синусоиды, на значения пикселей, нужно применить бинаризацию.The convenience of using the local frequency conversion is to encode the result of the intersection of the test line with the symbol image in the form of a single, dominant component, which is determined by the width of the window, the position of the center of the window, and the frequency of the periodic function in this window. In terms of numerical characteristics, this corresponds to a set of W, C, and P, respectively. Such an encoding is approximate, since it discards the residual components of the transformation, and leaves only the dominant one. With the inverse transformation of this dominant component to the pixel values on the test line, you can approximately restore the original distribution of black and white pixels. Since the pixels on the test line can take only two possible values, then to map the dominant component represented by a sine wave to the pixel values, you need to apply binarization.

Однако, только лишь доминирующей синусной компоненты оказывается недостаточно для правильного восстановления исходной доли черных пикселей в пределах ширины W. Для передачи этой доли нужно дополнительно кодировать постоянную составляющую, которая поднимает или опускает синусоиду относительно нулевого уровня. Вес WT нелинейным образом задает уровень постоянной составляющей. Если принять порог бинаризации равным О, то при отсутствующей постоянной составляющей и Р>1 ширина черных и белых отрезков на проверочной прямой оказываются равными, то есть WT=W/2. При изменении постоянной составляющей доля черных пикселей будет уменьшаться и увеличиваться, вместе с весом WT.However, just the dominant sine component is not enough to correctly restore the original proportion of black pixels within the width W. To transmit this fraction, you must additionally encode a constant component that raises or lowers the sine wave relative to the zero level. Weight WT nonlinearly sets the level of the DC component. If we take the binarization threshold equal to O, then for the absence of a constant component and P> 1, the width of the black and white segments on the test line turn out to be equal, that is, WT = W / 2. When the DC component changes, the proportion of black pixels will decrease and increase, together with the weight of WT.

Набор числовых характеристик вычисляется, как было описано выше, однократным проходом по пикселям на прямой без применения технологий Фурье-преобразования. Такая кодировка оказывается несколько менее точной, чем полный расчет доминирующего компонента Фурье-преобразования, но выполняется очень быстро. Более детально, связь между оконным Фурье-преобразованием и набором числовых характеристик будет описана далее.The set of numerical characteristics is calculated, as described above, by a single pass through the pixels on a straight line without the use of Fourier transform technologies. Such an encoding is somewhat less accurate than a complete calculation of the dominant component of the Fourier transform, but is performed very quickly. In more detail, the relationship between the window Fourier transform and the set of numerical characteristics will be described later.

В результате обработки изображения неизвестного символа в знакоместе это изображение преобразуется в массив, где каждой проверочной прямой соответствует четыре числовых характеристики Р, W, С и WT. Высокая эффективность кодирования при помощи такого набора была показана в экспериментах, проведенных авторами. В качестве проверочных прямых были выбраны все строки знакоместа. После кодирования изображения реального символа, проводилось обратное восстановление изображения на основе полученного массива числовых характеристик. Для этого, интервал пикселей в каждой строке, имеющий центр С и ширину W, заполнялся числом Р черных отрезков одинаковой длины WT/P пикселей, равномерно расположенных с одинаковым шагом W/P. Полученное восстановленное изображение, кроме редких исключений, сохраняло стилистические особенности рисунка и полную узнаваемость символа, хотя и имело определенные визуальные отличия от оригинала. То есть, кодирование при помощи набора числовых характеристик Р, W, С и WT, хотя и теряет несущественную часть графической информации, в целом сохраняет данные, необходимые для успешного распознавания символа. Числовые характеристики успешно передают особенности рисунка символа, такие как толщина линий, их наклон, изменение толщины линии вдоль ее длины, расположение точек пересечения и стыковки линий, и тому подобное.As a result of processing the image of an unknown symbol in familiarity, this image is converted into an array, where each check line corresponds to four numerical characteristics P, W, C and WT. High coding efficiency using such a set was shown in experiments conducted by the authors. All lines of familiarity were chosen as test lines. After encoding the image of the real symbol, the image was reversed based on the resulting array of numerical characteristics. To do this, the pixel interval in each row, having center C and width W, was filled with the number P of black segments of the same length WT / P of pixels uniformly spaced with the same W / P pitch. The resulting restored image, except for rare exceptions, retained the stylistic features of the picture and the full recognition of the symbol, although it had certain visual differences from the original. That is, encoding using a set of numerical characteristics P, W, C, and WT, although it loses an insignificant part of the graphic information, generally saves the data necessary for successful character recognition. Numerical characteristics successfully convey features of the symbol pattern, such as line thickness, their slope, change in line thickness along its length, location of intersection and docking lines, and the like.

В отличие от прототипа, в заявленном способе проверочные прямые не ограничены единственным направлением и могут быть расположены таким образом, чтобы их пересечение с линиями символа в наибольшей степени охватывало различные графические элементы, характерные для рисунка символов определенного шрифта. За счет того, что проверочные прямые имеют много пересечений с различными графическими элементами, характерными для символа, может быть повышено количество полезной информации о расположении линий.Unlike the prototype, in the claimed method, the test lines are not limited to a single direction and can be positioned so that their intersection with the lines of the symbol to the greatest extent covers various graphic elements characteristic of the character pattern of a particular font. Due to the fact that the test lines have many intersections with various graphic elements characteristic of the symbol, the amount of useful information about the location of the lines can be increased.

Числовые характеристики, найденные для проверочных прямых, являются входными признаками для работы классификатора, который принимает решение о том, к какому виду относится распознаваемый символ. В уровне техники известно множество классификаторов, таких, как нейронные сети, статистические классификаторы, каскады слабых классификаторов и многие другие. Построение и обучение классификатора освещено в научной литературе и хорошо известно специалистам. Для достоверной классификации необходимо, чтобы признаки достаточно полно передавали особенности классифицируемых объектов. Массив числовых характеристик, как было указано выше, обладает высокой полнотой представления изображения символа.The numerical characteristics found for the test lines are input to the operation of the classifier, which decides what kind of recognizable character belongs. In the prior art there are many classifiers, such as neural networks, statistical classifiers, cascades of weak classifiers, and many others. The construction and training of the classifier is covered in the scientific literature and is well known to specialists. For reliable classification, it is necessary that the signs fully convey the characteristics of the classified objects. An array of numerical characteristics, as indicated above, has a high completeness of representation of the symbol image.

Особенностями заявленного способа являются высокая эффективность кодирования формы символа, а также возможность использования требуемого количества и произвольной ориентации проверочных прямых для учета особенностей даже самых сложных рисунков символов. Эти особенности позволяют использовать заявленный способ для распознавания шрифта, имеющего практически неограниченные особенности рисунка символов, а не только для простого шрифта с ортогонально направленными штрихами. Это расширяет возможности применения способа к различным шрифтам с практически произвольными особенностями рисунка символов и обеспечивает технический результат.The features of the claimed method are the high efficiency of encoding the shape of the symbol, as well as the ability to use the required number and arbitrary orientation of the test lines to take into account the features of even the most complex symbol patterns. These features make it possible to use the claimed method for recognizing a font having practically unlimited features of a character pattern, and not just for a simple font with orthogonally directed strokes. This expands the possibilities of applying the method to various fonts with almost arbitrary features of the character pattern and provides a technical result.

В предпочтительной реализации способа, дополнительно обеспечивается надежность распознавания на банкнотах, имеющих загрязнения и повреждения красочного слоя, при сохранении высокого быстродействия. Этот результат достигается за счет того, что, при классификации,In a preferred implementation of the method, recognition reliability is further ensured on banknotes having contamination and damage to the paint layer, while maintaining high speed. This result is achieved due to the fact that, during classification,

для каждого из возможных видов символа выполняют последовательную проверку набора критериев принадлежности к этому виду,for each of the possible types of symbol perform a sequential check of a set of criteria for belonging to this type,

где наборы критериев заданы предварительно, и, по меньшей мере, часть критериев в каждом наборе установлена на основе числовых характеристик проверочных прямых,where the sets of criteria are predefined, and at least part of the criteria in each set is set based on the numerical characteristics of the test lines,

при обнаружении выполнения всех критериев в наборе, соответствующем какому-либо возможному виду символа, прерывают дальнейшую проверку и заключают, что символ, подлежащий распознаванию, относится к этому виду,upon detection of the fulfillment of all criteria in the set corresponding to any possible type of symbol, they interrupt further verification and conclude that the symbol to be recognized belongs to this type,

если же, после сопоставления с наборами критериев для всех возможных видов символов, не найдено соответствие ни одному из возможных видов символа, заключают, что символ не распознан,if, after comparison with the sets of criteria for all possible types of characters, no match is found for any of the possible types of characters, it is concluded that the character is not recognized,

при этом для каждого из критериев, установленных на основе характеристик проверочных прямых, предварительно задаютсяMoreover, for each of the criteria established on the basis of the characteristics of the test lines, they are preliminarily set

требования критерия к характеристикам проверочной прямой, содержащие допуск для значения по меньшей мере одной числовой характеристики,requirements of the criterion for the characteristics of the test line, containing a tolerance for the value of at least one numerical characteristic,

и набор проверочных прямых для проверки критерия,and a set of test lines to test the criterion,

причем такой критерий считается выполненным, если количество проверочных прямых в наборе, соответствующих требованиям этого критерия, находится внутри заранее заданного интервала.moreover, such a criterion is considered fulfilled if the number of test lines in the set that meet the requirements of this criterion is within a predetermined interval.

Решение о том, к какому виду относится неизвестный символ, принимается на основе последовательной проверки набора критериев, где каждому набору критериев соответствует отдельный вид символа. Критерий проверяет соответствие определенному правилу набора числовых характеристик, найденных для тех или иных проверочных прямых. Если обнаруживается, что выполнены все критерии в наборе для определенного вида символа, то заключают, что неизвестный символ относится к этому определенному виду.The decision on what type an unknown symbol belongs to is made on the basis of a sequential check of a set of criteria, where each set of criteria corresponds to a separate type of symbol. The criterion verifies compliance with a certain rule of a set of numerical characteristics found for particular test lines. If it is found that all the criteria in the set are fulfilled for a certain type of symbol, then conclude that the unknown symbol refers to this particular type.

Такое построение набора критериев позволяет индивидуально подбирать критерии в зависимости от рисунка определенного вида символов. За счет этого повышается быстродействие и качество распознавания. А именно, из всего набора проверочных прямых могут быть выбраны только те прямые, которые в наибольшей степени характеризуют особенности рисунка. Это увеличивает быстродействие, так как не проверяются прямые, которые не обладают высокой информативностью в отношении особенностей рисунка определенного символа. Далее, в критериях можно исключить использование прямых, проходящих вблизи мест слияния и пересечения линий, а также касания линии символа и проверочной прямой. Характеристики для этих прямых могут быть нестабильны и в случае их проверки качество распознавания может только ухудшиться.This construction of a set of criteria allows you to individually select criteria depending on the drawing of a certain type of character. Due to this, the speed and quality of recognition is increased. Namely, from the entire set of test lines, only those lines that most characterize the features of the pattern can be selected. This increases speed, since lines that do not have high information content with respect to the characteristics of the drawing of a certain symbol are not checked. Further, in the criteria, it is possible to exclude the use of lines passing near the places of merging and intersection of lines, as well as touching the symbol line and the test line. The characteristics for these lines can be unstable and, if checked, the recognition quality can only deteriorate.

Если же, по ходу проверки набора критериев для определенного символа, обнаруживается несоответствие какому-либо критерию, то дальнейшая проверка этого набора сразу же прекращается, и начинается проверка следующего набора, соответствующего другому виду символа. Этот подход мы будем называть ранним завершением. Раннее завершение позволяет не выполнять проверки, предусмотренные для какого-либо вида символа, как только становится ясно, что неизвестный символ не относится к этому виду. Раннее завершение, как показывает опыт, позволяет во много раз сократить общее число проверяемых критериев, и соответствующим образом увеличить быстродействие. Проверка подавляющего большинства критериев завершается почти сразу же после своего начала. Этим заявленный способ отличается от известных методов, основанных на сверточных нейронных сетях и на машинах опорных векторов, где для вынесения заключения нужно выполнить неснижаемый большой объем вычислений.If, in the process of checking the set of criteria for a certain symbol, a mismatch is found for any criterion, then further verification of this set immediately stops, and the verification of the next set corresponding to another type of symbol begins. We will call this approach early termination. Early completion allows you to not perform checks provided for any kind of symbol, as soon as it becomes clear that the unknown symbol does not belong to this type. The early completion, as experience shows, allows many times to reduce the total number of tested criteria, and accordingly increase performance. Verification of the vast majority of criteria is completed almost immediately after its inception. This claimed method differs from the known methods based on convolutional neural networks and on support vector machines, where in order to reach an opinion it is necessary to perform an irreducible large amount of computation.

Все перечисленные особенности заявленного способа обеспечивают ему высокое быстродействие.All of the above features of the claimed method provide it with high performance.

В критерии может быть задана проверка на множестве из более чем одной проверочной прямой, причем, для выполнения критерия может быть допустимым соответствие требованиям критерия не для всех прямых этого множества. Это позволяет выполнить критерий даже в случае локального повреждения изображения, попадающего на одну из проверочных прямых. Таким повреждением может быть пятно или местная потертость красочного слоя. Для поврежденной прямой, условие соответствия для набора числовых характеристик не будет выполнено. Однако, для остальных проверочных прямых такое условие будет выполняться, что позволит считать критерий, в целом, выполненным. То есть, заявленный способ обеспечивает устойчивость к локальным повреждениям изображения. Отметим, что в прототипе локальное повреждение изображения и соответствующий ему неверный код почти всегда приводит к неверному переходу автомата состояния и, как следствие, к ошибке распознавания символа.In the criterion, a check can be specified on a set of more than one check line, and, to fulfill the criterion, it may be acceptable to meet the requirements of the criterion not for all lines of this set. This allows the criterion to be fulfilled even in the case of local damage to the image falling on one of the test lines. Such damage may be a stain or local abrasion of the paint layer. For a damaged line, the correspondence condition for a set of numerical characteristics will not be satisfied. However, for the remaining test lines this condition will be fulfilled, which will allow us to consider the criterion, in general, fulfilled. That is, the claimed method provides resistance to local damage to the image. Note that in the prototype local damage to the image and the corresponding incorrect code almost always leads to an incorrect state machine transition and, as a result, to a character recognition error.

В критерии устанавливаются требования к числовым характеристикам проверочной прямой, которые предусматривают определенный допуск для, по крайней мере, одной из характеристик. Такие допуски позволяют учесть естественные геометрические погрешности сканирования и погрешности толщины линий, которые возникают при печати, обращении и обработке банкнот. На изображении символа того типа, к которому относится критерий, результат проверки критерия будет положительным, несмотря на геометрические погрешности сканирования и погрешности толщины линии. То есть, заявленный способ позволяет в необходимой степени затрубить критерии распознавания, чтобы избежать ложно негативных результатов на нормальных банкнотах.The criteria establish requirements for the numerical characteristics of the test line, which provide for a certain tolerance for at least one of the characteristics. Such tolerances allow you to take into account the natural geometric errors of scanning and errors in the thickness of the lines that occur during printing, handling and processing of banknotes. In the image of a symbol of the type to which the criterion belongs, the result of checking the criterion will be positive, despite the geometric errors of scanning and errors of the line thickness. That is, the claimed method allows to the extent necessary to trump up the recognition criteria to avoid false negative results on normal banknotes.

Таким образом, заявленное изобретение, при сохранении высокого быстродействия, обеспечивает устойчивость к дефектам и искажениям изображения символа, которые характерны для серийных номеров на банкнотах.Thus, the claimed invention, while maintaining high speed, provides resistance to defects and distortion of the symbol image, which are characteristic of serial numbers on banknotes.

Дополнительным преимуществом предпочтительной реализации заявленного способа является то, что в случае ошибки он, как правило, выдает заключение о нераспознанности символа. Это связано с тем, что последовательность принятия решения основана на проверке наборов логических критериев, где для заключения о распознавании какого-либо вида символа необходим положительный результат каждого из критериев в соответствующем ему наборе. Поэтому, если наборы критериев составлены достаточно полными для подтверждения соответствующего им вида символа, то естественным результатом при ошибке распознавания является отрицательный результат проверки каждого из наборов критериев, что вызывает итоговое заключение о нераспознанности символа. Выдача неправильного заключения о распознавании символа как относящегося к какому-то виду может иметь место только при недостаточно полном наборе критериев для этого вида. Очевидным решением для исключения возможности неправильного заключения будет добавление дополнительных критериев в набор для ужесточения принятия решения. В этом заявленный способ отличается от классификаторов, основанных на разделяющих поверхностях, таких, как машина опорных векторов. Для подобных классификаторов возможность управлять ужесточением принятия решения сильно ограничена.An additional advantage of the preferred implementation of the claimed method is that in case of an error, as a rule, it issues a conclusion about the unrecognized character. This is due to the fact that the decision-making sequence is based on checking sets of logical criteria, where a conclusion on the recognition of any kind of symbol requires a positive result of each of the criteria in its corresponding set. Therefore, if the sets of criteria are compiled sufficiently complete to confirm the corresponding type of symbol, then the natural result with a recognition error is a negative result of checking each of the sets of criteria, which leads to the final conclusion about the unrecognition of the symbol. The issuance of an incorrect conclusion about the recognition of a symbol as belonging to some kind can take place only with an insufficiently complete set of criteria for this type. The obvious solution to eliminate the possibility of an incorrect conclusion would be to add additional criteria to the set to tighten decision making. In this, the claimed method differs from classifiers based on dividing surfaces, such as a support vector machine. For such classifiers, the ability to control tightened decision making is severely limited.

Для буквенных символов европейских алфавитов, а также для большинства неевропейских цифровых систем, характерна вертикальная вытянутость символов и преимущественно вертикальная направленность линий. Для этих символов наиболее выгодно располагать проверочные прямые вдоль строк изображения знакоместа, поскольку этим обеспечивается пересечение одной проверочной прямой многих линий символа и, как следствие, более высокая информативность числовых характеристик этой прямой.For alphabetic characters of European alphabets, as well as for most non-European digital systems, the vertical elongation of the characters and mainly the vertical orientation of the lines are characteristic. For these characters, it is most advantageous to place the test lines along the lines of the image of familiarity, since this ensures the intersection of one test line of many lines of the character and, as a result, a higher information content of the numerical characteristics of this line.

Небольшие дефекты изображения, такие как мелкие пятна загрязнения и небольшие потертости красочного слоя, без дополнительной обработки приводят к получению ошибочных числовых характеристик. Чтобы избежать этой ошибки, следует, по определенным правилам, фильтровать пиксели, отмеченные на проверочной прямой. Наиболее простым видом коррекции является замена коротких черных отрезков на белые и коротких белых отрезков на черные. Короткий черный отрезок обычно возникает из-за мелких пятен загрязнения, и его замена на белый уничтожает влияние пятна. Аналогичным образом, короткий белый отрезок возникает из-за небольшой потертости красочного стоя, не повреждающей линию символа на ее полную ширину. Замена этого отрезка на черный восстанавливает целостность линии. Предельное ограничение длины отрезков, подлежащих замене, выбирают достаточно малым, чтобы это не приводило к существенному искажению неповрежденного символа.Small image defects, such as small spots of pollution and small abrasions of the paint layer, without additional processing lead to erroneous numerical characteristics. To avoid this error, you should, according to certain rules, filter the pixels marked on the test line. The simplest type of correction is to replace short black segments with white and short white segments with black. A short black line usually occurs due to small spots of contamination, and its replacement with white destroys the effect of the spot. Similarly, a short white line appears due to a small abrasion of the colorful standing, which does not damage the line of the symbol to its full width. Replacing this segment with black restores the integrity of the line. The limiting limitation of the length of the segments to be replaced is chosen small enough so that this does not lead to a significant distortion of the undamaged symbol.

Фильтрацию удобнее всего производить непосредственно в процессе нахождения числовых характеристик. В качестве альтернативного способа фильтрации, можно, в ходе подсчета Р, С и WT, игнорировать короткие черные и короткие белые отрезки, с получением таких же результатов, как при описанной выше замене значения пикселей.Filtration is most conveniently done directly in the process of finding numerical characteristics. As an alternative filtering method, when calculating P, C and WT, you can ignore the short black and short white segments, with the same results as with the replacement of the pixel values described above.

Для того, чтобы подтвердить принадлежность символа к определенному виду, требования к характеристикам проверочной прямой задают в виде допустимых интервалов для каждой из характеристик, причем, для выполнения требований, значения всех характеристик должны находиться в допустимых для них интервалах. Ширина допустимых интервалов должна задаваться в соответствии с геометрическими погрешностями и погрешностями толщины линии, характерными для определенного типа банкнот и определенного устройства обработки банкнот, на котором проводится сканирование.In order to confirm that the symbol belongs to a certain type, the requirements for the characteristics of the test line are set in the form of allowable intervals for each of the characteristics, and, to fulfill the requirements, the values of all characteristics must be in the intervals allowed for them. The width of the allowable intervals should be set in accordance with the geometric errors and errors of the line thickness characteristic of a certain type of banknote and a specific banknote processing device on which scanning is carried out.

Иногда, два разных вида символа оказываются очень похожими, и при проверке набора критериев соответствия одному виду нужно исключить принадлежность символа к другому виду. Для этого требования к характеристикам проверочной прямой задают в виде недопустимых интервалов для каждой из характеристик, причем, для выполнения требований, значение хотя бы одной характеристики должно находиться вне недопустимого для нее интервала.Sometimes, two different types of symbols turn out to be very similar, and when checking a set of criteria for compliance with one type, it is necessary to exclude the symbol from another type. For this, the requirements for the characteristics of the test line are set in the form of unacceptable intervals for each of the characteristics, and, in order to fulfill the requirements, the value of at least one characteristic must be outside the interval that is not valid for it.

Проверка попадания числовых характеристик в допустимые интервалы является очень быстрой операцией, которая, для процессоров общего назначения, требует не более 8 последовательных сравнений для контроля каждой строки. Имеются возможности для еще большего увеличения быстродействия такой проверки. Указанные последовательные сравнения могут выполняться параллельно, если архитектура процессора обеспечивает такую возможность. В процессорах с возможностью расширения набора команд, возможно создать специальную команду проверки, которая проверяет все четыре числовые характеристики одновременно за один такт.Checking the numerical characteristics falling within acceptable intervals is a very fast operation, which, for general-purpose processors, requires no more than 8 consecutive comparisons to control each line. There are opportunities to further increase the speed of such a check. These sequential comparisons may be performed in parallel if the processor architecture provides this capability. In processors with the ability to expand a set of instructions, it is possible to create a special verification command that checks all four numerical characteristics simultaneously in one cycle.

В случае возможности существенного перекоса банкноты при сканировании, изображение символа также может оказаться перекошенным, что ухудшает достоверность его распознавания. Для борьбы с этим явлением следует, еще до совмещения изображения символа со знакоместом, компенсировать перекос путем поворота изображения символа на угол перекоса в направлении, противоположном направлению перекоса. Поворот изображения можно использовать и в том случае, когда символ расположен на банкноте под известным углом к ее стороне. Альтернативой повороту изображения может быть поворот самого знакоместа на угол перекоса при совмещении знакоместа с изображением символа. Этот подход, как правило, оказывается более затратным в вычислительном смысле из-за наклонной ориентации проверочных прямых по отношению к строкам изображения.If it is possible that the banknote will be significantly skewed during scanning, the image of the symbol may also be skewed, which affects the reliability of its recognition. To combat this phenomenon, it is necessary, even before combining the symbol image with familiarity, to compensate for the skew by rotating the character image by the skew angle in the direction opposite to the skew direction. Image rotation can also be used when the symbol is located on the banknote at a known angle to its side. An alternative to image rotation can be rotation of the familiarity at an angle of skew when combining familiarity with the image of the symbol. This approach, as a rule, is more computationally expensive due to the oblique orientation of the test lines with respect to the image lines.

Положение каждой проверочной прямой линии и начало системы координат на ней устанавливают относительно границ знакоместа заранее заданным образом. Однако, графические элементы символа могут располагаться относительно границ знакоместа со значительной случайной погрешностью, поскольку совмещение изображения символа со знакоместом является достаточно грубой операцией и только обеспечивает нахождение символа внутри знакоместа. Указанная случайная погрешность приводит к увеличенному случайному разбросу числовых характеристик и ухудшает достоверность распознавания. Для детального отражения информации об изображении символа, в некоторых реализациях способа, проверочные прямые имеют взаимно-однозначное соответствие со строками изображения знакоместа. Проверочные прямые нумеруют и используют номер прямой для ее идентификации при проверке критериев.The position of each test straight line and the origin of the coordinate system on it are set relative to the boundaries of familiarity in a predetermined manner. However, the graphic elements of the symbol can be located relative to the boundaries of familiarity with a significant random error, since combining the image of the symbol with familiarity is a rather crude operation and only ensures that the symbol is inside the familiarity. The specified random error leads to an increased random spread of numerical characteristics and degrades the reliability of recognition. For a detailed reflection of information about the image of the symbol, in some implementations of the method, the test lines have a one-to-one correspondence with the lines of the image of familiarity. The test lines are numbered and use the line number to identify it when checking the criteria.

Для устранения указанного случайного разброса, дополнительно выполняют коррекцию номера проверочной прямой и положения начала ее системы координат на основе ранее полученных наборов числовых характеристик. Изменение положения начала системы координат проверочной прямой, в свою очередь, приводит к изменению значения числовой характеристики центра С без изменения трех остальных характеристик, поскольку только числовая характеристика центра С отсчитывается от начала системы координат.To eliminate this random scatter, an additional correction is performed for the number of the test line and the position of the origin of its coordinate system based on previously obtained sets of numerical characteristics. Changing the position of the origin of the coordinate system of the test line, in turn, leads to a change in the value of the numerical characteristic of the center C without changing the other three characteristics, since only the numerical characteristic of the center C is measured from the beginning of the coordinate system.

Описанная коррекция позволяет привязать проверочные прямые, используемые в критериях, и связанные с ними числовые характеристики к действительному положению символа внутри знакоместа. Подобная привязка, в свою очередь, помогает улучшить достоверность распознавания одного и того же символа на различных изображениях, поскольку каждый критерий применяется к проверке именно той части символа, для которой он предназначен, а числовые характеристики проверочных прямых не зависят от смещения изображения символа по отношению к границам знакоместа.The described correction allows you to link the test lines used in the criteria and the associated numerical characteristics to the actual position of the character within the familiarity. Such a binding, in turn, helps to improve the recognition accuracy of the same symbol in different images, since each criterion is applied to checking exactly that part of the symbol for which it is intended, and the numerical characteristics of the test lines do not depend on the displacement of the symbol image in relation to the boundaries of familiarity.

Как показывает опыт, определенные графические элементы различных изображений одного и того же символа имеют практически одни и те же координаты в строчном и столбцевом направлениях, измеряемые относительно центра тяжести изображения. Поэтому, положение центра тяжести либо оси тяжести изображения внутри знакоместа может быть успешно использовано для проведения привязки. В частности, высокую стабильность привязки дает установка начала системы координат на проверочных прямых относительно оси тяжести изображения символа. Когда символы вытянуты в столбцевом направлении и проверочные прямые направлены вдоль строк изображения, то наиболее предпочтительна коррекция в соответствии с положением оси тяжести изображения в пределах знакоместа, направленной в столбцевом направлении, такая, что координата на проверочной прямой в результате проведения коррекции отсчитывается от точки ее пересечения с указанной осью. Аналогичным образом, коррекцию номеров проверочных прямых можно проводить таким образом, чтобы расстояние от проверочной прямой с определенным номером до центра тяжести изображения, в результате проведения коррекции, соответствовало бы заранее заданной закономерности. Например, проверочные прямые, в результате проведения коррекции, можно нумеровать при помощи целого значения расстояния от проверочной прямой до центра тяжести изображения знакоместа.As experience shows, certain graphic elements of different images of the same symbol have almost the same coordinates in the row and column directions, measured relative to the center of gravity of the image. Therefore, the position of the center of gravity or the axis of gravity of the image inside the familiarity can be successfully used to carry out the binding. In particular, high binding stability is provided by setting the origin of the coordinate system on check lines with respect to the axis of gravity of the symbol image. When the characters are stretched in the column direction and the test lines are directed along the lines of the image, the most preferred correction is in accordance with the position of the axis of gravity of the image within the familiar direction in the column direction, such that the coordinate on the test line as a result of the correction is counted from the point of intersection with the specified axis. Similarly, the correction numbers of the test lines can be carried out in such a way that the distance from the test line with a certain number to the center of gravity of the image, as a result of the correction, would correspond to a predetermined pattern. For example, the test lines, as a result of the correction, can be numbered using the integer value of the distance from the test line to the center of gravity of the familiar image.

Для символов европейских алфавитов, верхняя кромка изображения, как правило, устойчиво задается такими графическими элементами, как конец линии, горизонтальная линия или же верхняя точка дугообразной линии. Поэтому, высокая стабильность привязки в столбцевом направлении может быть получена при установке номеров проверочных линий в соответствии с расстоянием до верхней стороны охватывающего прямоугольника изображения, которая соответствует его верхней кромке. Такая коррекция номеров проверочных линий успешно сочетается с коррекцией положения начала системы координат на проверочной прямой в соответствии с положением оси тяжести изображения в пределах знакоместа, направленной в столбцевом направлении.For characters of European alphabets, the upper edge of the image, as a rule, is steadily defined by such graphic elements as the end of the line, the horizontal line or the upper point of the arched line. Therefore, high stability of binding in the column direction can be obtained by setting the numbers of test lines in accordance with the distance to the upper side of the surrounding rectangle of the image, which corresponds to its upper edge. This correction of the numbers of the test lines is successfully combined with the correction of the position of the origin of the coordinate system on the test line in accordance with the position of the axis of gravity of the image within the familiarity directed in the column direction.

Чтобы провести коррекцию в случае взаимно-однозначного соответствия между строками изображения и проверочными прямыми, следует использовать не само изображение, а наборы числовых характеристик, полученные для каждой строки этого изображения. Это позволяет сократить объем вычислений, так как ранее вычисленные числовые характеристики уже несут в себе информацию, которая обеспечивает простое вычисление положения осей тяжести и центра тяжести, а также верхней стороны охватывающего прямоугольника символа. Будем полагать, что проверочные прямые соответствуют строкам и пронумерованы числом N от самой верхней до самой нижней, начиная с нулевого значения. Номер строки является ее вертикальной координатой. Горизонтальные координаты отсчитываются от левого края знакоместа. Тогда, горизонтальное положение оси тяжести изображения, направленной в столбцевом направлении, в соответствии с общепринятым определением оси тяжести, можно получить из характеристик С и WT как

Figure 00000001
где суммирование проводится по всем строкам знакоместа. Для уменьшения погрешности вычисления, связанной с округлением значения центра тяжести строки С до целого значения, имеет смысл использовать более точную формулу
Figure 00000002
Вертикальную координату центра тяжести изображения знакоместа дает формула
Figure 00000003
где суммирование ведется по всем строкам. В результате коррекции положения начала системы координат для проверочной прямой N, значение характеристики CN этой прямой необходимо уменьшить на полученное положение ХМ оси тяжести, направленной в столбцевом направлении.In order to carry out the correction in the case of a one-to-one correspondence between the image lines and the test lines, it is necessary to use not the image itself, but the sets of numerical characteristics obtained for each line of this image. This allows you to reduce the amount of calculations, as previously calculated numerical characteristics already carry information that provides a simple calculation of the position of the axes of gravity and the center of gravity, as well as the upper side of the surrounding rectangle of the symbol. We assume that the test lines correspond to the lines and are numbered by the number N from the highest to the lowest, starting from zero. The line number is its vertical coordinate. Horizontal coordinates are counted from the left edge of familiarity. Then, the horizontal position of the axis of gravity of the image directed in the column direction, in accordance with the generally accepted definition of the axis of gravity, can be obtained from the characteristics C and WT as
Figure 00000001
where the summation is carried out on all lines of familiarity. To reduce the calculation error associated with rounding the value of the center of gravity of the string C to an integer value, it makes sense to use a more accurate formula
Figure 00000002
The vertical coordinate of the center of gravity of the familiarity image is given by the formula
Figure 00000003
where the summation is over all lines. As a result of the correction of the position of the origin of the coordinate system for the test line N, the value of the characteristic C N of this line must be reduced by the obtained position X M of the axis of gravity directed in the column direction.

Если PN=0, то строка изображения N не содержит пикселей, относящихся к символу. Поэтому строка, соответствующая верхней кромке изображения, то есть верхней стороне охватывающего прямоугольника, имеет самый малый номер NS, при котором

Figure 00000004
Для коррекции номеров проверочных прямых по положению охватывающего прямоугольника, нужно из номера каждой из проверочных прямых вычесть NS.If P N = 0, then the image line N does not contain pixels related to the character. Therefore, the line corresponding to the upper edge of the image, that is, the upper side of the enclosing rectangle, has the smallest number N S at which
Figure 00000004
To correct the numbers of the test lines by the position of the enclosing rectangle, subtract N S from the number of each of the test lines.

В символах восточноазиатских слоговых алфавитов, таких как корейский или японский, как правило, отсутствует выделенное направление линий. Для распознавания таких символов предпочтительно часть проверочных прямых ориентировать вдоль строк знакоместа, а другую их часть ориентировать вдоль столбцов. Это обеспечит получение информации о линиях символа, имеющих различные направления.Symbols of East Asian syllabic alphabets, such as Korean or Japanese, as a rule, lack a marked line direction. To recognize such characters, it is preferable to orient part of the test lines along the lines of familiarity, and to orient the other part along the columns. This will provide information about the lines of the symbol having different directions.

Для повышения точности различения разных видов символов со схожим рисунком, в набор критериев могут быть добавлены критерии, не основанные на проверке числовых характеристик. Одним из таких критериев может быть проверка сходства заранее сохраненного эталонного изображения с областью в знакоместе, размер и расположение которой заданы заранее. В качестве меры сходства могут применяться различные известные методы сравнения изображений. Это может быть вычисление попиксельного манхеттенского расстояния между шаблоном и областью на изображении символа, корреляционное сопоставление, тот или иной вид нейронной сети, и другие, известные специалистам в области распознавания изображений. Критерий считается выполненным, если значение показателя сходства оказывается лучше некоторого, заранее заданного порогового значения.To increase the accuracy of distinguishing between different types of characters with a similar pattern, criteria that are not based on checking numerical characteristics can be added to the set of criteria. One of such criteria may be checking the similarity of the previously saved reference image with the region in the familiarity, the size and location of which are set in advance. As a measure of similarity, various known image comparison methods may be used. This may be the calculation of the pixel-by-pixel Manhattan distance between the template and the region in the symbol image, correlation matching, one or another type of neural network, and others known to specialists in the field of image recognition. The criterion is satisfied if the value of the similarity index is better than some predetermined threshold value.

Проверка сходства требует значительно больше времени, чем проверка попадания числовых характеристик в заданные интервалы. Поскольку критерий проверки сходства является только частью набора критериев, то в силу раннего завершения он будет проверяться далеко не всегда. С точки зрения повышения быстродействия проверку этого критерия желательно проводить после проверки всех критериев в наборе, которые основаны на числовых характеристиках. Тогда, время будет затрачено на проверку только при почти полной уверенности в принадлежности символа к определенному виду.Checking the similarities requires significantly more time than checking the numerical characteristics at specified intervals. Since the criterion for checking the similarity is only part of the set of criteria, due to its early completion, it will not always be checked. From the point of view of improving performance, it is desirable to check this criterion after checking all the criteria in the set that are based on numerical characteristics. Then, the time will be spent on checking only with almost complete confidence that the symbol belongs to a certain type.

Аналогичным образом, в набор критериев может быть введен контроль наличия заранее заданного структурного элемента в знакоместе. Например, может проводиться проверка того, является ли определенная пробельная часть в символе островом, полуостровом или проливом. Такие виды проверки, основанные на контроле связности областей, широко применяются в других способах распознавания символов. Однако, так как проверка связности является достаточно медленной операцией, то ее также следует выполнять после проверки всех критериев в наборе, которые основаны на числовых характеристиках.Similarly, control over the presence of a predetermined structural element in familiarity can be introduced into the set of criteria. For example, a check may be made to determine whether a certain whitespace in a symbol is an island, a peninsula or a strait. These types of checks based on the control of connectivity of areas are widely used in other methods of character recognition. However, since checking connectivity is a rather slow operation, it should also be performed after checking all the criteria in the set that are based on numerical characteristics.

Как уже указывалось, вычисление числовых характеристик проверочной прямой хорошо подходит для аппаратной реализации в виде специального сопроцессора, что позволяет значительно увеличить быстродействие распознавания символа с сохранением всех преимуществ от применения заявленного способа. Это достигается тем, что в вычислительной системе устройства для обработки банкнот применяется сопроцессор, содержащийAs already mentioned, the calculation of the numerical characteristics of the test line is well suited for hardware implementation in the form of a special coprocessor, which can significantly increase the speed of character recognition while retaining all the advantages of using the claimed method. This is achieved by the fact that in the computing system of the device for processing banknotes a coprocessor is used, containing

входной порт для получения значений пикселей, соответствующих знакоместу, где указанное значение определяет либо пиксель символа, либо пиксель пробела,input port for receiving pixel values corresponding to familiarity, where the specified value determines either a pixel of a character or a pixel of a space,

решающую логическую схему, выполненную с возможностью обеспечить нахождение набора числовых характеристик для каждой проверочной прямой знакоместа, включающего в себяa decisive logic circuit configured to provide a set of numerical characteristics for each test direct familiarity, including

длину интервала, охватывающего все пиксели символа, расположенные на проверочной прямой,the length of the interval that covers all the pixels of the character located on the test line,

количество интервалов пикселей символа, в которых пиксели символа расположены на проверочной прямой друг за другом,the number of pixel intervals of the symbol in which the pixels of the symbol are located on the test line one after another,

сумму координат пикселей символа, расположенных на проверочной прямой, выраженных в одномерной системе координат проверочной прямой,the sum of the coordinates of the pixels of the symbol located on the test line, expressed in a one-dimensional coordinate system of the test line,

и суммарное число всех пикселей символа, расположенных на проверочной прямой,and the total number of all pixels of the character located on the test line,

и выходной порт для выдачи наборов числовых характеристик, соответствующих строкам знакоместа.and an output port for issuing sets of numerical characteristics corresponding to familiarity strings.

Вычислительная система устройства для обработки банкнот содержит центральный процессор, память и интерфейсы связи. Сопроцессор подключается к вычислительной системе и берет на себя нагрузку по формированию наборов числовых характеристик для проверочных прямых, которые заданы для знакоместа. Остальные шаги заявленного способа выполняются центральным процессором вычислительной системы.The computer system of the banknote processing device includes a central processor, memory and communication interfaces. The coprocessor connects to the computer system and takes the burden of forming sets of numerical characteristics for the test lines that are set for familiarity. The remaining steps of the claimed method are performed by the central processor of the computing system.

Отметим, что вместо числовой характеристики центра С в сопроцессоре формируется сумма SC координат пикселей символа, расположенных на проверочной прямой, выраженных в одномерной системе координат проверочной прямой. Из этой суммы величина С непосредственно получается при делении на WT. Деление, по завершении обработки проверочной прямой, может производиться либо в центральном процессоре, либо в сопроцессоре. Возможность вынести деление из сопроцессора связана с тем, что быстродействующие схемы деления сложны по структуре, а деление может быстрее выполняться в центральном процессоре в связи с более высокой тактовой частотой его ядра.Note that instead of the numerical characteristic of the center C, a sum of SC coordinates of the symbol pixels located on the check line, expressed in a one-dimensional coordinate system of the check line, is formed in the coprocessor. From this sum, the value C is directly obtained by dividing by WT. Division, upon completion of processing the test line, can be performed either in the central processor or in the coprocessor. The ability to remove fission from the coprocessor is due to the fact that high-speed fission schemes are complex in structure, and fission can be faster performed in the central processor due to the higher clock frequency of its core.

Решающая логическая схема, специально разработанная для одновременного формирования всех четырех числовых характеристик, может обрабатывать по одному пикселю за такт без дополнительных накладных расходов на манипуляцию с данными. Это превосходит быстродействие центрального процессора общего назначения, в котором, для обработки одного пикселя нужно выполнить несколько команд в связи с необходимостью дополнительной внутренней пересылки данных между элементами процессора.The crucial logic circuit, specially designed for the simultaneous formation of all four numerical characteristics, can process one pixel per cycle without additional overhead for data manipulation. This is superior to the performance of a general-purpose central processor, in which, for processing a single pixel, several commands must be executed due to the need for additional internal data transfer between processor elements.

Входной порт может быть выполнен любым способом, обеспечивающим нужное быстродействие. Например, он может быть подключен к передающему порту межпроцессорной связи, или к контроллеру прямого доступа к памяти, либо же работать как мастер на шине с самостоятельной генерацией адресной последовательности. Если необходима подача пикселей, расположенных на наклонной прямой, то соответствующая выборка значений из памяти может быть реализована за счет сложных режимов генерации адреса при прямом доступе к памяти. А именно, речь идет о двумерной генерации адресов либо о прямом доступе по связанному списку адресов.The input port can be performed in any way that provides the desired performance. For example, it can be connected to the transmitting port of interprocessor communication, or to the controller of direct access to memory, or work as a master on the bus with independent generation of the address sequence. If it is necessary to supply pixels located on an oblique straight line, then the corresponding selection of values from the memory can be realized due to the complex modes of address generation with direct access to the memory. Namely, we are talking about two-dimensional generation of addresses or direct access to a linked list of addresses.

Выходной порт может использовать те же механизмы передачи данных, что и входной порт. Так как объем передаваемых данных выходного порта обычно меньше, чем объем входных данных, для выходного порта может быть разумным чтение результатов за счет обращения центрального процессора к регистрам сопроцессора.The output port can use the same data transfer mechanisms as the input port. Since the amount of transmitted data of the output port is usually less than the amount of input data, it may be reasonable for the output port to read the results by accessing the coprocessor registers from the central processor.

В связи с независимостью обработки пикселей, соответствующих отдельным проверочным прямым, решающая логическая схема может быть выполнена с возможностью одновременной обработки пикселей, находящихся на нескольких проверочных прямых. Это достигается размножением сегмента решающей схемы, обрабатывающего данные одной прямой, на несколько экземпляров. Производительность самой решающей схемы растет пропорционально количеству таких экземпляров. Предельно достижимое быстродействие, чаще всего, ограничивается уже не быстродействием логической схемы, а скоростью подачи данных во входной порт и скоростью откачки данных из выходного порта.Due to the independence of processing pixels corresponding to individual test lines, the decisive logic circuit can be configured to simultaneously process pixels located on several test lines. This is achieved by multiplying the segment of the decision circuit processing the data of one straight line by several instances. The performance of the most crucial scheme grows in proportion to the number of such instances. The maximum achievable speed, most often, is no longer limited by the speed of the logic circuit, but by the speed of data supply to the input port and the speed of pumping data from the output port.

Логическая схема для обработки пикселей, находящихся на одной проверочной прямой, может содержать конечный автомат, в котором обеспечена последовательная подача на вход значений пикселей, находящихся на проверочной прямой. Подаваемое входное значение определяет переход между состояниями автомата, а граф переходов обеспечивает формирование числовых характеристик проверочной прямой во внутренних регистрах автомата. Конечный автомат обрабатывает по одному пикселю за такт.The logic circuit for processing pixels located on one test line may contain a state machine, in which a sequential input of pixel values located on the test line is provided. The supplied input value determines the transition between the states of the automaton, and the transition graph provides the formation of numerical characteristics of the test line in the internal registers of the automaton. The state machine processes one pixel per cycle.

Однако, логическая схема для обработки пикселей, находящихся на проверочной прямой, может выполняться и в виде комбинационной схемы, поскольку значения числовых характеристик определяются исключительно значениями пикселей. При такой реализации схема обрабатывает все пиксели на проверочной прямой за один такт, что дает многократное ускорение по сравнению с реализацией в виде конечного автомата.However, the logic circuit for processing pixels located on the test line can also be implemented as a combinational circuit, since the values of the numerical characteristics are determined solely by the values of the pixels. With this implementation, the circuit processes all the pixels on the test line in one cycle, which gives multiple acceleration compared to the implementation in the form of a finite state machine.

Фильтрация пикселей на проверочной прямой может быть реализована в решающей логической схеме аналогично тому, как фильтрация ранее была описана в отношении заявленного способа. Очень часто повреждения цифрового изображения проявляются в соседних пикселах на смежных проверочных прямых. Данную особенность можно использовать для более точного выявления дефектов. С этой целью, фильтрация может анализировать соотношения значений соседних пикселей, находящихся на смежных проверочных прямых.Filtering pixels on the test line can be implemented in a decisive logic circuit in the same way as filtering was previously described in relation to the claimed method. Very often, digital image damage appears in adjacent pixels on adjacent check lines. This feature can be used to more accurately identify defects. To this end, filtering can analyze the ratio of the values of neighboring pixels located on adjacent test lines.

Заявленный способ предназначен, прежде всего, для распознавания серийных номеров на банкнотах. Однако, он может успешно использоваться для распознавания другой текстовой информации, выполненной заранее известным шрифтом, например, указания номинала, версии банкноты и года ее эмиссии. Также, он может применяться для обработки надписей в неденежных документах, выполненных заранее известным шрифтом.The claimed method is intended primarily for the recognition of serial numbers on banknotes. However, it can be successfully used to recognize other text information made in a pre-known font, for example, indicating the denomination, version of the banknote and the year of its issue. Also, it can be used to process inscriptions in non-monetary documents made in a pre-known font.

На Фиг. 1 показан принцип нахождения числовых характеристик, соответствующих проверочной прямой.In FIG. 1 shows the principle of finding numerical characteristics corresponding to a test line.

Фиг. 2 иллюстрирует массив числовых характеристик, кодирующих строки символа, и возможность обратного преобразования от массива числовых характеристик к изображению символа.FIG. 2 illustrates an array of numerical characteristics encoding character strings and the possibility of the inverse transformation from an array of numerical characteristics to a symbol image.

На Фиг. 3 показана взаимосвязь между оконным преобразованием Фурье и числовыми характеристиками.In FIG. Figure 3 shows the relationship between the windowed Fourier transform and numerical characteristics.

На Фиг. 4 представлен граф переходов конечного автомата, реализующего вычисление числовых характеристик с фильтрацией дефектных пикселей. На Фиг. 5 показано изображение символа с дефектными пикселями.In FIG. Figure 4 shows the transition graph of a finite state machine that implements the calculation of numerical characteristics with filtering of defective pixels. In FIG. 5 shows an image of a symbol with defective pixels.

На Фиг. 6 изображена структурная схема реализации сопроцессора для вычисления числовых характеристик.In FIG. 6 shows a block diagram of a coprocessor implementation for calculating numerical characteristics.

На Фиг. 7 показана коррекция привязки координат изображения символа.In FIG. 7 shows the correction of the coordinates of the image of the symbol.

На Фиг. 8 и Фиг. 9 показан набор критериев и результаты проверки критериев для изображений различных символов.In FIG. 8 and FIG. 9 shows a set of criteria and the results of checking criteria for images of various symbols.

На Фиг. 10 показана пошаговая последовательность распознавания символа.In FIG. 10 shows a step-by-step character recognition sequence.

На Фиг. 11 изображена пошаговая последовательность обработки банкноты в машине для обработки банкнот.In FIG. 11 shows a step-by-step banknote processing sequence in a banknote processing machine.

Пример реализации заявленного способа описывает его выполнение при помощи счетно-сортировальной машины, содержащей: банкиотопроводный механизм, обеспечивающий перемещение банкнот из подающего кармана в приемные карманы; систему датчиков, позволяющую сканировать цифровое изображение банкноты по мере ее движения в банкнотопроводном механизме; и встроенную вычислительную систему. Вычислительная система, в свою очередь, содержит центральный процессор, память, пользовательский интерфейс, а также периферические устройства и электрические схемы для подключения датчиков и приводов банкнотопроводного механизма.An example implementation of the inventive method describes its implementation using a counting and sorting machine, comprising: a tapping mechanism, providing movement of banknotes from the supply pocket into the receiving pockets; a sensor system that allows you to scan a digital image of a banknote as it moves in the banknote mechanism; and embedded computing system. The computing system, in turn, contains a central processor, memory, user interface, as well as peripheral devices and electrical circuits for connecting sensors and drives of the banknote mechanism.

При движении в банкнотопроводном механизме, банкноту сканируют в проходящем красном и проходящем инфракрасном излучении, а также с обеих сторон в отраженном белом излучении. При этом, получают цифровые изображения низкого разрешения (25 линий на дюйм). Для отраженного белого излучения, дополнительно к названным, получают цифровые изображения высокого разрешения (200 линий на дюйм). При сканировании банкноты измеряют угол и направление ее перекоса. Далее, производят поворот цифровых изображений низкого разрешения на тот же угол, но в противоположную сторону, для компенсации перекоса изображения.When moving in a banknote mechanism, a banknote is scanned in transmitted red and transmitted infrared radiation, and also on both sides in reflected white radiation. At the same time, low-resolution digital images (25 lines per inch) are obtained. For reflected white radiation, in addition to the above, receive high-resolution digital images (200 lines per inch). When scanning banknotes, the angle and direction of its bias are measured. Next, rotate the low-resolution digital images at the same angle, but in the opposite direction, to compensate for the distortion of the image.

Цифровые изображения низкого разрешения используют для определения валюты, номинала и ориентации банкноты, а также для проверки ее подлинности. Для этого применяют способ, описанный в патенте RU 2438182, опубл. 27.12.2011, МПК G07D 7/00. Сначала, осуществляют предварительную классификацию на основе размера цифрового изображения банкноты. Таким образом, определяют множество возможных классов, к которым может относиться банкнота. Далее, выполняется детальная проверка принадлежности банкноты к выбранным возможным классам. Цифровые изображения банкноты последовательно проверяются на соответствие отдельным наборам, состоящим из множества критериев, где каждый набор соответствует определенному классу. В критериях проверяется, попадает ли в заданный интервал значений отношение средних интенсивностей цифровых изображений в заданных зонах банкноты. Проверка набора критериев прекращается, как только обнаруживается невыполнение хотя бы одного из составляющих его критериев. Если все критерии в наборе оказываются выполненными, то проверку банкноты прекращают и делают вывод о ее принадлежности к тому классу, которому соответствует этот набор. Если же ни в одном наборе критериев не удалось выполнить все критерии, то считают банкноту нераспознанной.Low resolution digital images are used to determine the currency, denomination and orientation of the banknote, as well as to verify its authenticity. To do this, use the method described in patent RU 2438182, publ. 12/27/2011, IPC G07D 7/00. First, a preliminary classification is performed based on the size of the digital image of the banknote. In this way, a plurality of possible classes are identified that a banknote may relate to. Further, a detailed verification of the banknote belonging to the selected possible classes is performed. Digital images of banknotes are sequentially checked for compliance with individual sets, consisting of many criteria, where each set corresponds to a specific class. In the criteria, it is checked whether the ratio of the average intensities of digital images in the specified zones of the banknote falls into the specified interval of values. The verification of the set of criteria is terminated as soon as the failure to at least one of its constituent criteria is detected. If all the criteria in the set are fulfilled, then the banknote check is stopped and they conclude that it belongs to the class to which this set corresponds. If none of the criteria set failed to fulfill all the criteria, then the banknote is considered unrecognized.

Место расположения серийного номера для каждой разновидности банкноты четко определено банком-эмитентом. Как только становится известной валюта, номинал и ориентация банкноты, можно сделать вывод о месте расположения серийного номера банкноты в цифровом изображении высокого разрешения. По завершении распознавания банкноты, из цифрового изображения высокого разрешения вырезают участок, содержащий изображение серийного номера. Вместе с вырезанием, цифровое изображение серийного номера дополнительно поворачивают на известный угол перекоса с целью компенсации перекоса, возникшего в ходе сканирования.The location of the serial number for each type of banknote is clearly defined by the issuing bank. As soon as the currency, denomination and orientation of the banknote becomes known, we can conclude about the location of the serial number of the banknote in a high-resolution digital image. Upon completion of banknote recognition, a portion containing a serial number image is cut from a high-resolution digital image. Together with cutting, the digital image of the serial number is additionally rotated at a known skew angle in order to compensate for the skew that occurred during the scan.

Затем, цифровое изображение серийного номера разбивают на прямоугольные знакоместа, где каждое знакоместо соответствует отдельному символу. Для определенности, здесь описывается разбиение серийного номера, строка которого ориентирована в горизонтальном направлении. Область расположения каждого символа определяют по проекции цифрового изображения серийного номера на горизонтальную ось. В местах расположения символов, более темных, чем окружающий их фон, проекция имеет минимальные значения, а максимальные значения проекции соответствуют промежуткам между символами. Таким образом, находят вертикальные границы между зонами расположения символов на серийном номере. Далее, для каждой такой зоны в отдельности определяют проекцию на вертикальную ось, и по этой проекции находят вертикальные границы символа. На основе найденных границ, знакоместо совмещают с изображением символа таким образом, чтобы символ целиком располагался внутри знакоместа. Если строка серийного номера ориентирована вертикально, то разбиение выполняют аналогичным образом, но с взаимной заменой вертикального и горизонтального направления для всех действий. Разделение строк на символы при помощи проекции широко применяется в распознавании документов и хорошо известно специалистам в этой области техники.Then, the digital image of the serial number is divided into rectangular familiarity, where each familiarity corresponds to a separate character. For definiteness, the breakdown of the serial number is described here, the line of which is oriented in the horizontal direction. The location area of each symbol is determined by the projection of the digital image of the serial number on the horizontal axis. In the locations of characters that are darker than the surrounding background, the projection has minimum values, and the maximum values of the projection correspond to the gaps between the symbols. In this way, vertical boundaries are found between the character location areas on the serial number. Further, for each such zone, the projection onto the vertical axis is individually determined, and the vertical borders of the symbol are found from this projection. Based on the found boundaries, familiarity is combined with the image of the symbol so that the symbol is entirely located inside the familiarity. If the line of the serial number is oriented vertically, then the splitting is performed in the same way, but with the mutual replacement of the vertical and horizontal directions for all actions. The separation of lines into characters using projection is widely used in document recognition and is well known to specialists in this field of technology.

Далее, проводят бинаризацию изображения знакоместа. Для нахождения порога бинаризации используют хорошо известный метод Отсу. Тем пикселам, которые относятся к символам, присваивают значение 0, а пробельным пикселам присваивают значение 255. Пример полученного в результате этого изображения 1 знакоместа приведен на Фиг. 1. После бинаризации получают массив числовых характеристик для проверочных прямых, которые в описываемой реализации совпадают со строками изображения. Между строками изображения знакоместа и проверочными прямыми существует взаимно-однозначное соответствие: каждой строке изображения знакоместа соответствует проверочная прямая, и каждой проверочной прямой соответствует строка изображения знакоместа. Поэтому, в дальнейшем описании мы не будем делать существенной разницы между строками изображения знакоместа и проверочными прямыми.Next, binarization of the familiarity image is carried out. The well-known Otsu method is used to find the binarization threshold. Those pixels that relate to characters are assigned a value of 0, and whitespace pixels are assigned a value of 255. An example of the familiarity image 1 resulting from this is shown in FIG. 1. After binarization, an array of numerical characteristics is obtained for the test lines, which in the described implementation coincide with the image lines. There is a one-to-one correspondence between the lines of the familiarity image and the test lines: each line of the familiarity image corresponds to a check line, and each test line corresponds to a familiarity image line. Therefore, in the further description we will not make a significant difference between the lines of the familiarity image and the test lines.

Покажем получение числовых характеристик на примере одной проверочной прямой. Прямая 2, проходящая вдоль строки изображения, пересекает символ таким образом, что интервал W, охватывающий все пиксели символа на этой прямой, равен 16. При этом, количество Р интервалов пикселей, в которых пиксели символа расположены друг за другом, равно 2. Общее количество WT пикселей символа на прямой, равно 9. Центр тяжести С пикселей символа на прямой равен 7, причем, отсчет координат центра тяжести ведется от левого края знакоместа.Let us show the receipt of numerical characteristics by the example of one test line. Line 2, which runs along the image line, intersects the symbol in such a way that the interval W, covering all the pixels of the symbol on this line, is 16. Moreover, the number P of pixel intervals in which the pixels of the symbol are located one after another is 2. The total number WT of the pixels of the symbol on the line is 9. The center of gravity C of the pixels of the symbol on the line is 7, and the coordinates of the center of gravity are counted from the left edge of the familiarity.

Массив полученных числовых характеристик для каждой строки изображения 1 показан на Фиг. 2. Колонка значений N указывает номер каждой строки, отсчитываемый от самой верхней строки знакоместа. На том же рисунке показано изображение знакоместа 4, восстановленное на основе массива числовых характеристик. Для этого, интервал пикселей в каждой строке, имеющий центр С и ширину W, заполнялся числом Р черных отрезков одинаковой длины WT/P пикселей, равномерно расположенных с одинаковым шагом W/P. Из-за округления до целого значения, длина отрезков в восстановленной строке может различаться на один пиксель. Можно увидеть, что символ сохранил форму и полную узнаваемость, несмотря на небольшие отличия от исходного цифрового изображения 1. Это говорит о том, что кодирование изображения символа при помощи четырех числовых характеристик Р, W, С и WT обладает хорошей полнотой, а потери информации при кодировании несущественны для цели распознавания символа.An array of obtained numerical characteristics for each row of image 1 is shown in FIG. 2. The column of values of N indicates the number of each line, counted from the top line of familiarity. The same figure shows the image of familiarity 4, restored on the basis of an array of numerical characteristics. To do this, the pixel interval in each row, having center C and width W, was filled with the number P of black segments of the same length WT / P of pixels uniformly spaced with the same W / P pitch. Due to rounding to an integer value, the length of the segments in the restored row may differ by one pixel. You can see that the symbol retained its shape and full recognition, despite slight differences from the original digital image 1. This suggests that the encoding of the symbol image using the four numerical characteristics P, W, C and WT has good completeness, and information loss with encoding is not essential for the purpose of character recognition.

Заметим, что при единственном отрезке пикселей символа на прямой, то есть когда Р=1, значения W и WT всегда совпадают.Note that for a single segment of the pixels of the symbol on the line, that is, when P = 1, the values of W and WT always coincide.

Как уже говорилось, кодирование строки при помощи числовых характеристик Р, W, С и WT очень близко к кодированию строки с применением оконного преобразования Фурье. Связь между этими способами кодирования показана на Фиг. 3 на примере приведения базисной функции оконного преобразования Фурье к набору числовых характеристик Р, W, С и WT. Прямоугольное окно 5 шириной Т=20 пикселей определяет оконную функцию преобразования. Для простоты объяснения будем считать, что левый край окна соответствует координате 0 на проверочной прямой. Вне окна, базисная функция имеет нулевой уровень, показанный положением прямой 6. Внутри окна, базисная функция

Figure 00000005
представляет собой синусоиду, смещенную по вертикали на постоянную составляющую А и ограниченную, в нашем примере, количеством периодов K=2,5. Для чистой синусоиды 7 значение А=0. При А=А1>0 график 8 базисной функции проходит выше, а при А=А2<0 график 9 проходит ниже синусоиды 7.As already mentioned, coding a string using the numerical characteristics of P, W, C, and WT is very close to coding a string using the window Fourier transform. The relationship between these encoding methods is shown in FIG. 3 by the example of reducing the basis function of the window Fourier transform to a set of numerical characteristics P, W, C, and WT. A rectangular window 5 with a width of T = 20 pixels defines the window conversion function. For simplicity of explanation, we assume that the left edge of the window corresponds to the coordinate 0 on the test line. Outside the window, the basis function has a zero level, indicated by the position of line 6. Inside the window, the basis function
Figure 00000005
represents a sinusoid, shifted vertically by a constant component A and limited, in our example, by the number of periods K = 2.5. For a pure sinusoid 7, the value A = 0. For A = A 1 > 0, graph 8 of the basis function runs higher, and for A = A 2 <0, graph 9 passes below sinusoid 7.

Проведем квантование и бинаризацию базисной функции таким образом, чтобы при ее отрицательном значении пиксели получали черный цвет, а для значений больше либо равных нулю пикселям назначался белый цвет. Размер пикселя нами принят равным 1. При бинаризации функций 8, 7, 9 получаются строки 10, 11, 12 пикселей, соответственно. На рисунке приведены значения характеристик Р, W, С и WT для каждой из полученных строк. Как видно из этих значений, числовые характеристики определяются параметрами базисной функции. Значение ширины W примерно равно размеру окна Т. Количество штрихов связано с количеством периодов внутри окна:

Figure 00000006
Между постоянной составляющей А и весом WT существует нелинейная, но монотонная зависимость: при A=1 WT=0, при А=0 WT=Т/2 и при А=-1 WT=T. Положение середины окна соответствует центру С каждой строки пикселей.We quantize and binarize the basis function in such a way that when it is negative, the pixels get black, and for values greater than or equal to zero, the pixels are assigned white. The pixel size is assumed to be 1. When binarizing functions 8, 7, 9, rows of 10, 11, 12 pixels are obtained, respectively. The figure shows the values of the characteristics P, W, C, and WT for each of the obtained rows. As can be seen from these values, the numerical characteristics are determined by the parameters of the basis function. The value of the width W is approximately equal to the size of the window T. The number of strokes is related to the number of periods inside the window:
Figure 00000006
There is a non-linear but monotonic relationship between the constant component A and the weight WT: for A = 1 WT = 0, for A = 0 WT = T / 2, and for A = -1 WT = T. The middle position of the window corresponds to the center C of each row of pixels.

Таким образом, с определенной степенью приближения, можно сказать, что кодирование строки через числовые характеристики эквивалентно кодированию при помощи наиболее значимой базисной функции оконного преобразования Фурье. То есть, кодирование при помощи Р, W, С и WT является, на самом деле, вариантом локального частотного анализа, при котором определяется доминантная пространственная частота, интервал ее локализации, и уровень постоянной составляющей. В отличие от реального оконного преобразования Фурье, вычисление числовых характеристик происходит очень быстро, что дает существенное преимущество по быстродействию для всего способа распознавания символа.Thus, with a certain degree of approximation, we can say that encoding a string through numerical characteristics is equivalent to encoding using the most significant basis function of the window Fourier transform. That is, coding with P, W, C, and WT is, in fact, a variant of the local frequency analysis, in which the dominant spatial frequency, the interval of its localization, and the level of the constant component are determined. Unlike a real window Fourier transform, the calculation of numerical characteristics is very fast, which gives a significant speed advantage for the entire method of character recognition.

Вычисление числовых характеристик для каждой строки цифрового изображения производится при помощи конечного автомата, граф переходов которого изображен на Фиг. 4. В приводимом примере, конечный автомат реализован программным образом, однако, как будет показано далее, он также может быть выполнен в виде аппаратного сопроцессора.The calculation of the numerical characteristics for each line of the digital image is performed using a state machine, the transition graph of which is shown in FIG. 4. In the given example, the state machine is implemented in software, however, as will be shown later, it can also be implemented as a hardware coprocessor.

Конечный автомат имеет начальное состояние S0, и четыре рабочих состояния S1-S4. После включения, автомат сразу же переходит в состояние S1 (Пробел). Автомат анализирует значения пикселей, один за другим последовательно выбираемые из строки цифрового изображения. Переход из одного рабочего состояния в другое осуществляется при выборке каждого пикселя, в зависимости от его значения.The state machine has an initial state S0, and four operating states S1-S4. After switching on, the machine immediately goes into state S1 (Space). The machine analyzes the pixel values, one after another, sequentially selected from the line of the digital image. The transition from one working state to another is carried out when each pixel is selected, depending on its value.

Автомат имеет внутренние переменные для ширины W, числа штрихов Р, веса WT и суммы координат черных пикселей SC. По ходу обработки строки, эти переменные накапливают соответствующие значения числовых характеристик. Из величины SC центр С вычисляется по формуле C=SC/WT в самом конце обработки строки. Начальные значения этих переменных равны нулю. Также, в автомате есть внутренние переменные для проведения фильтрации дефектных пикселей. Переменная FC представляет собой счетчик пикселей фильтруемого интервала. Она имеет начальное значение 2 и равна предельно допустимой длине фильтруемого интервала минус 1. Переменная FA накапливает сумму координат пикселей, входящих в фильтруемый интервал. Она имеет нулевое начальное значение.The automaton has internal variables for the width W, the number of strokes P, the weight WT, and the sum of the coordinates of the black pixels SC. In the course of processing the string, these variables accumulate the corresponding values of numerical characteristics. From the value of SC, the center C is calculated by the formula C = SC / WT at the very end of the line processing. The initial values of these variables are zero. Also, the machine has internal variables for filtering defective pixels. The FC variable is the pixel counter of the filtered interval. It has an initial value of 2 and is equal to the maximum permissible length of the filtered interval minus 1. The variable FA accumulates the sum of the coordinates of the pixels included in the filtered interval. It has a zero initial value.

С момента начала анализа строки, приход каждого пикселя увеличивает на 1 значение внутренней переменной PC, в которой хранится координата очередного пикселя. Переменная PC имеет начальное значение, равное 0. То же самое выполняется и для промежуточной переменной WC, которая служит для подсчета числовой характеристики ширины.From the moment the line analysis begins, the arrival of each pixel increases by 1 the value of the internal variable PC, which stores the coordinate of the next pixel. The variable PC has an initial value of 0. The same is true for the intermediate variable WC, which serves to calculate the numerical characteristic of the width.

В начале анализа строки автомат находится в состоянии S1 (Пробел). Это состояние соответствует устойчивому состоянию обнаруженного пробела в строке. Пробел может иметь длину несколько пикселей. Если в этом состоянии выбирается белый пиксель (переход Т1), то считается, что длина пробела увеличилась на один пиксель, и автомат остается в состоянии S1.At the beginning of line analysis, the machine is in state S1 (Space). This state corresponds to the steady state of a detected space in the line. A space may be several pixels long. If a white pixel is selected in this state (transition T1), then it is considered that the space length has increased by one pixel, and the automaton remains in state S1.

Если же выбирается черный пиксель (переход Т5), то автомат переходит в состояние S3 (Начало отрезка). Это состояние соответствует процессу фильтрации, при котором еще не понятно, является ли черный пиксель началом черного отрезка на пересечении с линией символа, или шумовым пикселем, возникшим из-за черного дефекта изображения. При входе в S3 переменная FC сбрасываются к начальному значению, а в FA координата текущего пикселя. Если очередной выбранный пиксель оказывается белым, то считается, что закончился черный дефект изображения, и по переходу Т4 автомат возвращается в состояние S1. Если очередной пиксель черный, и предельное значение фильтруемого интервала еще не достигнуто, то автомат остается в состоянии S3 (переход Т8). По каждому переходу Т8 счетчик FC увеличивается на единицу, а к накопительной переменной FA прибавляется значение координаты пришедшего пикселя. Если же предельное значение достигнуто, то по приходу черного пикселя (переход Т9) считается, что дефекта изображения не было, и автомат переходит в состояние S4 (Отрезок).If a black pixel is selected (transition T5), then the machine goes into state S3 (beginning of the segment). This state corresponds to the filtering process, in which it is not yet clear whether the black pixel is the beginning of the black segment at the intersection with the symbol line, or the noise pixel due to a black image defect. When entering S3, the FC variable is reset to the initial value, and in FA the coordinate of the current pixel. If the next selected pixel turns out to be white, then it is considered that the black image defect has ended, and upon transition T4, the machine returns to state S1. If the next pixel is black, and the limit value of the filtered interval has not yet been reached, then the automaton remains in state S3 (transition T8). For each transition T8, the counter FC is increased by one, and the coordinate of the incoming pixel is added to the storage variable FA. If the limit value is reached, then upon the arrival of the black pixel (transition T9), it is assumed that there was no image defect, and the machine goes into state S4 (Segment).

В момент перехода Т9, происходит увеличение переменной Р на 1, что соответствует обнаружению нового черного отрезка. Если это первый обнаруженный черный отрезок (то есть Р=1), то значение счетчика FC записывается в промежуточный счетчик ширины WC. Дополнительно, значение FC по этому переходу всегда прибавляется к WT. Значение накопительной переменной FA и координата текущего пикселя прибавляются к SC. Все эти действия позволяют правильно учесть в числовых характеристиках те пиксели, которые анализировались в состоянии S3 и оказались принадлежащими черному отрезку. Переход Т4 в состояние S1 игнорирует накопленные значения FC и FA, поскольку интервал фильтрации, пройденный в состоянии S3, относится к пробелу.At the moment of transition T9, the variable P increases by 1, which corresponds to the discovery of a new black segment. If this is the first detected black line (that is, P = 1), then the value of the counter FC is recorded in the intermediate counter width WC. Additionally, the FC value for this transition is always added to WT. The value of the storage variable FA and the coordinate of the current pixel are added to SC. All these actions allow us to correctly take into account in the numerical characteristics those pixels that were analyzed in the S3 state and turned out to belong to the black segment. The transition of T4 to state S1 ignores the accumulated values of FC and FA, since the filtering interval traversed in state S3 refers to a space.

В состоянии S4 (Отрезок) приход каждого черного пикселя не изменяет состояния (переход Т10), поскольку черный отрезок продолжается. По этому переходу, переменная WT увеличивается на 1, переменная SC увеличивается на значение координаты текущего пикселя, а в переменную ширины W записывается значение временного счетчика ширины WC, уменьшенное на 1. При появлении белого пикселя автомат выполняет переход Т6 в состояние S2 (Начало пробела).In state S4 (Segment), the arrival of each black pixel does not change state (transition T10), since the black segment continues. According to this transition, the WT variable is increased by 1, the SC variable is increased by the coordinate value of the current pixel, and the value of the temporary counter of the WC width, written down by 1, is written into the W variable. When the white pixel appears, the machine transits T6 to state S2 (Start space) .

В состоянии S2 производится фильтрация с обнаружением шумовых белых пикселей. При входе в S3 переменная FC сбрасываются к начальному значению, а в FA заносится координата текущего пикселя. При приходе белого пикселя, если предельное значение интервала фильтрации пока не достигнуто (переход Т3), то автомат остается в состоянии S2. По каждому переходу Т3 счетчик FC увеличивается на единицу, а к накопительной переменной FA прибавляется значение координаты этого пикселя. Если пришел белый пиксель и предельное значение достигнуто (переход Т2), то автомат переходит в состояние S1 (Пробел). Этим подтверждается завершение черного отрезка без белых дефектных пикселей. Если же пришел черный пиксель, это говорит о том, что предыдущий белый пиксель был дефектным, поэтому, автомат возвращается (переход Т7) в состояние S4.In state S2, filtering is performed with the detection of white noise pixels. Upon entering S3, the FC variable is reset to the initial value, and the coordinate of the current pixel is entered in FA. When a white pixel arrives, if the limit value of the filtering interval has not yet been reached (transition T3), then the automaton remains in state S2. For each transition T3, the counter FC is increased by one, and the coordinate value of this pixel is added to the storage variable FA. If a white pixel arrives and the limit value is reached (transition T2), then the machine goes into state S1 (Space). This confirms the completion of the black segment without white defective pixels. If a black pixel arrives, this indicates that the previous white pixel was defective, therefore, the machine returns (transition T7) to state S4.

В момент перехода Т7, значение FC всегда прибавляется к WT. Значение накопительной переменной FA и координата текущего пикселя прибавляются к SC. Все эти действия позволяют правильно учесть в числовых характеристиках те пиксели, которые анализировались в состоянии S2 и оказались принадлежащими черному отрезку. Переход Т2 в состояние S1 (Пробел) игнорирует накопленные значения FC и FA, поскольку интервал фильтрации, пройденный в состоянии S2, относится к пробелу.At the time of T7 transition, the FC value is always added to WT. The value of the storage variable FA and the coordinate of the current pixel are added to SC. All these actions allow us to correctly take into account in the numerical characteristics those pixels that were analyzed in state S2 and turned out to belong to the black segment. The transition of T2 to state S1 (Space) ignores the accumulated values of FC and FA, since the filtering interval traveled in state S2 refers to a space.

Когда на вход автомата был подан последний пиксель в строке, анализ строки прекращают, и накопленные значения Р, W, C=SC/WT и WT сохраняют в массиве числовых характеристик. При Р=0 значения остальных числовых характеристик W, С и WT не имеют смысла, и им присваивают нулевые значения.When the last pixel in the line was applied to the input of the machine, the line analysis is stopped, and the accumulated values of P, W, C = SC / WT and WT are stored in an array of numerical characteristics. At P = 0, the values of the remaining numerical characteristics W, C, and WT do not make sense, and they are assigned zero values.

Покажем на примере анализ строки с номером N=11 на изображении знакоместа 13, как показано на Фиг. 5. Строка N=11 имеет дефекты в пикселях с номерами р7 и p13. Предел интервала фильтрации установлен в значение 2, чему соответствует только один допустимый дефектный пиксель.Let us show by example an analysis of the line with the number N = 11 in the familiarity image 13, as shown in FIG. 5. Line N = 11 has defects in pixels with numbers p7 and p13. The filtering interval limit is set to 2, which corresponds to only one valid defective pixel.

Анализ начинается в состоянии S1 (Пробел) с белого пикселя р0. Приход следующего черного пикселя p1 переводит автомат по переходу Т5 в состояние S3 (Начало отрезка). Накопительные переменные получают значения FC=2 (начальное) и FA=1 (координата этого пикселя). Следующий пиксель р2 тоже является черным, при этом, предельная длина интервала фильтрации 2 уже достигнута. Происходит переход Т9 в состояние S4 (Отрезок). Значение Р увеличивается на 1, то есть, Р=1. По этому переходу, так как он произошел первый раз, в промежуточный счетчик ширины WC записывается значение FC: WC=2. Также, к WT прибавляется FC, так что, WT=2. Значение SC получается как сумма координаты текущего пикселя 3 и FA, то есть, SC=3. При подаче последующих черных пикселей р3 и р4 состояние S4 сохраняется, и происходит переход Т8. В результате, получается WC=4, WT=4 и SC=T0.The analysis begins in state S1 (Space) with a white pixel p0. The arrival of the next black pixel p1 puts the automaton at the transition of T5 to state S3 (Start of the segment). Cumulative variables get the values FC = 2 (initial) and FA = 1 (coordinate of this pixel). The next pixel p2 is also black, while the maximum length of the filtering interval 2 has already been reached. There is a transition of T9 to state S4 (Line). The value of P increases by 1, that is, P = 1. According to this transition, since it happened the first time, the FC value is written to the intermediate WC width counter: WC = 2. Also, FC is added to WT, so, WT = 2. The SC value is obtained as the sum of the coordinates of the current pixel 3 and FA, that is, SC = 3. When subsequent black pixels p3 and p4 are supplied, state S4 is maintained, and transition T8 occurs. As a result, we get WC = 4, WT = 4 and SC = T0.

Белый пиксель р5 запускает переход Т6 автомата в состояние S2 (начало пробела), и в переменную ширины W записывается значение временного счетчика ширины WC: W=WC-1=4. Интервал фильтрации начинается сначала, поэтому, устанавливается FC=2 (начальное) и FA=5 (координата этого пикселя). Следующий пиксел р6 тоже оказывается белым, и фиксируется предельная длина интервала фильтрации с переходом Т2 в состояние S1 (Пробел). Однако, следующий пиксел р7 оказывается черным, и автомат (Т5) переходит в состояние S3 (Начало отрезка). Дальнейший пиксель р8 является белым, поэтому автомат по переходу Т4 вновь возвращается к состоянию S1 (Пробел). Таким образом, была проверена фильтрация дефектного пикселя р7. Дальнейшие белые пиксели р9 и р10 не изменяют состояния автомата и обрабатываются по переходу Т1.The white pixel p5 starts the transition of the automaton T6 to state S2 (the beginning of a space), and the value of the temporary counter of width WC is written into the variable of width W: W = WC-1 = 4. The filtering interval starts again, therefore, set FC = 2 (initial) and FA = 5 (the coordinate of this pixel). The next pixel p6 is also white, and the maximum length of the filtering interval is fixed with the transition of T2 to state S1 (Space). However, the next pixel p7 turns out to be black, and the automaton (T5) goes into state S3 (Beginning of a segment). The further pixel p8 is white, therefore, the T4 transition automaton again returns to state S1 (Space). Thus, the filtering of the defective pixel p7 was checked. Further white pixels p9 and p10 do not change the state of the automaton and are processed by the transition T1.

Пиксель р11 оказывается черным, что переводит автомат в состояние S3 (Начало отрезка). Устанавливается FC=2 (начальное) и FA=11 (координата этого пикселя). На черном пикселе р12 фиксируется завершение фильтрового интервала. Происходит переход Т9 в состояние S4, при этом получается P=1+1=2, WT=4+2=6, SC=10+11+12=33. Черный пиксель р13 не меняет состояния при переходе Т10, и изменяет следующие переменные: WT=6+1=7, SC=33+13=46.Pixel p11 turns out to be black, which puts the machine in state S3 (beginning of the segment). Set FC = 2 (initial) and FA = 11 (coordinate of this pixel). On the black pixel p12, the completion of the filter interval is recorded. The transition of T9 to state S4 occurs, and P = 1 + 1 = 2, WT = 4 + 2 = 6, SC = 10 + 11 + 12 = 33. The black pixel p13 does not change state at the T10 transition, and changes the following variables: WT = 6 + 1 = 7, SC = 33 + 13 = 46.

Дефектный пиксель р14 является белым, он переводит автомат в состояние S2 (Начало пробела) с установкой FC=2 (начальное) и FA=14 (координата этого пикселя). Следующий черный пиксель р15 вызывает переход Т7 в состояние S4 (Отрезок), по которому происходят следующие действия: WT=7+FC=2, SC=46+FA+15=75. Таким образом, происходит фильтрация дефектного белого пиксела.The defective pixel p14 is white, it puts the machine in state S2 (Start space) with the setting FC = 2 (initial) and FA = 14 (the coordinate of this pixel). The next black pixel p15 causes T7 to transition to state S4 (Segment), according to which the following actions occur: WT = 7 + FC = 2, SC = 46 + FA + 15 = 75. Thus, a defective white pixel is filtered.

Белый пиксель р16 запускает переход Т6 автомата в состояние S2 (Начало пробела), и в переменную ширины W записывается значение временного счетчика ширины WC: W=WC-1=15. Пиксель р17, по превышению предельного интервала фильтрации, переводит автомат в состояние S1 (Пробел). Следующий белый пиксел р18 выполняет переход Т1 без изменения состояния автомата. На этом, анализ строки прекращается, и фиксируются накопленные к этому моменту числовые характеристики строки N=1: Р=2, W=15, WT=9 и C=SC/WT=75/9=8. Сравнивая это с изображением знакоместа 1 без дефектов на Фиг. 2, можно убедиться, что наличие дефектных пикселей не повлияло на полученные числовые характеристики этой строки.The white pixel p16 starts the transition of the automaton T6 to state S2 (Start of space), and the value of the temporary counter for the width of the WC is written into the variable of width W: W = WC-1 = 15. Pixel p17, after exceeding the filtering interval, puts the machine in state S1 (Space). The next white pixel p18 performs transition T1 without changing the state of the machine. On this, the analysis of the line is stopped, and the numerical characteristics of the line N = 1 accumulated by this moment are fixed: P = 2, W = 15, WT = 9 and C = SC / WT = 75/9 = 8. Comparing this with the image of familiarity 1 without defects in FIG. 2, it can be verified that the presence of defective pixels did not affect the obtained numerical characteristics of this line.

Альтернативная реализация вычисления числовых характеристик строки предполагает применение аппаратного сопроцессора, подключаемого к центральному процессору вычислительной системы. Структурная схема сопроцессора показана на Фиг. 6. Сопроцессор реализует бинаризацию пикселей и конечный автомат, описанный нами выше, для строк знакоместа длиной до 32 пикселей. Он содержит регистр номера состояния 25 и связанное с ним по входу и выходу микропрограммное запоминающее устройство 26. Для хранения накапливаемых значений числовых характеристик W, WT, SC и Р предусмотрены регистры 27-30. Их содержимое может быть считано центральным процессором через выходной порт в виде шинного формирователя 31, подключенного к 32-разрядной шине данных центрального процессора. Временный счетчик ширины WC реализован в регистре 38. Счетчик пикселей фильтруемого интервала FC размещен в регистре 37, а накопитель суммы координат фильтруемого интервала FA представлен регистром 44. Счетчик пикселей строки PC находится в регистре 35.An alternative implementation of calculating the numerical characteristics of a string involves the use of a hardware coprocessor connected to the central processor of a computing system. The block diagram of the coprocessor is shown in FIG. 6. The coprocessor implements binarization of pixels and the state machine described above for familiarity strings up to 32 pixels long. It contains a status number register 25 and a microprogram memory 26 associated with it at the input and output. Registers 27-30 are provided for storing the accumulated values of the numerical characteristics of W, WT, SC and P. Their contents can be read by the central processor through the output port in the form of a bus driver 31 connected to a 32-bit data bus of the central processor. A temporary WC width counter is implemented in register 38. The pixel counter of the filtered interval FC is located in register 37, and the accumulator of the sum of the coordinates of the filtered interval FA is represented in register 44. The pixel counter of the PC line is in register 35.

Входной порт 32 предназначен для подключения к шине данных центрального процессора, где импульс WR формируется при записи в определенный адрес памяти. Сигнал Reset формируется центральным процессором перед обработкой очередной строки для сброса всех элементов сопроцессора к начальным значениям. Шина Pixel предназначена для передачи на нее байтового значения пикселя. Для передачи пикселей используется прямой доступ к памяти, при котором из памяти вычислительной системы последовательно считываются байтовые значения пикселей, и записываются по адресу входного порта 32 сопроцессора, с генерацией импульса WR.The input port 32 is designed to connect to the data bus of the central processor, where a WR pulse is generated when writing to a specific memory address. The Reset signal is generated by the central processor before processing the next line to reset all elements of the coprocessor to the initial values. The Pixel bus is designed to transmit a byte pixel value to it. For pixel transmission, direct memory access is used, in which byte pixel values are sequentially read from the computer system memory and written to the address of input port 32 of the coprocessor, with the generation of a WR pulse.

Все элементы сопроцессора, кроме шинного формирователя 31, выполнены с синхронной связью, где сигнал WR используется в качестве тактового сигнала. При записи значения очередного пикселя в порт 32 это значение сравнивается компаратором 33 с уровнем бинаризации ТН, хранимым в регистре 34. Уровень бинаризации ТН вычисляется центральным процессором по гистограмме изображения серийного номера с использованием метода Отсу, и загружается в регистр 34. Выходная линия компаратора 33 представляет собой бинаризованное значение символа (0 или 1). Она подключается ко входу микропрограммного ПЗУ 26.All elements of the coprocessor, except bus driver 31, are made with synchronous communication, where the WR signal is used as a clock signal. When writing the value of the next pixel to port 32, this value is compared by the comparator 33 with the binarization level of the VT stored in register 34. The binarization level of the VT is calculated by the histogram of the serial number image using the Otsu method, and loaded into the register 34. The output line of the comparator 33 represents is the binarized value of the character (0 or 1). It is connected to the input of the firmware ROM 26.

Центральный процессор, перед началом работы, также загружает в регистр 43 значение предела длины отрезка фильтрации FL. Значение FL сравнивается компаратором 42 со значением FC, хранимым в регистре 37, для определения необходимости перехода из состояния S3 (Начало отрезка) в S4 (Отрезок), а также из состояния S2 (Начало пробела) в S1 (Пробел). Выход компаратора 42 подключен ко входу микропрограммного ПЗУ 26.Before starting work, the central processor also loads into the register 43 the value of the length limit of the filtering segment FL. The FL value is compared by the comparator 42 with the FC value stored in register 37 to determine whether it is necessary to switch from the state S3 (Beginning of a segment) to S4 (Segment), as well as from the state S2 (Beginning of a space) to S1 (Space). The output of the comparator 42 is connected to the input of the firmware ROM 26.

ПЗУ 26 и регистр номера состояния 25 образуют устройство микропрограммного управления сопроцессора. Согласно графу переходов автомата, показанному на Фиг. 4, переходы между состояниями определяются номером состояния, значением входного пикселя и тем, достигнута ли предельная длина фильтруемого отрезка. Соответственно, микропрограммное ПЗУ 26 формирует сигналы сброса, записи и инкремента для регистров сопроцессора, в соответствии с номером состояния в регистре 25, уровнем входного пиксела и с сигналом достижения предельной длины фильтруемого отрезка, которые подаются ему на вход. Номер следующего состояния подается с выхода ПЗУ 26 на вход регистра номера состояния 25. Переход конечного автомата происходит по перепаду сигнала WR, который тактирует перезапись регистра номера состояния 25. Регистры и другие элементы схемы сопроцессора выполнены и соединены таким образом, чтобы каждый из возможных переходов автомата выполнялся синхронно за один такт сигнала WR.The ROM 26 and the status number register 25 form a coprocessor firmware control device. According to the transition graph of the automaton shown in FIG. 4, transitions between states are determined by the state number, the value of the input pixel, and whether the maximum length of the filtered segment has been reached. Accordingly, the firmware ROM 26 generates reset, write and increment signals for the coprocessor registers, in accordance with the status number in the register 25, the level of the input pixel and with the signal to reach the maximum length of the filtered segment, which are fed to it at the input. The next state number is supplied from the output of the ROM 26 to the input of the status number register 25. The state machine transitions by the difference of the WR signal, which clocks overwriting the status number register 25. The registers and other elements of the coprocessor circuit are made and connected so that each of the possible transitions of the machine performed synchronously in one clock cycle of the WR signal.

Значение количества штрихов Р в регистре 30 инкрементируется в соответствии с описанной логикой работы автомата по сигналу от ПЗУ 26. Значение FC счетчика 37 пикселей фильтруемого интервала используется для записи в счетчик 38 ширины WC и для прибавления к регистру 28 веса WT при помощи сумматора 39. Из счетчика 38 ширины WC значение переписывается в регистр 27 ширины W с аппаратно реализованным вычитанием единицы.The value of the number of strokes P in the register 30 is incremented in accordance with the described logic of the automaton according to the signal from the ROM 26. The FC value of the counter 37 pixels of the filtered interval is used to write the WC width to the counter 38 and to add the weight WT to the register 28 using the adder 39. From counter 38 of the width WC, the value is written into the register 27 of the width W with a hardware-implemented subtraction of one.

Счетчик 35 номера пикселя PC, накопитель 44 суммы координат фильтруемого интервала FA и регистр 29 суммы координат SC связаны между собой через сумматоры 36, 40 и 41 для реализации накопления и передачи суммы координат в соответствии с описанием работы конечного автомата, приведенным выше. Сумматор 36 реализует прибавление координаты текущего пиксела к накопителю 44 суммы координат фильтруемого интервала FA. Сумматоры 40 и 41 образуют трехвходовую схему суммирования и обеспечивают прибавление координаты текущего пиксела PC и суммы координат фильтруемого интервала FA к сумме координат SC.The counter 35 of the pixel number PC, the drive 44 of the sum of the coordinates of the filtered interval FA and the register 29 of the sum of the coordinates of SC are interconnected through adders 36, 40 and 41 to implement the accumulation and transmission of the sum of coordinates in accordance with the description of the operation of the state machine described above. The adder 36 implements the addition of the coordinates of the current pixel to the accumulator 44 of the sum of the coordinates of the filtered interval FA. Adders 40 and 41 form a three-input summation circuit and add the coordinates of the current pixel PC and the sum of the coordinates of the filtered interval FA to the sum of the coordinates SC.

После завершения передачи всех пикселей строки в порт 32 регистры 27-30 содержат готовые значения числовых характеристик W (5 бит), WT (5 бит), SC (9 бит) и Р (3 бита). Разрядность регистров соответствует указанной ранее максимальной длине строки 32 пикселя. Все четыре полученные характеристики упаковываются шинным формирователем выходного порта 31 в одно 32-разрядное слово. Центральный процессор обращается к заданному адресу выходного порта 31 с генерацией импульса сигнала RD и, таким образом, считывает его содержимое. После считывания, если значение Р не равно 0, центральный процессор самостоятельно выполняет деление SC на WT для получения числовой характеристики центра строки С.After the completion of the transfer of all the pixels in the string to port 32, registers 27-30 contain ready-made values for the numerical characteristics W (5 bits), WT (5 bits), SC (9 bits) and P (3 bits). The bit depth of the registers corresponds to the maximum string length specified earlier 32 pixels. All four characteristics obtained are packaged by the bus driver of the output port 31 into one 32-bit word. The central processor accesses the specified address of the output port 31 to generate a pulse of the RD signal and, thus, reads its contents. After reading, if the value of P is not equal to 0, the central processor independently performs the division of SC by WT to obtain a numerical characteristic of the center of line C.

Обработка одного пикселя в описанной схеме сопроцессора занимает один такт передачи по каналу прямого доступа к памяти. Заметим, что сопроцессор в том же такте выполняет бинаризацию пиксела. Та же самая обработка пикселя при программной реализации автомата с помощью центрального процессора требует несколько десятков тактов частоты ядра процессора. Для современных процессоров цифровой обработки сигналов частота ядра в 5-10 раз превосходит тактовую частоту прямого доступа к памяти. Несмотря на это, сопроцессор, все равно, дает выигрыш в производительности в несколько раз по сравнению с программной реализацией.Processing a single pixel in the described coprocessor circuit takes one transmission cycle on the channel of direct access to memory. Note that the coprocessor performs pixel binarization in the same clock cycle. The same pixel processing in the software implementation of the machine using the central processor requires several tens of clock cycles of the processor core frequency. For modern processors of digital signal processing, the core frequency is 5-10 times higher than the clock frequency of direct memory access. Despite this, the coprocessor, nevertheless, gives a performance gain several times in comparison with the software implementation.

Сопроцессор удобнее всего реализовать в виде отдельного логического блока в структуре микросхемы программируемой логики (FPGA), которая уже имеется в вычислительной системе большинства счетно-сортировальных машин. Особое преимущество может быть достигнуто в том случае, когда в вычислительной системе центральный процессор и FPGA объединены в единую микросхему. В таких микросхемах можно обеспечить более высокую частоту передачи данных во входной порт сопроцессора, чем при размещении FPGA в виде отдельной микросхемы.The co-processor is most conveniently implemented as a separate logical unit in the structure of a programmable logic chip (FPGA), which is already available in the computing system of most counting and sorting machines. A particular advantage can be achieved when the central processor and FPGA are combined into a single chip in a computing system. Such microcircuits can provide a higher frequency of data transfer to the input port of the coprocessor than when placing the FPGA as a separate microcircuit.

Для повышения производительности сопроцессора можно подавать входные данные не через байтовую 8-разрядную шину, как показано на Фиг. 6, а через шину большей разрядности, например, 32-разрядную. Это даст ускорение работы сопроцессора примерно в четыре раза. Для обработки 32-разрядных слов возможны два варианта. По первому из них, организуют разделение 32-разрядного слова на четыре байта, соответствующие четырем последовательным пикселям строки. Для их обработки вводят тактовый генератор, который формирует 4 тактовых импульса на каждую запись 32-разрядного слова, и эти тактовые импульсы используются для синхронизации автомата вместо сигнала WR. Также, вводят схему ускоренного сдвига 32-разрядного слова, которая обеспечивает сдвиг его содержимого на 8 разрядов и выдачу очередного байта на компаратор 33 с каждым тактовым импульсом. Основным ограничением для этого варианта может оказаться слишком высокая тактовая частота, при которой будет затруднительно реализовать сопроцессор в FPGA.To increase coprocessor performance, it is possible to supply input data not through the byte 8-bit bus, as shown in FIG. 6, and through a bus with a larger capacity, for example, 32-bit. This will give an acceleration of the coprocessor about four times. There are two options for processing 32-bit words. According to the first of them, they organize the division of a 32-bit word into four bytes, corresponding to four consecutive pixels of the line. To process them, a clock generator is introduced, which generates 4 clock pulses for each 32-bit word record, and these clock pulses are used to synchronize the machine instead of the WR signal. Also, an accelerated shift scheme of a 32-bit word is introduced, which provides a shift of its contents by 8 bits and the output of the next byte to the comparator 33 with each clock pulse. The main limitation for this option may be too high clock speed, at which it will be difficult to implement a coprocessor in FPGA.

По второму варианту, используют 32-разрядное слово, отдельные байты которого соответствуют пикселям четырех строк. Эти четверки пикселей обрабатывают параллельно при помощи четырех одинаковых и независимо работающих автоматов, аналогичных изображенному на Фиг. 6. В таком случае, тактовая частота сопроцессора будет соответствовать частоте циклов прямого доступа к памяти. Сложность в реализации этого варианта связана с тем, что при хранении изображений в памяти каждое слово обычно содержит 4 последовательных пикселя строки. Для одновременной подачи на 4 конечных автомата, необходимо упаковывать пиксели четырех разных строк в одно 32-разрядное слово. Это может быть выполнено, например, с помощью контроллера прямого доступа к памяти, имеющего режим двумерной адресации данных и режим упаковки байтов в слова. Либо же, эта упаковка может быть выполнена во входном порте сопроцессора при помощи специального буфера емкостью четыре строки. Такой буфер должен обеспечивать запись четырех последовательных пикселей одной строки в каждом слове, и последовательное чтение в виде четырех пикселей каждой из строк в одном слове. Подобных буферов должно быть два: в то время, как из первого буфера пиксели четырех строк выдаются на вход конечных автоматов, во второй буфер записываются пиксели следующих четырех строк. Когда все пиксели из первого буфера выданы, а второй буфер заполнен новыми строками, буфера меняют местами путем перекоммутации их входов и их выходов, и продолжают работу.In the second embodiment, a 32-bit word is used, the individual bytes of which correspond to the pixels of four lines. These quadruples of pixels are processed in parallel using four identical and independently working machines, similar to those shown in FIG. 6. In this case, the clock frequency of the coprocessor will correspond to the frequency of the direct memory access cycles. The difficulty in implementing this option is due to the fact that when storing images in memory, each word usually contains 4 consecutive pixels in a row. For simultaneous submission to 4 state machines, it is necessary to pack the pixels of four different lines into one 32-bit word. This can be accomplished, for example, using a direct memory access controller having a two-dimensional addressing mode of data and a mode of packing bytes into words. Or, this packaging can be performed in the input port of the coprocessor using a special buffer with a capacity of four lines. Such a buffer should ensure the recording of four consecutive pixels of one line in each word, and sequential reading in the form of four pixels of each of the lines in one word. There should be two similar buffers: while the pixels of four lines from the first buffer are output to the state machines, the pixels of the next four lines are written to the second buffer. When all the pixels from the first buffer are issued, and the second buffer is filled with new lines, the buffers are interchanged by reconnecting their inputs and their outputs, and continue to work.

Чтобы уменьшить нагрузку на центральный процессор, выходной порт сопроцессора может быть подключен к каналу прямого доступа к памяти для выгрузки результатов обработки строки из шинного формирователя 31 в память системы. Выгрузка результатов должна сбрасывать регистры сопроцессора к начальным значениям. Дополнительно, в сопроцессор нужно ввести схему обнаружения конца строки по содержимому счетчика 35 пикселей PC, которая, после получения последнего пикселя строки, будет выставлять запрос на прямой доступ к памяти для выгрузки результатов. Подача данных во входной порт может вестись непрерывно, строка за строкой. Такое изменение сопроцессора позволит обрабатывать все изображение знакоместа без участия центрального процессора в переключении с одной строки на другую. Числовые характеристики изображения будут автоматически накапливаться в массиве в памяти.To reduce the load on the central processor, the output port of the coprocessor can be connected to a direct memory access channel for uploading the results of processing a string from the bus driver 31 to the system memory. Unloading the results should reset the coprocessor registers to the initial values. In addition, a line end detection scheme must be introduced into the coprocessor by the contents of the counter of 35 pixels PC, which, after receiving the last pixel of the line, will set up a direct memory access request for uploading the results. Data can be fed into the input port continuously, line by line. Such a change in the coprocessor will allow the entire image of familiarity to be processed without the participation of the central processor in switching from one line to another. The numerical characteristics of the image will automatically accumulate in the array in memory.

В описываемой реализации, привязка проверочных прямых к границам знакоместа проводится с учетом содержания изображения в знакоместе. Это позволяет точно привязать проверочные прямые к графическим элементам изображения символа, чтобы компенсировать случайные смещения знакоместа относительно символа при их совмещении. Кроме того, привязка с учетом содержания изображения оказывается полезной для устранения ошибок квантования положения графических элементов символа, возникающих при сканировании и при повороте изображения.In the described implementation, the binding of test lines to the boundaries of familiarity is carried out taking into account the content of the image in familiarity. This allows you to precisely link the test lines to the graphic elements of the symbol image in order to compensate for random displacements of familiarity with respect to the symbol when they are combined. In addition, taking into account the content of the image is useful for eliminating errors in the quantization of the position of the graphic elements of the symbol that occur during scanning and when the image is rotated.

В описываемой реализации привязка в строчном направлении выполняется к оси тяжести изображения, которая идет перпендикулярно строкам. Пересечение оси тяжести со строкой считается точкой начала одномерной системы координат этой строки. Привязка в столбцевом направлении производится к верхней кромке охватывающего прямоугольника символа, то есть, к самой верхней строке, которая содержит пиксели, относящиеся к символу. Нумерацию проверочных прямых, которые соответствуют строкам изображения, корректируют таким образом, что нумерация начинается и идет вниз от этой строки.In the described implementation, the binding in the horizontal direction is performed to the axis of gravity of the image, which is perpendicular to the lines. The intersection of the axis of gravity with the line is considered the starting point of the one-dimensional coordinate system of this line. The binding in the column direction is made to the upper edge of the enclosing rectangle of the symbol, that is, to the very top line, which contains pixels related to the symbol. The numbering of the test lines that correspond to the lines of the image is corrected so that the numbering starts and goes down from this line.

Анализ содержания изображения для обеспечения привязки можно выполнять в виде отдельной операции, еще до нахождения числовых характеристик. Однако, значительно менее затратным в вычислительном отношении является иной путь, выбранный в описываемой реализации и проиллюстрированный на Фиг. 7. Набор числовых характеристик, включая промежуточную величину SC, вычисляют для каждой строки изображения знакоместа, и далее используют эти наборы числовых характеристик для выполнения привязки. Находят горизонтальную координату оси тяжести 14 изображения

Figure 00000007
которая направлена в столбцевом направлении, и строку 15 с номером NS, соответствующую верхней кромке изображения. Значение NS находят как самый малый номер строки, при котором Р≠0.The analysis of the image content to ensure the binding can be performed as a separate operation, even before finding the numerical characteristics. However, a significantly different computationally expensive path is the other one chosen in the described implementation and illustrated in FIG. 7. A set of numerical characteristics, including an intermediate value SC, is calculated for each line of the familiarity image, and then these sets of numerical characteristics are used to perform the binding. Find the horizontal coordinate of the axis of gravity 14 images
Figure 00000007
which is directed in the column direction, and row 15 with the number N S corresponding to the top edge of the image. The value of N S is found as the smallest line number at which P ≠ 0.

При использовании аппаратного сопроцессора, суммы ΣSCN и ΣWTN могут вычисляться внутри него вместе с вычислением числовых характеристик строк. Для вычисления каждой такой суммы дополнительно потребуется один накопительный регистр и один сумматор. Сброс регистров нужно производить перед началом обработки знакоместа, а не перед началом обработки строки, как делается для других регистров сопроцессора. Суммирование должно производиться каждый раз по завершении обработки строки.When using a hardware coprocessor, the sums ΣSC N and ΣWT N can be calculated inside it along with the calculation of the numerical characteristics of the strings. To calculate each such amount, you will additionally need one accumulative register and one adder. The registers must be reset before the familiarity processing begins, and not before the string processing begins, as is done for other coprocessor registers. Summation should be done every time after the processing of the string.

Далее, выполняют коррекцию номера каждой строки: NCORR=N-NS. За счет этого, строка с нулевым скорректированным номером оказывается привязана к верхней кромке 15 охватывающего прямоугольника изображения символа в знакоместе. Новый, скорректированный номер строки далее будет использоваться для идентификации проверочной прямой. Строки с отрицательными скорректированными номерами являются пустыми и далее не рассматриваются.Next, the line number of each line is corrected: N CORR = NN S. Due to this, the line with the zero corrected number is attached to the upper edge 15 of the surrounding rectangle of the symbol image in familiarity. The new, corrected line number will then be used to identify the test line. Lines with negative corrected numbers are empty and will not be considered further.

Для каждой строки вычисляют новое, скорректированное значение центра тяжести этой строки CCORR=С-ХМ. Таким образом, система координат на каждой проверочной прямой оказывается привязанной к оси 14 тяжести изображения, направленной в вертикальном направлении.For each row, a new, adjusted value of the center of gravity of this row is calculated C CORR = CX M. Thus, the coordinate system on each test line turns out to be tied to the gravity axis 14 of the image directed in the vertical direction.

При совмещении знакоместа с изображением символа требуется только лишь обеспечить расположение всех пикселей, относящихся к символу, внутри знакоместа. Поэтому, графические элементы символа могут позиционироваться по отношению к границам знакоместа с определенной случайной ошибкой, размах которой примерно равен разности размера знакоместа и размера символа. После выполнения привязки с коррекцией номера строки и начала координат на самой строке, наборы числовых характеристик для строк, составляющих изображение символа, становятся независимыми от этой случайной ошибки. Вне зависимости от того, каким оказалось расположение изображения символа относительно границ знакоместа, наборы числовых характеристик, которые соответствуют проверочным прямым, в описываемой реализации будут примерно одинаковыми для одного и того же вида символа. За счет этого, описанный способ привязки значительно улучшает достоверность распознавания символа.When combining familiarity with the image of a symbol, it is only necessary to ensure that all pixels related to the symbol are located inside the familiarity. Therefore, the graphic elements of the symbol can be positioned relative to the boundaries of familiarity with a certain random error, the scope of which is approximately equal to the difference in the size of familiarity and the size of the symbol. After binding with correction of the line number and the origin on the line itself, the sets of numerical characteristics for the lines making up the image of the character become independent of this random error. Regardless of how the location of the symbol image relative to the boundaries of familiarity turned out to be, sets of numerical characteristics that correspond to test lines in the described implementation will be approximately the same for the same type of symbol. Due to this, the described binding method significantly improves the accuracy of character recognition.

Проверка того, что изображение символа в знакоместе относится к определенному виду символов, производится при помощи набора критериев. Для каждого возможного вида символов имеется свой набор критериев. На Фиг. 8 показан символ «9» и набор из шести критериев 16-21, которые соответствуют этому виду. Каждый критерий описывается набором допустимых интервалов для числовых характеристик Р, W, С и WT. Здесь и далее мы рассматриваем уже скорректированные значения центра тяжести строки С и номера строки N. Число штрихов Р является наиболее важным для проверки, поэтому интервал допустимых значений для его проверки состоит из одного числа.Verification that the symbol image in familiarity refers to a certain type of symbol is performed using a set of criteria. Each possible type of character has its own set of criteria. In FIG. 8 shows the symbol "9" and a set of six criteria 16-21 that correspond to this view. Each criterion is described by a set of admissible intervals for the numerical characteristics of P, W, C, and WT. Hereinafter, we consider the already adjusted values of the center of gravity of line C and line number N. The number of strokes P is the most important for verification, therefore, the interval of valid values for checking it consists of one number.

Для каждого критерия задан набор строк, на которых нужно проверить соответствие числовых характеристик допустимым интервалам. Так, в критерии 16 проверяются строки с номерами 0-3. Для каждой строки, проверяют, что Р=1, что W лежит в интервале от 6 до 11, что С лежит в интервале от -1 до 0, и что WT лежит в интервале от 6 до 11. Если хотя бы одна из числовых характеристик не попадает в допустимый интервал, то считают, что для этой строки критерий не выполнен. На всем наборе строк, который задан в критерии, должно быть не менее MIN строк, для которых критерий выполнен. Так, для критерия 16 должно быть не менее двух таких строк. В реальности их три: это строки 1, 2 и 3. Чтобы уменьшить затраты времени на проверку критерия, как только обнаружено выполнение критерия для MIN строк, то проверку критерия завершают. Например, при проверке критерия 16 проверяют строки 0, 1 и 2. Поскольку две из этих строк, с номерами 1 и 2, уже соответствуют критерию, то обнаруживают достижение MIN=2, и завершают проверку критерия сообщением об успехе, не проверяя строку 3.For each criterion, a set of lines is given on which it is necessary to check the correspondence of the numerical characteristics to the acceptable intervals. So, in criterion 16 lines with numbers 0-3 are checked. For each line, check that P = 1, that W lies in the range from 6 to 11, that C lies in the range from -1 to 0, and that WT lies in the range from 6 to 11. If at least one of the numerical characteristics If it does not fall into the allowable interval, then it is considered that the criterion for this line is not fulfilled. The entire set of rows that is specified in the criterion must have at least MIN rows for which the criterion is met. So, for criterion 16 there should be at least two such lines. In reality, there are three of them: these are lines 1, 2, and 3. In order to reduce the time spent on checking the criterion, as soon as the fulfillment of the criterion for MIN rows is detected, the test of the criterion is completed. For example, when checking criterion 16, lines 0, 1, and 2 are checked. Since two of these lines, with numbers 1 and 2, already meet the criterion, they detect that MIN = 2 is reached, and complete the test of the criterion with a success message without checking line 3.

В прямоугольнике, которым изображен критерий, обозначают успешную проверку критерия при помощи OK и неуспешную его проверку при помощи NOK. Как видно на Фиг. 8, все критерии в наборе помечены OK, то есть, завершились успехом. Если в наборе критериев проверка всех критериев завершилась успехом, то делают вывод об успешной проверке всего набора и о принадлежности изображения символа в знакоместе к тому виду, которому соответствует критерий.In the rectangle, which depicts the criterion, indicate the successful verification of the criterion with OK and its failure with NOK. As seen in FIG. 8, all the criteria in the set are marked OK, that is, they were successful. If in the set of criteria the verification of all criteria was successful, then they conclude that the entire set has been successfully checked and that the symbol image in the familiarity belongs to the kind that the criterion corresponds to.

Критерии в наборе проверяются в определенном порядке. Как только обнаруживается, что очередной проверяемый критерий завершился неуспехом, проверку данного набора критериев тут же завершают и делают вывод о неуспешной проверке всего набора. Неуспех проверки набора критериев, соответствующего определенному виду символа, говорит о том, что изображение символа в знакоместе не относится к этому виду.The criteria in the set are checked in a specific order. As soon as it is discovered that the next test criterion failed, the check of this set of criteria is immediately completed and a conclusion is made about the unsuccessful check of the entire set. Failure to check the set of criteria corresponding to a certain type of symbol indicates that the image of the symbol in familiarity does not apply to this type.

На Фиг. 9 показана проверка того же набора критериев 16-21, соответствующего символу «9», для изображения 22 символа «1». Как видно по значениям числовых характеристик строк и допустимым интервалам критериев, только критерий 21 оказывается успешно выполненным, а критерии 16-20 не выполняются. Так как критерии проверяются в порядке 16-17-18-19-20-21, то уже после неуспешного результата проверки критерия 16 проверка набора критериев прекращается с выводом о неуспехе проверки. То есть, происходит раннее завершение проверки набора критериев. Если упрощенно считать, что проверка критериев занимает примерно одинаковое время, то раннее завершение произошло по истечении примерно 17% времени, необходимого для полной проверки всех критериев в наборе.In FIG. 9 shows a check of the same set of criteria 16-21 corresponding to the symbol “9” for the image 22 of the symbol “1”. As can be seen from the values of the numerical characteristics of the rows and the admissible ranges of the criteria, only criterion 21 is successfully fulfilled, and criteria 16-20 are not fulfilled. Since the criteria are checked in the order of 16-17-18-19-20-21, already after the unsuccessful result of the test of criterion 16, the verification of the set of criteria ceases with the conclusion that the test failed. That is, there is an early completion of the verification of a set of criteria. If it is simplified to assume that the verification of the criteria takes approximately the same time, then the early completion occurred after approximately 17% of the time required to fully verify all the criteria in the set.

Для того, чтобы распознать изображение символа в знакоместе, то есть, найти тот вид символа, к которому это изображение относится, проводят последовательную проверку наборов критериев, соответствующих всем возможным видам символа. Например, если в определенной позиции серийного номера банкноты знакоместо может содержать только цифру, то проверяют десять наборов критериев, соответствующих цифрам от «0» до «9». Как только происходит успешная проверка какого-либо набора критериев, то завершают распознавание символа в знакоместе и делают заключение о том, что этот символ относится к тому виду, для которого проверка набора критериев завершилась успехом. Если же, после проверки наборов критериев для всех возможных видов символа, ни одна из этих проверок не завершилась успехом, то делают вывод о том, что символ не распознан.In order to recognize the image of a symbol in familiarity, that is, to find the kind of symbol to which this image belongs, a series of tests of criteria that correspond to all possible types of symbols are carried out. For example, if in a certain position of the serial number of the banknote the familiarity can contain only a digit, then ten sets of criteria are checked, corresponding to the digits from “0” to “9”. As soon as a successful check of any set of criteria is completed, recognition of the character in familiarity is completed and the conclusion is made that this character belongs to the type for which the test of the set of criteria was successful. If, after checking the sets of criteria for all possible types of characters, none of these checks were successful, then they conclude that the character is not recognized.

Порядок проверки критериев в наборе выбирают таким образом, чтобы первыми проверялись те критерии, которые более всего отличают символ данного вида от других видов. Это позволяет как можно раньше завершить проверку набора критериев для определенного вида, если символ в изображении знакоместа не относится к этому виду. Такое раннее завершение существенно ускоряет классификацию изображения в знакоместе, поскольку наборы большинства критериев для разных видов проверяются не полностью, а лишь на небольшую часть.The order of checking the criteria in the set is chosen in such a way that the criteria that most distinguish the symbol of a given species from other species are first checked. This allows you to complete the verification of a set of criteria for a certain type as soon as possible if the symbol in the familiarity image does not apply to this type. Such an early completion significantly accelerates the classification of images in familiarity, since the sets of most criteria for different types are not fully verified, but only for a small part.

Критерии, входящие в каждый из наборов, могут быть составлены человеком-оператором вручную, либо же при помощи машинного обучения, на основе анализа множества изображений одного и того же вида символа. Для составления критериев вручную удобным является графическое представление изображение символа на экране компьютера, где, как на Фиг. 8, отображаются номера строк и числовые характеристики каждой строки. Оператору необходимо выбрать интервалы строк, характерные для определенного вида символа, на которых проявляется отличие графических элементов этого вида символов от других возможных видов символов. Для каждого из этих интервалов нужно составить отдельный критерий, который проверяет соответствующий графический элемент. Например, критерии 16, 18 и 21 на Фиг. 8 проверяют горизонтальные штрихи, критерии 17 и 20 проверяют вертикальные штрихи, а критерий 19 контролирует размыкание линии. Как показывает опыт, в большинстве случаев достаточным оказывается от 5 до 10 интервалов и соответствующих им критериев.The criteria included in each of the sets can be compiled by the human operator manually, or using machine learning, based on the analysis of many images of the same type of symbol. For drawing up the criteria manually, it is convenient to graphically represent the symbol on a computer screen, where, as in FIG. 8, line numbers and numerical characteristics of each line are displayed. The operator needs to select line spacing characteristic of a certain type of character, which shows the difference between the graphic elements of this type of character from other possible types of characters. For each of these intervals, you need to create a separate criterion that checks the corresponding graphic element. For example, criteria 16, 18, and 21 in FIG. 8 check horizontal strokes, criteria 17 and 20 check vertical strokes, and criterion 19 controls the opening of the line. As experience shows, in most cases, from 5 to 10 intervals and the corresponding criteria are sufficient.

Выбор значения MIN позволяет сделать критерий, в определенной степени, нечувствительным к искажению строк изображения. Например, требования критерия 16 на Фиг. 8 для символа «9» обычно выполняются для трех строк 1-3, а значение MIN в критерии задано равным двум. Такое, несколько уменьшенное значение MIN, позволяет успешно распознать изображение символа, в котором одна из строк 1-3 повреждена из-за пятна, потертости красочного слоя или дефекта сканирования.Selecting MIN allows you to make the criterion, to some extent, insensitive to distortion of image lines. For example, the requirements of criterion 16 in FIG. 8 for the character "9" is usually performed for three lines 1-3, and the MIN value in the criteria is set to two. Such a slightly reduced value of MIN allows you to successfully recognize the image of a character in which one of lines 1-3 is damaged due to a spot, a worn paint layer or a scanning defect.

Таким образом, заявленный способ предусматривает два механизма обеспечения устойчивого распознавания при повреждениях цифрового изображения. Фильтрация отрезков дефектных пикселей при получении числовых характеристик строки позволяет уменьшить негативное влияние небольших дефектов, не приводящих к разрыву линии. Соответствующий выбор значения MIN позволяет уменьшить негативное влияние более существенных дефектов, приводящих к разрыву одной линии либо слиянию нескольких линий.Thus, the claimed method provides two mechanisms for ensuring sustainable recognition in the event of damage to a digital image. Filtering out segments of defective pixels in obtaining the numerical characteristics of the line allows you to reduce the negative impact of small defects that do not lead to line breaks. The appropriate choice of the MIN value allows to reduce the negative impact of more significant defects, leading to the rupture of one line or the merger of several lines.

Применение допустимых интервалов в критериях 16-21 позволяет учесть нестабильность числовых характеристик, получаемых на различных изображениях одного и того же символа. Толщина линии символа может меняться как на реальной банкноте из-за нестабильности печатного процесса либо износа банкноты в обращении, так и на сканированном изображении из-за изменения фокусировки сканирующего датчика и из-за погрешности процесса бинаризации. Толщина линии символа в небольшой степени влияет на ширину W, и в значительной степени оказывает влияние на вес WT. Геометрические погрешности сканирования, то есть, погрешности взаимного расположения графических элементов, возникают при сканировании из-за округления координаты до целого числа пикселей и из-за проскальзывания банкноты в тракте, а также из-за округлений положения пикселя при выполнении поворота изображения для компенсации перекоса. Геометрические погрешности влияют, главным образом, на ширину W, и в меньшей степени, на центр С. Они почти не влияют на WT. Допустимые интервалы в критериях должны выбираться таким образом, чтобы естественные отклонения толщины линии символов и геометрические погрешности сканирования не приводили к неуспешной проверке критерия. Тогда, использование допустимых интервалов обеспечивает устойчивое распознавание, несмотря на естественные геометрические погрешности сканирования и отклонения толщины линии, характерные для конкретного класса банкнот и для применяемого оборудования для обработки банкнот.The use of acceptable intervals in criteria 16-21 allows you to take into account the instability of the numerical characteristics obtained on different images of the same symbol. The thickness of the symbol line can change both on a real banknote due to the instability of the printing process or wear of the banknote in circulation, and on the scanned image due to a change in the focus of the scanning sensor and due to an error in the binarization process. The thickness of the symbol line affects the width W to a small extent, and greatly affects the weight of WT. Geometric errors of scanning, that is, errors in the mutual arrangement of graphic elements, arise during scanning due to rounding of the coordinate to an integer number of pixels and due to slipping of a banknote in the path, as well as due to rounding of the pixel position when performing image rotation to compensate for skew. Geometric errors mainly affect the width W, and to a lesser extent, the center C. They have almost no effect on WT. Allowable intervals in the criteria should be selected so that the natural deviations of the line thickness of the characters and the geometric errors of the scan do not lead to an unsuccessful verification of the criterion. Then, the use of valid intervals provides stable recognition, despite the natural geometric errors of scanning and deviations of the line thickness, characteristic for a particular class of banknotes and for the equipment used for processing banknotes.

Для дополнительного различения сходных символов могут использоваться критерии с логической инверсией результата. То есть, если найдено количество MIN или более строк, для которых числовые характеристики попадают в заданные интервалы, то критерий считается невыполненным. И, напротив, если таких строк найдено меньше, чем MIN, то критерий считается успешно выполненным. Критерий с инверсией результата позволяет проверить отсутствие определенного графического элемента в символе.To further distinguish between similar characters, criteria with a logical inversion of the result can be used. That is, if the number of MIN or more lines is found for which the numerical characteristics fall in the specified intervals, then the criterion is considered to be not fulfilled. And, on the contrary, if there are fewer such lines than MIN, then the criterion is considered to be successfully fulfilled. The criterion with the inverse of the result allows you to check the absence of a specific graphic element in the symbol.

Критерии, основанные на числовых характеристиках строк, подобные критериям 16-21, проверяются очень быстро. Для проверки такого критерия для одной строки, в описываемой реализации, нужно выполнить 7 независимых сравнений и объединить их результат логической операцией. При использовании центрального процессора с очень длинным словом команды (VLIW), либо суперскалярного центрального процессора, некоторые из этих сравнений могут выполняться параллельно. Если же имеется возможность добавления специальной команды в состав команд центрального процессора, то проверка критерия может сразу выполняться единственной специальной командой. Для этого, интервалы критерия, а также числовые характеристики нужно упаковать в слова процессора. Для наиболее практичного горизонтального размера знакоместа, не превышающего 32 пикселей, можно выделить для хранения числовых характеристик строки 3 бита на число штрихов (Р), по 5 битов на ширину и вес (W и WT) и 4 бита на центр (С), что суммарно составляет 17 бит. Тогда, для кодирования пределов, потребуется 3 бита на число штрихов (Р), по 10 битов на интервалы ширины и веса (W и WT) и 8 битов на интервал центра (С), что суммарно укладывается в 31 бит. Таким образом, специальная команда проверки критерия может использовать 32-разрядное слово для числовых характеристик строки и 32-разрядное слово для пределов критерия. За счет этого, такая команда в 32-разрядном процессоре с современной архитектурой RISC может выполняться за один такт ядра.Criteria based on the numerical characteristics of strings, similar to criteria 16-21, are checked very quickly. To check such a criterion for one row, in the described implementation, you need to perform 7 independent comparisons and combine their result with a logical operation. When using a CPU with a very long instruction word (VLIW) or a superscalar CPU, some of these comparisons can be performed in parallel. If it is possible to add a special command to the central processor instructions, then the criterion can be checked immediately by a single special command. To do this, the intervals of the criterion, as well as numerical characteristics, need to be packed into the words of the processor. For the most practical horizontal size of familiarity, not exceeding 32 pixels, it is possible to allocate for storing the numeric characteristics of a string 3 bits per number of strokes (P), 5 bits per width and weight (W and WT) and 4 bits per center (C), which a total of 17 bits. Then, to encode the limits, you need 3 bits for the number of strokes (P), 10 bits for width and weight intervals (W and WT) and 8 bits for the center interval (C), which in total fits into 31 bits. Thus, a special criterion check command can use a 32-bit word for the numeric characteristics of the string and a 32-bit word for the limits of the criterion. Due to this, such a command in a 32-bit processor with modern RISC architecture can be executed in a single clock cycle.

В реализации заявленного способа могут быть добавлены другие виды критериев, не опирающиеся на значения числовых характеристик. Могут использоваться любые критерии, которые оценивают изображение знакоместа на предмет сходства с определенным видом символа и выдают бинарный результат оценки в виде успеха либо неуспеха. Такие критерии могут потребоваться для различения весьма схожих символов. Например, может применяться проверка сходства заранее сохраненного эталонного изображения с областью в знакоместе, размер и расположение которой заданы заранее. Для нее нужно вычислить коэффициент корреляции между эталоном и изображением знакоместа для нескольких положений эталона как в точке его расчетного размещения на изображении знакоместа, так и вблизи нее. Если, в результате, коэффициент корреляции хотя бы в одном из положений превысит заданное пороговое значение, то критерий завершается успехом. Если же, ни в одном из положений, пороговое значение не будет превышено, то критерий завершается неуспехом.In the implementation of the claimed method, other types of criteria can be added that are not based on the values of numerical characteristics. Any criteria can be used that evaluate the image of familiarity for similarity with a certain type of symbol and give a binary result of the evaluation in the form of success or failure. Such criteria may be required to distinguish between very similar characters. For example, a similarity check of a previously stored reference image with a region in familiarity whose size and location are predetermined can be applied. For it, it is necessary to calculate the correlation coefficient between the standard and the familiar image for several positions of the standard both at the point of its calculated placement on the familiar image and near it. If, as a result, the correlation coefficient exceeds at least one of the positions a predetermined threshold value, then the criterion is successful. If, in any of the provisions, the threshold value is not exceeded, then the criterion fails.

Такой корреляционный критерий позволяет обнаружить разницу между весьма сходными символами, например, «D» и «0». Однако, как и любой корреляционный метод, он является очень затратным в вычислительном смысле. Поэтому, корреляционный критерий желательно проверять в конце набора критериев, так чтобы проверка корреляционных критериев производилась только один или два раза за время распознавания символа, а в большинстве наборов корреляционный критерий вообще бы не проверялся из-за раннего завершения. Таким образом, регулярно применяемое раннее завершение проверки набора критериев, является отличительной особенностью заявленного способа и позволяет обеспечить высокое быстродействие, в том числе, при использовании вычислительно затратных критериев, не основанных на числовых характеристиках проверочной прямой.Such a correlation criterion allows you to detect the difference between very similar characters, for example, “D” and “0”. However, like any correlation method, it is very computationally expensive. Therefore, it is advisable to check the correlation criterion at the end of the set of criteria, so that the correlation criteria are checked only once or twice during character recognition, and in most sets the correlation criterion would not be checked at all due to early completion. Thus, the regularly applied early completion of the verification of a set of criteria is a distinctive feature of the claimed method and allows for high performance, including when using computationally expensive criteria that are not based on the numerical characteristics of the test line.

В качестве другого критерия может применяться проверка связности пробельных элементов, позволяющая определить наличие структурного элемента в символе. Например, символ «8» содержит два изолированных пробельных элемента, которые обычно называют островами. Остров со всех сторон окружен пикселями, относящимися к символу, и не связан с другими пробельными областями. Символ «9» содержит один остров и один полуостров, где под полуостровом понимается неизолированный пробельный элемент, соединенный перемычкой с другой пробельной областью. Символ «3» содержит два полуострова. Проверка связанности позволяет различить между собой несколько символов, похожих по рисунку и отличающихся только структурными элементами, таких, как «8», «3», «6» и «9».As another criterion, a connectivity check for whitespace elements can be used to determine the presence of a structural element in a symbol. For example, the symbol "8" contains two isolated white space elements, which are usually called islands. The island is surrounded on all sides by pixels related to the symbol, and is not connected with other whitespace areas. The symbol "9" contains one island and one peninsula, where under the peninsula we mean an uninsulated space element connected by a jumper to another space region. The symbol "3" contains two peninsulas. Checking the connectivity allows you to distinguish among themselves several characters that are similar in pattern and differ only in structural elements, such as "8", "3", "6" and "9".

Для критериев, не основанных на числовых характеристиках проверочных прямых, используется точно такая же коррекция номеров строк и положения начала системы координат на строке, какая была описана ранее и проиллюстрирована на Фиг. 7.For criteria that are not based on the numerical characteristics of the test lines, the exact same correction of line numbers and the position of the origin of the coordinate system on the line is used, which was described earlier and illustrated in FIG. 7.

На Фиг. 10 показана общая последовательность реализации распознавания изображения символа. На шаге 101 проводится бинаризация изображения в знакоместе. На шаге 102 находят наборы числовых характеристик для всех строк знакоместа. Затем, на шаге 103 обеспечивают привязку номеров строк и начала координат на каждой строке к границам знакоместа, опираясь на числовые характеристики изображения, вычисленные на предыдущем шаге. Далее, на шаге 104 выбирают вид символа для проверки принадлежности к этому виду. На шаге 105 последовательно проверяют выполнение всех критериев из того набора критериев, который соответствует проверяемому виду. Если проверка всех критериев в наборе завершилась успехом (шаг 107), то сообщают, что изображение символа принадлежит к проверяемому виду, и завершают распознавание символа. Если же при проверке всех критериев обнаруживается критерий, проверка которого завершилась неуспехом, то дальнейшую проверку набора критериев прекращают и дополнительно проверяют (шаг 106), есть ли еще непроверенные виды символов. В случае, когда такие виды символов есть, возвращаются к шагу 104, выбирают следующий вид символа для проверки и опять проводят проверку набора критериев (шаг 105).In FIG. 10 shows a general sequence of implementation of character image recognition. At step 101, the image is binarized in familiarity. At step 102, sets of numerical characteristics are found for all lines of familiarity. Then, at step 103, the line numbers and the origin on each line are linked to the boundaries of familiarity, based on the numerical characteristics of the image calculated in the previous step. Next, in step 104, a symbol type is selected to verify that it is a member. At step 105, the fulfillment of all criteria from the set of criteria that corresponds to the type being tested is subsequently checked. If the verification of all criteria in the set is successful (step 107), then it is reported that the symbol image belongs to the type being checked, and the recognition of the symbol is completed. If, when checking all the criteria, a criterion is found, the verification of which was unsuccessful, then the further verification of the set of criteria is stopped and additionally checked (step 106) if there are still unverified types of characters. In the case when there are such types of symbols, they return to step 104, select the next type of symbol for verification, and again verify the set of criteria (step 105).

Если же на шаге 106 выясняется, что больше не осталось видов символов для проверки, то сообщают (шаг 108), что символ не распознан, и завершают распознавание.If, at step 106, it turns out that there are no more character types to check, then they inform (step 108) that the character is not recognized, and complete the recognition.

Описанная последовательность шагов 101-108 может выполняться как целиком на центральном процессоре вычислительной системы, так и при совместной работе центрального процессора и описанного здесь сопроцессора. Сопроцессор берет на себя часть шага бинаризации (101) и почти весь шаг получения числовых характеристик (102).The described sequence of steps 101-108 can be performed as a whole on the central processor of the computing system, or when the central processor and the coprocessor described herein work together. The coprocessor takes on part of the binarization step (101) and almost the entire step of obtaining numerical characteristics (102).

Последовательность обработки банкноты с применением заявленного способа в счетно-сортировальной машине показана на Фиг. 11. Машина обеспечивает транспортировку банкнот из подающего кармана, при этом проводится сканирование и распознавание (шаг 201). Если банкнота не распознана, то принимается решение (шаг 210) направить банкноту в карман отбраковки. Это решение реализуется при помощи электромеханического перенаправляющего узла, размещенного в банкнотопроводном тракте счетно-сортировальной машины.The banknote processing sequence using the inventive method in a counting and sorting machine is shown in FIG. 11. The machine provides transportation of banknotes from the supply pocket, while scanning and recognition is carried out (step 201). If the banknote is not recognized, then a decision is made (step 210) to send the banknote to the reject pocket. This solution is implemented using an electromechanical redirecting unit located in the banknote path of a counting and sorting machine.

Если же банкнота распознана, то выделяют цифровое изображение серийного номера и поворачивают его для компенсации перекоса (шаг 203). Далее, разделяют цифровое изображение серийного номера на знакоместа и совмещают знакоместа с изображениями символов серийного номера (шаг 204). Изображения символов в знакоместах распознают последовательно. Вначале, распознают один символ (шаг 205), используя для этого последовательность шагов 101-108, описанную выше. Если символ не распознан (шаг 206), то принимают решение о направлении банкноты в карман отбраковки (шаг 210). Если же символ распознан, то запоминают соответствующий ему код символа в кодировке Unicode в массиве-строке серийного номера, и проверяют, имеются ли еще нераспознанные знакоместа (шаг 207). Если такие знакоместа имеются, то возвращаются к шагу 205 и распознают следующее знакоместо.If the banknote is recognized, then a digital image of the serial number is selected and rotated to compensate for skew (step 203). Next, divide the digital image of the serial number into familiarity and combine familiarity with the images of the characters of the serial number (step 204). Images of characters in familiar characters are recognized sequentially. First, one character is recognized (step 205) using the sequence of steps 101-108 described above. If the symbol is not recognized (step 206), then a decision is made on the direction of the banknote in the reject pocket (step 210). If the character is recognized, then remember the corresponding Unicode character code in the array-string of the serial number, and check if there are still unrecognized familiarities (step 207). If there are such familiarities, they return to step 205 and recognize the next familiarity.

Когда на шаге 207 обнаруживается, что все знакоместа уже распознаны, то направляют банкноту в приемный карман (шаг 208) и записывают серийный номер из массива-строки в электронный отчет о сортировке (шаг 209). Описанную обработку (шаги 201-210) повторяют для всех банкнот, находящихся в подающем кармане счетно-сортировальной машины. После этого, распознанные банкноты с успешно распознанным серийным номером оказываются в приемном кармане машины, а в электронном отчете находится список серийных номеров этих банкнот. Банкноты, которые были не распознаны, либо же в серийном номере которых были распознаны не все символы, оказываются в кармане отбраковки. Электронный отчет, содержащий список серийных номеров, может далее использоваться для отслеживания движения банкнот в обороте.When at step 207 it is found that all the familiarities are already recognized, they send the banknote to the receiving pocket (step 208) and write the serial number from the array-string into the electronic sorting report (step 209). The described processing (steps 201-210) is repeated for all banknotes located in the feed pocket of a counting and sorting machine. After that, the recognized banknotes with the successfully recognized serial number are in the receiving pocket of the machine, and the electronic report contains a list of serial numbers of these banknotes. Banknotes that were not recognized, or in the serial number of which not all characters were recognized, are in the pocket of rejection. An electronic report containing a list of serial numbers can then be used to track the movement of banknotes in circulation.

Возможно множество других вариантов использования информации, полученной в результате распознавания символов серийного номера. Эти варианты хорошо известны специалистам в области автоматизированной обработки банкнот. Заявленный способ относится лишь к распознаванию отдельного символа, и не касается последующей обработки распознанного серийного номера.There are many other options for using the information obtained as a result of character recognition of the serial number. These options are well known to those skilled in the art of automated banknote processing. The claimed method relates only to the recognition of a single character, and does not apply to subsequent processing of the recognized serial number.

Claims (54)

1. Способ распознавания символа на банкноте, относящегося к известному шрифту, в котором1. A method for recognizing a character on a banknote relating to a known font in which сканируют банкноту с получением цифрового изображения, состоящего из пикселей, для которого определяют принадлежность к определенному классу, на основании указанного класса определяют место расположения символа, подлежащего распознаванию,scanning a banknote to obtain a digital image consisting of pixels for which membership in a particular class is determined, based on the specified class, the location of the character to be recognized is determined, совмещают знакоместо заранее заданной формы и размера с изображением символа, подлежащего распознаванию, так чтобы пиксели, относящиеся к символу, находились в пределах границ знакоместа,combine familiarity of a predetermined shape and size with the image of the character to be recognized, so that the pixels related to the character are within the boundaries of familiarity, при этом проводят бинаризацию для выделения пикселей, относящихся к символу, причем,while conducting binarization to highlight pixels related to the symbol, moreover, для знакоместа заранее определен набор проверочных прямых линий, пересекающих это знакоместо,for familiarity, a set of test straight lines intersecting this familiarity is predefined, и на каждой из проверочных прямых линий задана одномерная система координат,and on each of the test straight lines a one-dimensional coordinate system is set, так что положение каждой проверочной прямой линии и начало системы координат на ней установлено заранее заданным образом относительно границ знакоместа,so that the position of each test straight line and the origin of the coordinate system on it is set in a predetermined manner relative to the boundaries of familiarity, затем, на каждой проверочной прямой отмечают пиксели, по которым проходит эта прямая, указывая их различным образом для пикселей символа и для пробельных пикселей,then, on each test line, pixels are marked along which this line passes, indicating them in different ways for the pixels of the symbol and for whitespace pixels, и сопоставляют каждой проверочной прямой набор числовых характеристик, включающий в себяand match each test direct set of numerical characteristics, including длину интервала, охватывающего все указанные пиксели символа, количество интервалов указанных пикселей символа, в которых указанные пиксели символа расположены подряд друг за другом,the length of the interval covering all of the indicated pixels of the symbol, the number of intervals of the specified pixels of the symbol in which the specified pixels of the symbol are arranged in a row one after another, координату центра тяжести указанных пикселей символа, выраженную в системе координат для данной проверочной прямой, и суммарное число всех указанных пикселей символа,the coordinate of the center of gravity of the indicated pixels of the symbol, expressed in the coordinate system for this test line, and the total number of all the specified pixels of the symbol, после чего выполняют классификацию символа, подлежащего распознаванию, с использованием ранее полученных наборов числовых характеристик в качестве признаков.then perform the classification of the character to be recognized, using the previously obtained sets of numerical characteristics as features. 2. Способ по п. 1, в котором классификацию символа выполняют следующим образом2. The method according to p. 1, in which the classification of the symbol is as follows для каждого из возможных видов символа выполняют последовательную проверку набора критериев принадлежности к этому виду,for each of the possible types of symbol perform a sequential check of a set of criteria for belonging to this type, где наборы критериев заданы предварительно, и, по меньшей мере, часть критериев в каждом наборе установлена на основе числовых характеристик проверочных прямых,where the sets of criteria are predefined, and at least part of the criteria in each set is set based on the numerical characteristics of the test lines, при обнаружении выполнения всех критериев в наборе, соответствующем какому-либо возможному виду символа, прерывают дальнейшую проверку и заключают, что символ, подлежащий распознаванию, относится к этому виду,upon detection of the fulfillment of all criteria in the set corresponding to any possible type of symbol, they interrupt further verification and conclude that the symbol to be recognized belongs to this type, если же, после сопоставления с наборами критериев для всех возможных видов символов, не найдено соответствие ни одному из возможных видов символа, заключают, что символ не распознан,if, after comparison with the sets of criteria for all possible types of characters, no match is found for any of the possible types of characters, it is concluded that the character is not recognized, при этом для каждого из критериев, установленных на основе характеристик проверочных прямых, предварительно задаютсяMoreover, for each of the criteria established on the basis of the characteristics of the test lines, they are preliminarily set требования критерия к характеристикам проверочной прямой, содержащие допуск для значения по меньшей мере одной числовой характеристики,requirements of the criterion for the characteristics of the test line, containing a tolerance for the value of at least one numerical characteristic, и набор проверочных прямых для проверки критерия,and a set of test lines to test the criterion, причем такой критерий считается выполненным, если количество проверочных прямых в наборе, соответствующих требованиям этого критерия, находится внутри заранее заданного интервала.moreover, such a criterion is considered fulfilled if the number of test lines in the set that meet the requirements of this criterion is within a predetermined interval. 3. Способ по пп. 1, 2, в котором каждая проверочная прямая соответствует либо строке, либо столбцу цифрового изображения знакоместа.3. The method according to PP. 1, 2, in which each test line corresponds to either a row or a column of a digital image of familiarity. 4. Способ по п. 2, в котором каждая проверочная прямая соответствует строке изображения знакоместа и каждая строка изображения знакоместа соответствует проверочной прямой, при этом4. The method according to claim 2, in which each test line corresponds to the line of the image of familiarity and each line of the image of familiarity corresponds to the test line, каждой проверочной прямой заранее присвоен номер, определяемый положением соответствующей ей строки относительно границ знакоместа, а для идентификации проверочной прямой в каждом из критериев, установленных на основе характеристик проверочных прямых, используется присвоенный ей номер.each test line is preassigned with a number determined by the position of the corresponding line relative to the borders of familiarity, and the number assigned to it is used to identify the test line in each of the criteria established on the basis of the characteristics of the test lines. 5. Способ по п. 2, в котором каждая проверочная прямая соответствует столбцу изображения знакоместа и каждый столбец изображения знакоместа соответствует проверочной прямой, при этом5. The method according to p. 2, in which each test line corresponds to a column of the image of familiarity and each column of the image of familiarity corresponds to a test line, каждой проверочной прямой заранее присвоен номер, определяемый положением соответствующего ей столбца относительно границ знакоместа, а для идентификации проверочной прямой в каждом из критериев, установленных на основе характеристик проверочных прямых, используется присвоенный ей номер.each test line is preassigned with a number determined by the position of its corresponding column relative to the borders of familiarity, and the number assigned to it is used to identify the test line in each of the criteria established on the basis of the characteristics of the test lines. 6. Способ по п. 4, в котором, при нахождении числовых характеристик, для исправления возможных дефектов изображения по заранее заданному правилу производят фильтрацию пикселей, отмеченных на проверочной прямой.6. The method according to p. 4, in which, when finding the numerical characteristics, to fix possible image defects according to a predetermined rule, the pixels marked on the test line are filtered. 7. Способ по п. 6, в котором, при задании, по меньшей мере, одного критерия, предварительно определенные требования к характеристикам проверочной прямой задают в виде допустимых интервалов для каждой из характеристик, причем, для выполнения упомянутых требований, значения всех характеристик должны находиться в допустимых для них интервалах.7. The method according to p. 6, in which, when at least one criterion is specified, the predefined requirements for the characteristics of the test line are set in the form of allowable intervals for each of the characteristics, and, to fulfill the above requirements, the values of all characteristics must be in acceptable intervals for them. 8. Способ по п. 7, в котором, при задании, по меньшей мере, одного критерия, предварительно определенные требования к характеристикам проверочной прямой задают в виде недопустимых интервалов для каждой из характеристик, причем, для выполнения упомянутых требований, значение хотя бы одной характеристики должно находиться вне недопустимого для нее интервала.8. The method according to p. 7, in which, when at least one criterion is specified, the predefined requirements for the characteristics of the test line are set in the form of unacceptable intervals for each of the characteristics, and, to fulfill the aforementioned requirements, the value of at least one characteristic must be outside the range that is not allowed for it. 9. Способ по п. 7, в котором перед выполнением совмещения знакоместа с изображением символа выполняют поворот изображения символа с целью получения его заданной ориентации в знакоместе.9. The method according to p. 7, in which before performing the combination of familiarity with the image of the symbol, the image of the symbol is rotated in order to obtain its predetermined orientation in the familiarity. 10. Способ по любому из пп. 2, 4, 6, 7, 8, в котором, по меньшей мере, в одном наборе критериев, имеется критерий, для проверки которого выполняют проверку сходства заранее сохраненного эталонного изображения с областью в знакоместе, размер и расположение которой заданы заранее.10. The method according to any one of paragraphs. 2, 4, 6, 7, 8, in which at least one set of criteria, there is a criterion for which verification, the similarity of the previously saved reference image with the region in familiarity is checked, the size and location of which are set in advance. 11. Способ по любому из пп. 2, 4, 6, 7, 8, в котором, по меньшей мере, в одном наборе критериев, имеется критерий, для проверки которого выполняют контроль наличия заранее заданного структурного элемента в знакоместе.11. The method according to any one of paragraphs. 2, 4, 6, 7, 8, in which, in at least one set of criteria, there is a criterion for which verification the presence of a predetermined structural element in familiarity is checked. 12. Способ по п. 7 или 9, в котором12. The method according to p. 7 or 9, in which получают набор числовых характеристик для каждой строки изображения знакоместа,get a set of numerical characteristics for each line of the image of familiarity, и на основе полученных наборов числовых характеристик выполняют коррекцию номера и положения начала координат для, по меньшей мере, одной проверочной прямой с целью учета положения изображения символа по отношению к границам знакоместа.and based on the obtained sets of numerical characteristics, the number and position of the coordinate origin are corrected for at least one check line in order to take into account the position of the symbol image in relation to the borders of familiarity. 13. Способ по п. 12, в котором13. The method according to p. 12, in which коррекция проводится в соответствии с положением оси тяжести изображения в пределах знакоместа, направленной в столбцевом направлении,the correction is carried out in accordance with the position of the axis of gravity of the image within familiarity directed in the column direction, такая, что координата на проверочной прямой в результате проведения коррекции отсчитывается от точки ее пересечения с указанной осью.such that the coordinate on the test line as a result of the correction is counted from the point of its intersection with the specified axis. 14. Способ по п. 13, в котором коррекция дополнительно проводится в соответствии с положением центра тяжести изображения знакоместа таким образом, чтобы расстояние от проверочной прямой с определенным номером до центра тяжести изображения, в результате проведения коррекции, соответствовало бы заранее заданной закономерности.14. The method according to p. 13, in which the correction is additionally carried out in accordance with the position of the center of gravity of the image of familiarity so that the distance from the test line with a certain number to the center of gravity of the image, as a result of the correction, would correspond to a predetermined pattern. 15. Способ по п. 13, в котором дополнительно проводится коррекция номера проверочной прямой в соответствии с положением охватывающего прямоугольника изображения символа.15. The method according to p. 13, in which the correction of the number of the test line is carried out in accordance with the position of the surrounding rectangle of the symbol image. 16. Сопроцессор для вычислительной системы устройства для обработки банкнот, содержащий16. A coprocessor for a computer system of a banknote processing device, comprising входной порт для получения значений пикселей, соответствующих знакоместу, где указанное значение определяет либо пиксель символа, либо пиксель пробела,input port for receiving pixel values corresponding to familiarity, where the specified value determines either a pixel of a character or a pixel of a space, решающую логическую схему, выполненную с возможностью обеспечить нахождение набора числовых характеристик для каждой проверочной прямой знакоместа, включающего в себяa decisive logic circuit configured to provide a set of numerical characteristics for each test direct familiarity, including длину интервала, охватывающего все пиксели символа, расположенные на проверочной прямой,the length of the interval that covers all the pixels of the character located on the test line, количество интервалов пикселей символа, в которых пиксели символа расположены на проверочной прямой друг за другом,the number of pixel intervals of the symbol in which the pixels of the symbol are located on the test line one after another, сумму координат пикселей символа, расположенных на проверочной прямой, выраженных в одномерной системе координат проверочной прямой,the sum of the coordinates of the pixels of the symbol located on the test line, expressed in a one-dimensional coordinate system of the test line, и суммарное число всех пикселей символа, расположенных на проверочной прямой,and the total number of all pixels of the character located on the test line, и выходной порт для выдачи наборов числовых характеристик, соответствующих строкам знакоместа.and an output port for issuing sets of numerical characteristics corresponding to familiarity strings. 17. Сопроцессор по п. 16, в котором решающая логическая схема выполнена с возможностью обеспечения коррекции возможных дефектов цифрового изображения путем фильтрации пикселей, соответствующих знакоместу, по заранее заданному правилу.17. The coprocessor according to claim 16, in which the decisive logic circuit is configured to correct possible defects in the digital image by filtering pixels corresponding to the familiarity according to a predetermined rule. 18. Сопроцессор по п. 17, в котором решающая логическая схема содержит, по меньшей мере, два сегмента, каждый из которых выполнен с возможностью обеспечения нахождения набора числовых характеристик для отдельной проверочной прямой знакоместа.18. The coprocessor according to claim 17, in which the decision logic contains at least two segments, each of which is configured to provide a set of numerical characteristics for a single test direct familiarity. 19. Сопроцессор по п. 18, в котором решающая логическая схема содержит реализацию конечного автомата для вычисления числовых характеристик отдельной проверочной прямой, выполненную с возможностью обеспечения последовательной подачи на вход автомата значений пикселей, находящихся на проверочной прямой, при этом19. The coprocessor according to claim 18, in which the decision logic includes the implementation of a finite state machine for calculating the numerical characteristics of a separate test line, configured to provide sequential feed to the machine input of pixel values located on the test line, подаваемое на вход значение определяет переход между состояниями автомата,the value supplied to the input determines the transition between the states of the machine, а граф переходов обеспечивает формирование числовых характеристик проверочной прямой во внутренних регистрах автомата.and the transition graph provides the formation of numerical characteristics of the test line in the internal registers of the machine. 20. Сопроцессор по п. 18, в котором решающая логическая схема содержит комбинационную часть для вычисления числовых характеристик отдельной проверочной прямой, на вход которой подаются значения пикселей, находящихся на проверочной прямой, а на выходе формируются значения числовых характеристик строки знакоместа.20. The coprocessor according to claim 18, in which the decisive logic circuit contains a combinational part for calculating the numerical characteristics of a separate test line, the input of which is supplied with the pixel values located on the test line, and the values of the numerical characteristics of the familiarity string are generated at the output.
RU2019119156A 2019-06-20 2019-06-20 Method of recognizing a symbol on a banknote and a coprocessor for a computing system of a banknote processing device RU2707320C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2019119156A RU2707320C1 (en) 2019-06-20 2019-06-20 Method of recognizing a symbol on a banknote and a coprocessor for a computing system of a banknote processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2019119156A RU2707320C1 (en) 2019-06-20 2019-06-20 Method of recognizing a symbol on a banknote and a coprocessor for a computing system of a banknote processing device

Publications (1)

Publication Number Publication Date
RU2707320C1 true RU2707320C1 (en) 2019-11-26

Family

ID=68653264

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2019119156A RU2707320C1 (en) 2019-06-20 2019-06-20 Method of recognizing a symbol on a banknote and a coprocessor for a computing system of a banknote processing device

Country Status (1)

Country Link
RU (1) RU2707320C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117710987A (en) * 2024-02-06 2024-03-15 武汉卓目科技有限公司 Crown word size segmentation method, device, electronic equipment and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2438182C1 (en) * 2010-04-08 2011-12-27 Общество С Ограниченной Ответственностью "Конструкторское Бюро "Дорс" (Ооо "Кб "Дорс") Method of processing banknotes (versions)
RU2574120C2 (en) * 2010-05-27 2016-02-10 Гизеке Унд Девриент Гмбх Device for authenticating valuable documents
EA025922B1 (en) * 2011-03-25 2017-02-28 Олограм Эндюстри Method of automatically authenticating a secure document
EP3188138A1 (en) * 2015-12-31 2017-07-05 Hand Held Products, Inc. Devices, systems, and methods for optical validation
EP2639774B1 (en) * 2007-06-01 2018-09-26 KBA-NotaSys SA Detection of security features provided on security documents
US20190066428A1 (en) * 2017-08-23 2019-02-28 Glory Ltd. Invisible-feature detection device, sheet recognition device, sheet handling device, print inspection device, and invisible-feature detection method
US10275971B2 (en) * 2016-04-22 2019-04-30 Ncr Corporation Image correction

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2639774B1 (en) * 2007-06-01 2018-09-26 KBA-NotaSys SA Detection of security features provided on security documents
RU2438182C1 (en) * 2010-04-08 2011-12-27 Общество С Ограниченной Ответственностью "Конструкторское Бюро "Дорс" (Ооо "Кб "Дорс") Method of processing banknotes (versions)
RU2574120C2 (en) * 2010-05-27 2016-02-10 Гизеке Унд Девриент Гмбх Device for authenticating valuable documents
EA025922B1 (en) * 2011-03-25 2017-02-28 Олограм Эндюстри Method of automatically authenticating a secure document
EP3188138A1 (en) * 2015-12-31 2017-07-05 Hand Held Products, Inc. Devices, systems, and methods for optical validation
US10275971B2 (en) * 2016-04-22 2019-04-30 Ncr Corporation Image correction
US20190066428A1 (en) * 2017-08-23 2019-02-28 Glory Ltd. Invisible-feature detection device, sheet recognition device, sheet handling device, print inspection device, and invisible-feature detection method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117710987A (en) * 2024-02-06 2024-03-15 武汉卓目科技有限公司 Crown word size segmentation method, device, electronic equipment and storage medium
CN117710987B (en) * 2024-02-06 2024-06-11 武汉卓目科技有限公司 Crown word size segmentation method, device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
US5208869A (en) Character and pattern recognition machine and method
US5097517A (en) Method and apparatus for processing bank checks, drafts and like financial documents
US4408342A (en) Method for recognizing a machine encoded character
JP3343864B2 (en) How to separate words
Palacios et al. A system for processing handwritten bank checks automatically
IE56452B1 (en) Image processors
JPH0587871B2 (en)
JPS6077279A (en) Initiation of character image
US9563811B2 (en) Character recognition method, character recognition apparatus and financial apparatus
JPS63182793A (en) Character segmenting system
JP2014115781A (en) Character recognition device and method, and character recognition program
KR102094234B1 (en) Serial number recognition Apparatus and method for paper money
RU2707320C1 (en) Method of recognizing a symbol on a banknote and a coprocessor for a computing system of a banknote processing device
JP2003305927A (en) Printer inspection system
CA2036274A1 (en) Document processor including method and apparatus for identifying and correcting errors
WO1988002157A1 (en) Character and pattern recognition machine and method
JP2647271B2 (en) How to identify and correct reading errors
US5872730A (en) Computerized correction of numeric data
Balm An introduction to optical character reader considerations
TWI549099B (en) Method for recognizing serial number of bill
JPH0877293A (en) Character recognition device and generating method for dictionary for character recognition
EP0201909A2 (en) Procedure for automatic reading of images and device for carrying out this same procedure
JPS5914078A (en) Reader of business form
JPS63142487A (en) Rapid extraction system for specific character string
JPH04139593A (en) Postal code number recognition device