RU2792722C1 - Splitting images into separate color layers - Google Patents
Splitting images into separate color layers Download PDFInfo
- Publication number
- RU2792722C1 RU2792722C1 RU2021136357A RU2021136357A RU2792722C1 RU 2792722 C1 RU2792722 C1 RU 2792722C1 RU 2021136357 A RU2021136357 A RU 2021136357A RU 2021136357 A RU2021136357 A RU 2021136357A RU 2792722 C1 RU2792722 C1 RU 2792722C1
- Authority
- RU
- Russia
- Prior art keywords
- monochrome
- image
- patch
- document image
- clusters
- Prior art date
Links
Images
Abstract
Description
ОБЛАСТЬ ТЕХНИКИFIELD OF TECHNOLOGY
[0001] Варианты осуществления изобретения в целом относятся к компьютерным системам, а в частности - к системам и способам обработки изображений. В частности, варианты осуществления настоящего изобретения относятся к разделению изображения на отдельные цветовые слои для последующей обработки изображения и извлечения информации из этих слоев.[0001] Embodiments of the invention generally relate to computer systems, and in particular to image processing systems and methods. In particular, embodiments of the present invention relate to dividing an image into separate color layers for post-processing of the image and extracting information from these layers.
УРОВЕНЬ ТЕХНИКИBACKGROUND OF THE INVENTION
[0002] При обработке документов и изображений часто встречаются изображения документов, содержащие более одного слоя записанной информации. Например, в настоящее время документы и изображения, содержащие дополнительные объекты, такие как штампы, печати, оттиски, сепараторы/разделители и другую информацию в дополнение к тексту, становятся все более распространенными. В таких типах документов и изображений может возникнуть проблема с оптическим распознаванием символов (OCR), когда печати (или другие объекты) расположены поверх текста и перекрывают его. Таким образом, наличие таких объектов, содержащих информацию, наложенную поверх других объектов или текста, который уже находился на поверхности документа или изображения, может помешать процессу оптического распознавания символов и снизить его качество и точность (например, печать на более высоком слое изображения поверх текста на нижнем слое изображения).[0002] In document and image processing, it is common to see document images containing more than one layer of recorded information. For example, nowadays documents and images containing additional objects such as stamps, seals, impressions, separators/separators and other information in addition to text are becoming more common. In these types of documents and images, optical character recognition (OCR) problems can occur when stamps (or other objects) are placed on top of the text and overlap it. Thus, the presence of such objects containing information superimposed on top of other objects or text that was already on the surface of a document or image can interfere with the OCR process and reduce its quality and accuracy (for example, printing on a higher image layer on top of text on the bottom layer of the image).
РАСКРЫТИЕ ИЗОБРЕТЕНИЯDISCLOSURE OF THE INVENTION
[0003] Варианты осуществления настоящего изобретения описывают механизмы разделения изображения документа на отдельные цветовые слои.[0003] Embodiments of the present invention describe mechanisms for dividing a document image into separate color layers.
[0004] Способ, применяемый в настоящем изобретении, включает в себя получение устройством обработки данных изображения документа, разделение изображения документа на множество патчей и определение для каждого патча, является ли данный патч монохромным или не монохромным (полихромным, многоцветным). Он также включает в себя кластеризацию множества монохромных патчей на множество кластеров в цветовом пространстве, где каждый кластер соответствует цветовому слою из множества цветовых слоев изображения документа, а также сегментирование/сегментацию каждого не монохромного патча на соответствующее множество монохромных сегментов. Способ также включает в себя связывание/ассоциирование, для каждого не монохромного патча, каждого монохромного сегмента соответствующего множества монохромных сегментов с одним кластером из множества кластеров и использование множества кластеров для выполнения задачи извлечения информации из изображения документа.[0004] The method used in the present invention includes obtaining a document image data processing device, dividing the document image into a plurality of patches, and determining for each patch whether the given patch is monochrome or non-monochrome (polychrome, multicolor). It also includes clustering a plurality of monochrome patches into a plurality of clusters in a color space, where each cluster corresponds to a color layer from a plurality of color layers in a document image, and segmenting/segmenting each non-monochrome patch into a corresponding plurality of monochrome segments. The method also includes linking/associating, for each non-monochrome patch, each monochrome segment of a corresponding plurality of monochrome segments with one cluster of the plurality of clusters, and using the plurality of clusters to perform the task of extracting information from a document image.
[0005] Система, используемая в изобретении, включает в себя память и процессор, связанный с памятью, при этом процессор сконфигурирован для получения изображения документа, разделения изображения документа на множество патчей и определения для каждого патча, является ли данный патч монохромным или не монохромным. Кроме того, конфигурация процессора обеспечивает кластеризацию множества монохромных патчей на множество кластеров в цветовом пространстве, где каждый кластер соответствует цветовому слою из множества цветовых слоев изображения документа, а также сегментирование каждого не монохромного патча на соответствующее множество монохромных сегментов. Конфигурация процессора также обеспечивает связывание, для каждого не монохромного патча, каждого монохромного сегмента соответствующего множества монохромных сегментов с одним кластером из множества кластеров и использование множества кластеров для выполнения задачи извлечения информации из изображения документа.[0005] The system used in the invention includes a memory and a processor coupled to the memory, the processor configured to acquire a document image, divide the document image into a plurality of patches, and determine for each patch whether a given patch is monochrome or non-monochrome. In addition, the processor configuration provides for clustering a plurality of monochrome patches into a plurality of clusters in a color space, where each cluster corresponds to a color layer from a plurality of color layers of the document image, as well as segmenting each non-monochrome patch into a corresponding plurality of monochrome segments. The processor configuration also provides for associating, for each non-monochrome patch, each monochrome segment a corresponding plurality of monochrome segments with one cluster of the plurality of clusters, and using the plurality of clusters to perform the task of extracting information from the document image.
[0006] Энергонезависимый машиночитаемый носитель данных в настоящем изобретении включает в себя команды/инструкции, которые при доступе к ним устройством обработки данных вынуждают устройство обработки данных принимать изображение документа, разделять изображение документа на множество патчей и определять для каждого патча, является ли данный патч монохромным или не монохромным. К тому же команды вынуждают устройство обработки данных выполнять кластеризацию множества монохромных патчей на множество кластеров в цветовом пространстве, где каждый кластер соответствует цветовому слою из множества цветовых слоев изображения документа, а также сегментирование каждого не монохромного патча на соответствующее множество монохромных сегментов. Дополнительно команды вынуждают устройство обработки данных обеспечивать связывание, для каждого не монохромного патча, каждого монохромного сегмента соответствующего множества монохромных сегментов с одним кластером из множества кластеров и использование множества кластеров для выполнения задачи извлечения информации из изображения документа.[0006] The non-volatile computer-readable storage medium of the present invention includes commands/instructions that, when accessed by a processing device, cause the processing device to receive a document image, divide the document image into a plurality of patches, and determine for each patch whether the given patch is monochrome or non-monochrome. In addition, the instructions cause the data processing device to cluster the plurality of monochrome patches into a plurality of clusters in a color space, where each cluster corresponds to a color layer from the plurality of color layers of the document image, and segment each non-monochrome patch into a corresponding plurality of monochrome segments. Additionally, the commands cause the data processor to associate, for each non-monochrome patch, each monochrome segment of the corresponding set of monochrome segments with one cluster of the set of clusters, and use the set of clusters to perform the task of extracting information from the document image.
[0007] Эти и другие элементы и признаки станут более ясными в последующем подробном описании иллюстративных реализаций и вариантов осуществления настоящего изобретения, которое следует рассматривать вместе с прилагаемыми чертежами.[0007] These and other elements and features will become clearer in the following detailed description of illustrative implementations and embodiments of the present invention, which should be considered in conjunction with the accompanying drawings.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS
[0008] Изобретение станет более понятным из подробного описания, приведенного ниже, и из прилагаемых чертежей различных вариантов осуществления изобретения. Однако чертежи не должны использоваться с целью ограничения изобретения конкретными вариантами осуществления. Чертежи предназначены только для пояснения и понимания.[0008] The invention will become more apparent from the detailed description below and from the accompanying drawings of various embodiments of the invention. However, the drawings should not be used to limit the invention to particular embodiments. The drawings are for illustration and understanding purposes only.
[0009] На Фиг. 1 представлена блок-схема способа разделения изображения документа на отдельные цветовые слои для извлечения информации в соответствии с вариантом осуществления настоящего изобретения.[0009] In FIG. 1 is a flow diagram of a method for dividing a document image into separate color layers for extracting information, in accordance with an embodiment of the present invention.
[0010] На Фиг. 2A показан пример серии корректировок свойств документа в соответствии с некоторыми вариантами осуществления настоящего изобретения.[0010] In FIG. 2A shows an example of a series of document property adjustments in accordance with some embodiments of the present invention.
[0011] На Фиг. 2B показан пример диаграммы генерирования карты порогов в соответствии с некоторыми вариантами осуществления настоящего изобретения.[0011] In FIG. 2B shows an example of a threshold map generation diagram in accordance with some embodiments of the present invention.
[0012] На Фиг. 3 представлена схема примера изображения документа, разделенного на патчи, в соответствии с некоторыми вариантами осуществления настоящего изобретения.[0012] In FIG. 3 is a diagram of an example image of a document divided into patches, in accordance with some embodiments of the present invention.
[0013] На Фиг. 4 представлена блок-схема способа классификации патчей в соответствии с некоторыми вариантами осуществления настоящего изобретения.[0013] In FIG. 4 is a flow diagram of a method for classifying patches in accordance with some embodiments of the present invention.
[0014] На Фиг. 5 представлена блок-схема кластеризации патчей в соответствии с некоторыми вариантами осуществления настоящего изобретения.[0014] In FIG. 5 is a block diagram of patch clustering in accordance with some embodiments of the present invention.
[0015] На Фиг. 6 показана схема цветового слоя примерного изображения документа в соответствии с некоторыми вариантами осуществления настоящего изобретения.[0015] In FIG. 6 shows a color layer diagram of an exemplary document image, in accordance with some embodiments of the present invention.
[0016] На Фиг. 7 показана схема цветового слоя примерного изображения документа в соответствии с некоторыми вариантами осуществления настоящего изобретения.[0016] In FIG. 7 shows a color layer diagram of an exemplary document image in accordance with some embodiments of the present invention.
[0017] На Фиг. 8 показана схема цветового слоя примерного изображения документа в соответствии с некоторыми вариантами осуществления настоящего изобретения.[0017] In FIG. 8 shows a color layer diagram of an exemplary document image in accordance with some embodiments of the present invention.
[0018] На Фиг. 9 представлена блок-схема компьютерной системы в соответствии с некоторыми вариантами осуществления настоящего изобретения.[0018] In FIG. 9 is a block diagram of a computer system in accordance with some embodiments of the present invention.
ПОДРОБНОЕ ОПИСАНИЕDETAILED DESCRIPTION
[0019] Настоящее изобретение описывает способы и системы для разделения изображения документа на отдельные цветовые слои, которые можно использовать для извлечения информации из изображения документа. Учитывая распространение документов с несколькими слоями информации, записанными один на другом (например, текст, введенный в форму, а затем заверенный печатью, наложенной поверх текста и поля формы), возникают трудности с выполнением задачи оптического распознавания символов (OCR). В документах, где несколько слоев информации, таких как текст и объекты, перекрывают друг друга или накладываются друг на друга, уровень качества и точности операций оптического распознавания символов значительно снижается.[0019] The present invention describes methods and systems for dividing a document image into separate color layers that can be used to extract information from a document image. Given the proliferation of documents with multiple layers of information written one on top of the other (for example, text entered into a form and then stamped over the text and form field), difficulties arise in performing an optical character recognition (OCR) task. In documents where multiple layers of information, such as text and objects, overlap or overlap each other, the level of quality and accuracy of OCR operations is greatly reduced.
[0020] В ситуациях, когда документы содержат несколько слоев наложенной информации, разные типы информации могут быть выражены с помощью знаков разных цветов в изображении документа. Например, документы-формы могут представлять собой заполняемые формы с различными полями и метками полей с инструкциями по заполнению форм, а также разделителями и другими разделяющими элементами, определяющими заполняемые поля. Некоторые цветные документы-формы (например, формы с исключением цветов (color dropout)), где поля, инструкции, разделители полей и другие элементы могут быть представлены одним цветом, а текст или другая информация, введенная в форму и ее соответствующие поля, представлены другим цветом (т.е. записи полей имеют другой цвет, чем остальная часть документа-формы). Однако в некоторых ситуациях введенный текст или информация могут пересекаться с разделяющими элементами (например, с разделителями полей формы) документа-формы, а также полями и текстом с инструкциями документа-формы. Точно также штампы или подписи, которые наносятся на документ после его заполнения, могут перекрываться как с информацией, введенной в документ-форму, так и с полями и элементами самого документа-формы. В этих ситуациях распознавание символов существенно усложняется, поскольку перекрывающиеся элементы мешают процессу оптического распознавания символов.[0020] In situations where documents contain multiple layers of overlay information, different types of information can be expressed using characters of different colors in the image of the document. For example, form documents can be fillable forms with various fields and field labels with instructions for filling out the forms, as well as separators and other separating elements that define the fillable fields. Some color form documents (for example, color dropout forms) where fields, instructions, field separators, and other elements may be represented in one color, but text or other information entered on the form and its corresponding fields are represented in a different color color (i.e. field entries have a different color than the rest of the form document). However, in some situations, the entered text or information may overlap with separating elements (for example, form field separators) of the form document, as well as fields and text with instructions on the form document. In the same way, stamps or signatures that are applied to a document after it is filled out can overlap both with the information entered in the form document and with the fields and elements of the form document itself. In these situations, character recognition becomes much more difficult because the overlapping elements interfere with the OCR process.
[0021] Аспекты и варианты осуществления настоящего изобретения направлены на устранение вышеупомянутых недостатков и проблем существующей технологии и представляют новые подходы и механизмы для разделения изображения документа на множество цветовых слоев для последующего выполнения более точных и более эффективных операций оптического распознавания символов с целью извлечения информации.[0021] Aspects and embodiments of the present invention address the aforementioned shortcomings and problems of existing technology and provide new approaches and mechanisms for dividing a document image into multiple color layers for subsequent performance of more accurate and more efficient OCR operations to extract information.
[0022] Примечательно, что для целей оптического распознавания символов или извлечения информации данные из разных слоев документа могут иметь различную важность. Например, может потребоваться получить информацию, содержащуюся только в одном из слоев изображения документа. Довольно часто желаемая информация присутствует на изображении документа в одном или нескольких цветах, визуально похожих друг на друга. В таких случаях достаточно разделить изображение документа на отдельные цветовые слои, чтобы иметь возможность выполнять оптическое распознавание символов на цветовом слое, содержащем необходимую информацию.[0022] It is noteworthy that for the purposes of optical character recognition or information extraction, data from different layers of the document may have different importance. For example, you may want to retrieve information that is contained in only one of the layers in a document's image. Quite often, the desired information is present on the image of the document in one or more colors that are visually similar to each other. In such cases, it is sufficient to divide the document image into separate color layers in order to be able to perform optical character recognition on the color layer containing the necessary information.
[0023] С другой стороны, в других ситуациях может быть желательно извлечь информацию, содержащуюся в нескольких слоях изображения документа. В этих случаях значительно проще и эффективнее выполнять оптическое распознавание символов или другие операции извлечения информации отдельно для каждого слоя. Элементы изображения документа вместе с их координатами на изображении документа могут использоваться для связывания записей полей с метками полей (например, для идентификации, к какому полю или категории относится информация, содержащаяся в данном элементе). Такие связи особенно полезны для извлечения структурированной информации из документов.[0023] On the other hand, in other situations it may be desirable to extract information contained in multiple layers of a document image. In these cases, it is much easier and more efficient to perform optical character recognition or other information extraction operations separately for each layer. Document image elements, together with their document image coordinates, can be used to associate field records with field labels (for example, to identify which field or category the information contained in the element belongs to). Such links are especially useful for extracting structured information from documents.
[0024] Используемый здесь термин «документ» может относиться к любому типу документа, включая, например, счета-фактуры, документы, удостоверяющие личность, чеки, кредитные заявки, банковские документы, соглашения, одно- или многостраничные документы, коносаменты, акты, бухгалтерские документы, финансовые отчеты, патенты, отчеты о патентном поиске, а также любые другие документы, которые часто хранятся на предприятиях в бумажной или отсканированной форме.[0024] As used herein, the term "document" may refer to any type of document, including, for example, invoices, identification documents, cheques, loan applications, bank documents, agreements, one- or multi-page documents, bills of lading, deeds, accounting documents, financial statements, patents, patent search reports, and any other documents that are often kept by businesses in paper or scanned form.
[0025] На Фиг. 1 представлена блок-схема способа 100 разделения изображения документа на отдельные цветовые слои для извлечения информации в соответствии с вариантом осуществления настоящего изобретения. В целом, операции, описанные в настоящем изобретении, могут включать в себя несколько процессов, в том числе получение или извлечение изображения документа в блоке 102 и выполнение корректировки его визуальных свойств, таких как выравнивание яркости/освещения, изменение контрастности в блоке 104 и бинаризацию (преобразование в двоичную форму) в блоке 106. Кроме того, варианты осуществления настоящего изобретения могут включать в себя поиск связных компонент в блоке 108, разделение изображения документа на патчи в блоке 110 и вычисление статистик в блоке 112 для каждого патча с последующей возможностью классификации патчей на монохромные или не монохромные (т.е. полихромные, многоцветные) в блоке 114 и кластеризацией в блоке 116. В некоторых вариантах осуществления изобретения кластеризация может быть основана на вычислении центроидов кластеров в цветовом пространстве, которое может соответствовать цветовому слою изображения документа. Кластеризация патчей может быть выполнена первоначально для монохромных патчей (участков), а не монохромные патчи могут быть сегментированы в блоке 118 на монохромные сегменты, каждый из которых затем может быть связан в блоке 120 с соответствующим кластером. Таким образом, отдельные цветовые слои изображения документа, каждый из которых соответствует разному кластеру монохромных патчей, а также монохромные сегменты не монохромных патчей могут быть идентифицированы в блоке 122 на данном исходном/входном изображении документа. Затем информация может быть извлечена в блоке 124 из одного или нескольких слоев изображения документа с использованием оптического распознавания символов или других методов извлечения информации.[0025] In FIG. 1 is a flow diagram of a
[0026] В следующем описании подробно объясняются признаки и элементы некоторых вариантов осуществления настоящего изобретения. Особое внимание уделяется основным аспектам разделения изображения документа на отдельные/обособленные цветовые слои для последующей обработки и анализа. В некоторых вариантах осуществления изобретения способ извлечения информации из изображения документа может включать в себя получение одного или нескольких изображений документа. Изображения документа могут быть получены с устройства (например, камеры или сканера), способного записывать цифровую копию документа с физической копии. В некоторых вариантах осуществления изобретения изображения документа могут быть извлечены из цифрового хранилища.[0026] The following description explains in detail the features and elements of some embodiments of the present invention. Particular attention is paid to the main aspects of the separation of the document image into separate / separate color layers for further processing and analysis. In some embodiments of the invention, a method for extracting information from an image of a document may include obtaining one or more images of the document. Images of a document can be captured from a device (such as a camera or scanner) capable of making a digital copy of the document from the physical copy. In some embodiments of the invention, document images may be retrieved from digital storage.
[0027] На Фиг. 2 показан пример серии корректировок свойств документа в соответствии с некоторыми вариантами осуществления настоящего изобретения. Изображение 202 документа показывает состояние изображения при его получении, в то время как изображение 204 документа и изображение 206 документа показывают состояние изображения, соответственно, после корректировки свойств и бинаризации. В некоторых вариантах осуществления изобретения документы могут представлять собой цветные документы-формы 202, содержащие записи в полях 211 формы, на которые наложены печати 213. Этот тип структуры часто можно увидеть в квитанциях и счетах. В частности, хотя нижеследующее описание будет сосредоточено на варианте осуществления изобретения, в котором задействован один одностраничный документ, различные аспекты описанных здесь вариантов осуществления изобретения могут быть в равной степени применимы к наборам из нескольких документов и к многостраничным документам.[0027] In FIG. 2 shows an example of a series of document property adjustments in accordance with some embodiments of the present invention. The
[0028] Таким образом, в некоторых вариантах осуществления визуальные свойства полученного изображения 202 документа могут корректироваться. Это, в частности, подразумевает выполнение выравнивания яркости изображения 202 документа. Более конкретно, яркость изображения 202 документа изменяют так, чтобы области изображения документа, которые должны выглядеть белыми, но не выглядят таковыми, например, поле 211 формы, из-за неравномерного освещения, выглядели как истинно белые. Этого можно добиться разными способами, включая использование цифровых и электронных фильтров.[0028] Thus, in some embodiments, the visual properties of the resulting
[0029] Неравномерность (т.е. постепенные переходы от более темных областей к более светлым, плавные градиенты изменения яркости) представлена низкой частотой сигнала (т.е. низкой частотой изменения сигнала яркости). Напротив, основное содержимое изображения 202 документа (например, текст, печати/штампы, элементы формы, разделители и т.д.) представлено высокой частотой сигнала (т.е. сигнал яркости часто изменяется по величине, поскольку имеется много близко расположенных областей с чередованием темных и светлых участков). Соответственно, целью процесса выравнивания яркости является удаление или компенсация низкочастотной составляющей изображения и, таким образом, выравнивание яркости по всему изображению. Таким образом, яркость элементов, расположенных в более плохо освещенных областях изображения документа, также будет скорректирована. [0029] Non-uniformity (i.e., gradual transitions from darker areas to lighter areas, smooth brightness gradients) is represented by a low signal frequency (i.e., a low frequency of change in the luminance signal). In contrast, the main content of the document image 202 (e.g., text, seals/stamps, form elements, separators, etc.) is represented by a high signal frequency (i.e., the luminance signal often varies in magnitude because there are many closely spaced interlaced areas). dark and light areas). Accordingly, the goal of the luminance equalization process is to remove or compensate for the low frequency component of the image and thus equalize the luminance throughout the entire image. Thus, the brightness of elements located in more poorly lit areas of the document image will also be adjusted.
[0030] В различных вариантах осуществления можно использовать разнообразные фильтры для отфильтровывания высокочастотных компонентов от низкочастотных компонентов изображения 202 (например, медианный фильтр (median filter), фильтр верхних частот (high-pass filter), фильтр размытия по Гауссу (Gaussian blur filter), билатеральный фильтр (bilateral filter) и т.д.). После применения фильтра (например, медианного фильтра) будут удалены высокочастотные объекты / элементы, такие как текст, разделители и другие мелкие детали на изображении документа. На выходе фильтра может быть получено промежуточное изображение, содержащее только плавные изменения освещенности/интенсивности (т.е. информацию об изменениях яркости). Таким образом, в некоторых вариантах осуществления может применяться фильтр для удаления мелких детальных элементов из изображения 202 документа, оставляющий только фон с относительно плавными/постепенными изменениями яркости. Высокочастотные компоненты, удаленные фильтром, впоследствии могут быть восстановлены, поскольку именно эти компоненты могут использоваться для оптического распознавания символов и извлечения информации.[0030] In various embodiments, a variety of filters can be used to filter out the high frequency components from the low frequency components of the image 202 (e.g., median filter, high-pass filter, Gaussian blur filter), bilateral filter, etc.). After applying a filter (for example, a median filter), high-frequency objects / elements, such as text, separators and other small details in the document image, will be removed. At the output of the filter, an intermediate image can be obtained, containing only smooth changes in illumination/intensity (ie, information about changes in brightness). Thus, in some embodiments, a filter may be applied to remove fine detail from the
[0031] В некоторых вариантах осуществления, в зависимости от типа используемого фильтра, может быть предпочтительно использован фильтр большего, а не меньшего радиуса везде, где такая опция имеется. Однако в другом варианте осуществления для увеличения скорости и точности фильтрации могут применяться другие способы оптимизации фильтрации. Например, размер изображения 202 документа перед применением фильтра может быть уменьшен. Затем может быть применен фильтр меньшего радиуса (поскольку изображение меньше), после чего промежуточное изображение, полученное после применения фильтра, может быть возвращено к его исходному размеру.[0031] In some embodiments, depending on the type of filter used, it may be preferable to use a filter with a larger rather than a smaller radius wherever such an option is available. However, in another embodiment, other filtration optimization techniques may be used to increase the speed and accuracy of the filtration. For example, the
[0032] Ниже описывается модификация свойства яркости изображения после применения вышеупомянутого фильтра к изображению 202 документа. Если I - начальная яркость канала (например, красный/зеленый/синий канал (RGB)) исходного изображения 202 документа, то после фильтрации оставшуюся компоненту яркости (т.е. яркости того же канала в промежуточном изображении, полученном после применения фильтра) можно обозначить как I'. Соответственно, изображение можно корректировать путем нормализации/нормирования низкочастотного сигнала. Например, в некоторых вариантах осуществления для каждого канала яркость рассчитывается по формуле I нов. = I/ I'. Таким образом, яркость исходного изображения 202 делится на компонент яркости, полученный после применения фильтра, чтобы получить новую яркость I нов , которая выравнивается по всему изображению 204 и не содержит градаций яркости освещения, сохраняя при этом детализацию таких элементов, как текст, печати, разделители и т.д. (которые могут быть важными элементами для последующего оптического распознавания символов и извлечения информации). Выравнивание яркости делает ранее более темные области исходного изображения 202 более яркими, а ранее более светлые области изображения более темными, чтобы выровнять интенсивность освещения по всему изображению 204.[0032] The modification of the brightness property of an image after applying the above filter to the
[0033] Описанный выше способ выравнивания яркости относится к обычно встречающимся документам со светлым или белым фоном. Соответственно, цвет фона корректируется по всему изображению так, чтобы цвет фона соответствовал истинному белому цвету, а остальные цвета изображения нормализовались соответствующим образом. Однако аналогичный процесс может быть выполнен с документами с темным фоном (т.е. с документами, в которых светлый текст и другая информация представлены на черном или темном фоне). В этих случаях исходное изображение сначала инвертируется по цвету, чтобы привести его в стандартное представление с темным текстом и другой информацией на светлом фоне. После этого вышеупомянутый процесс корректировки и выравнивания яркости может выполняться в соответствии с описанием.[0033] The brightness equalization method described above applies to commonly encountered documents with a light or white background. Accordingly, the background color is adjusted throughout the image so that the background color is true white, and the rest of the image colors are normalized accordingly. However, a similar process can be performed on documents with dark backgrounds (i.e., documents in which light text and other information is presented on a black or dark background). In these cases, the original image is first inverted in color to bring it into a standard representation with dark text and other information on a light background. Thereafter, the aforementioned brightness adjustment and equalization process can be performed as described.
[0034] В некоторых вариантах осуществления также можно корректировать контрастность изображения. Существуют различные алгоритмы изменения контрастности изображения, которые можно применять для улучшения четкости границ различных существенных элементов изображения документа. Однако алгоритмы, учитывающие неравномерность освещения, могут быть предпочтительнее других. В одном из вариантов осуществления может применяться адаптивное увеличение контрастности относительно локального среднего значения. Это применимо к документам с относительно простой версткой. В одном варианте осуществления для адаптивного увеличения контрастности на различных участках/областях изображения к такому изображению может быть применено гауссово окно с прокруткой (например, окно с размытыми / нечеткими краями и с плотностью, постепенно уменьшающейся в направлении от центра). [0034] In some embodiments, the image contrast can also be adjusted. There are various algorithms for changing the contrast of an image that can be applied to improve the sharpness of the boundaries of various essential elements of the image of a document. However, algorithms that take into account illumination unevenness may be preferable to others. In one embodiment, adaptive contrast enhancement relative to a local average may be applied. This applies to documents with relatively simple layout. In one embodiment, to adaptively increase contrast in different areas/regions of an image, a Gaussian scrolling window (eg, a window with blurry/fuzzy edges and with density gradually decreasing away from the center) can be applied to such an image.
[0035] Для документов с более сложной версткой такой алгоритм адаптивной бинаризации может генерировать карту порогов посредством итеративного пирамидального процесса, приведенного на Фиг. 2B, относительно которого увеличение контрастности приводит к улучшению визуального качества. Соответственно, в этих вариантах осуществления для генерирования карты порогов к изображению применяется итеративный процесс разложения. Например, в одном варианте осуществления разложение может начинаться в масштабе исходного изображения 262. Изображение может быть разделено на непересекающиеся блоки 263 одинакового заданного размера (например, квадраты 2×2 пикселя, квадраты 3×3 пикселя и т.д.). Для каждого из блоков 263 (например, квадратов пикселей) могут быть определены значения минимальной, максимальной и средней яркости пикселей, составляющих блок (например, для квадрата 2×2 можно определить яркость 4-х составляющих пикселей). Из этих значений могут быть сформированы три изображения: (i) изображение 272, содержащее минимальные значения, (ii) изображение 274, содержащее максимальные значения, и (iii) изображение 276, содержащее средние значения, каждое из которых будет в два раза меньше по горизонтали и вертикали относительно исходного (или предыдущего) изображения. Эту процедуру можно повторять для размещения получаемых в результате изображений в пирамидальной структуре 260 до тех пор, пока не будет достигнут уровень, на котором размер получаемого в результате изображения 282, 284, 286 станет не меньше необходимого минимального размера (например, 2×2 пикселя).[0035] For more complex layout documents, such an adaptive binarization algorithm can generate a threshold map through the iterative pyramidal process shown in FIG. 2B , relative to which an increase in contrast results in an improvement in visual quality. Accordingly, in these embodiments, an iterative decomposition process is applied to an image to generate a threshold map. For example, in one embodiment, decomposition may begin at the scale of the
[0036] Таким образом, в некоторых вариантах осуществления с использованием вышеописанного пирамидального разложения 260 получают минимальные, максимальные и средние значения для исходных областей изображения в различных масштабах его представления. Способ построения карты порогов на основе пирамидального разложения может представлять собой многоступенчатый процесс. На нижнем уровне 282, 284, 286 пирамидального разложения, где изображение состоит только из нескольких пикселей, карта порогов может быть сгенерирована с использованием одного из двух следующих значений: (a) локальное среднее значение яркости пикселей этого участка изображения (т.е. яркость пикселя из изображения, сгенерированного из изображения 276, содержащего средние значения в пирамиде) или (b) среднее значение между локальным минимумом и максимумом (т.е. среднее значение яркости эквивалентного числа (например, 2) пикселей, взятых из изображения 272, сформированного из минимальных значений в пирамиде, и пикселей, взятых из изображения 274, сформированного из максимальных значений в пирамиде). Затем на следующем уровне разложения карта порогов может быть расширена в 2 раза как по горизонтали, так и по вертикали с использованием интерполяции со свертками [1 3], [3 1].[0036] Thus, in some embodiments, using the
[0037] Для каждого пикселя на каждом последующем уровне пирамидального разложения 260 может быть вычислена разность между значением пикселя из изображения 272, сформированного из минимальных значений в пирамиде, и изображения, сформированного из максимальных 274 значений в пирамиде. Если эта разница не превышает заранее определенного порогового значения (например, заранее определенного порогового значения шума, ниже которого информация считается незначительным шумом), можно предположить, что на этом участке изображения полезного сигнала нет, причем как на этом, так и на последующих уровнях пирамидального разложения 260. Следовательно, пороговое значение, полученное на предыдущем уровне разложения, можно оставить без изменений. В противном случае, если превышено предварительно определенное пороговое значение, может быть вычислено новое уточненное пороговое значение на основе комбинации (a) и (b) выше.[0037] For each pixel at each successive level of
[0038] Вышеописанную процедуру можно повторять до тех пор, пока не будет достигнут такой уровень разложения, при котором участки 290 изображения, соответствующие пикселям в пирамиде, все еще больше самых маленьких элементов (например, букв, символов, чисел и т.д.), различаемых на изображении. В результате получается карта порогов, относительно которой увеличение контрастности не приводит к потере или удалению объектов различного размера, и при этом однородные участки на изображении не содержат шум. Соответственно, карта порогов используется для увеличения контрастности, чтобы яркость участков в каждом окне, где яркость выше порогового значения, усиливалась, а яркость участков в каждом окне, где яркость ниже порогового значения, уменьшалась для более четкого определения различных элементов изображения документа. В других вариантах осуществления для цветных изображений контраст может быть усилен для компоненты яркости (т.е. для компоненты серого в изображении) при одновременном уменьшении коэффициента усиления контрастности для насыщенных цветом участков изображения.[0038] The above procedure can be repeated until such a level of decomposition is reached that the
[0039] В некоторых вариантах осуществления изображение документа может быть бинаризовано для создания черно-белого изображения 206. Процесс бинаризации - это преобразование цветного изображения или изображения в градациях серого в бинарное черно-белое изображение 206. Как более подробно описано далее, процесс бинаризации может выполняться различными способами, такими как, например, метод Отцу (т.е. глобальная бинаризация) и методы локальной адаптивной бинаризации (например, метод порогового значения Ниблэка и Совола (Niblack and Sauvola)). Одним из основных параметров этого преобразования является пороговое значение t, с которым сравнивается яркость / насыщенность каждого пикселя. После сравнения путем определения, является ли яркость данного пикселя ниже или выше порогового значения t, пикселю соответственно присваивается значение 0 или 1.[0039] In some embodiments, a document image may be binarized to create a black and
[0040] Бинаризованное изображение 206 может быть представлено в виде региона, представленного структурой данных, где соответствующий регион имеет максимальные значения (т.е. значения, равные 1) в структуре данных. Соответственно, регионом можно считать все черные части бинаризованного изображения, содержащие весь текст, объекты, разделители и т.д. (т.е. значимые объекты изображения). Другими словами, регион - это маска значимых элементов, присутствующих на изображении документа. Эта маска содержит элементы, которые можно использовать для последующего оптического распознавания символов и извлечения информации. В частности, вышеупомянутый процесс бинаризации также может быть далее использован для получения масок для каждого цветового слоя изображения. Например, белые пиксели в бинаризованном изображении документа могут быть автоматически связаны с фоновым слоем по всем каналам. Соответственно, после бинаризации изображение 206 может быть разделено на два класса пикселей: пиксели фона и пиксели, принадлежащие объектам / элементам изображения документа.[0040] The
[0041] В некоторых вариантах осуществления связные компоненты могут быть выявлены в изображении документа и проанализированы. В этих вариантах осуществления связные компоненты выявляются в бинаризованном изображении документа, после чего они могут быть проанализированы для определения их соответствующих размеров. Выявление и анализ связных компонент может облегчить разделение изображения на патчи, как показано на Фиг. 3. Связная компонента - это объект, пиксели которого примыкают к соседним пикселям. Связность может быть определена смежностью с другими пикселями в любом из четырех направлений (например, влево, вправо, вверх, вниз) или в любом из восьми направлений, если дополнительные четыре диагональных направления рассматриваются как возможные связи между начальными четырьмя направлениями. В случае, если пара пикселей не имеет каких-либо соседних связанных пикселей между ними, можно определить, что эти пиксели принадлежат разным связным компонентам. Например, число «12» включает две отдельных связных компоненты «1» и «2», в то время как буква «B» сформирована одной связной компонентой. Соответственно, если элементы на бинаризованном изображении документа перекрываются, пересекаются, сливаются, соприкасаются или иным образом связаны друг с другом каким-либо образом, их можно рассматривать как часть единой связной компоненты.[0041] In some embodiments, cohesive components can be identified in a document image and analyzed. In these embodiments, connected components are identified in a binarized document image, after which they can be analyzed to determine their respective sizes. The identification and analysis of connected components can facilitate the division of an image into patches, as shown in FIG. 3 . A connected component is an object whose pixels are adjacent to neighboring pixels. Connectivity can be defined by adjacencies to other pixels in any of the four directions (eg, left, right, up, down) or in any of the eight directions if the additional four diagonal directions are considered as possible links between the initial four directions. In case a pair of pixels does not have any neighboring connected pixels between them, it can be determined that these pixels belong to different connected components. For example, the number "12" includes two separate connected components "1" and "2", while the letter "B" is formed by one connected component. Accordingly, if elements in a binarized document image overlap, intersect, merge, touch, or otherwise relate to each other in any way, they can be considered part of a single cohesive component.
[0042] Затем, в некоторых вариантах осуществления, может быть определен размер идентифицированных связных компонент, на основе которого будет определяться конкретный размер соответствующего патча для разделения изображения документа. Патч можно понимать, как непересекающуюся прямоугольную область, содержащую связную компоненту. Размер патча может быть таким же или немного больше, чем размер соответствующей связной компоненты, чтобы каждый патч полностью включал в себя соответствующую связную компоненту. Соответственно, в одном из вариантов осуществления каждая связная компонента может быть заключена в отчетливый отдельный патч. В таком варианте осуществления меньший патч, заключающий в себе маленькую связную компоненту, может содержаться в более крупном патче, заключающем в себе более крупную связную компоненту. Например, как показано, изображение 300 документа разделено на различные патчи разного размера. Область 310 содержит связные элементы, полностью содержащиеся в патчах 312.[0042] Then, in some embodiments, the size of the identified connected components can be determined, based on which the specific size of the corresponding patch for separating the document image will be determined. A patch can be understood as a non-overlapping rectangular area containing a connected component. The patch size can be the same or slightly larger than the size of the corresponding connected component, so that each patch completely includes the corresponding connected component. Accordingly, in one embodiment, each connected component may be enclosed in a distinct individual patch. In such an embodiment, a smaller patch containing a small connected component may be contained within a larger patch containing a larger connected component. For example, as shown, the
[0043] В другом варианте осуществления размеры различных связных компонент изображения документа могут быть кластеризованы в заранее определенное количество кластеров, а средний размер связной компоненты в наиболее репрезентативном/характерном кластере (т.е. в кластере с наибольшим количеством элементов) может быть выбран в качестве репрезентативного/типового размера патча. В этом варианте осуществления связные компоненты могут быть покрыты патчами типичного размера; при этом все связанные компоненты покрываются / охвачены по крайней мере одним патчем, и, если отдельный патч не охватывает данную связную компоненту, он покрывается несколькими непересекающимися патчами.[0043] In another embodiment, the sizes of the various connected components of a document image may be clustered into a predetermined number of clusters, and the average size of the connected component in the most representative/typical cluster (i.e., the cluster with the most elements) may be chosen as representative/typical patch size. In this embodiment, the connected components may be covered with patches of a typical size; in this case, all connected components are covered / covered by at least one patch, and if a single patch does not cover a given connected component, it is covered by several non-overlapping patches.
[0044] Таким образом, изображение документа разбивается на патчи, содержащие связные компоненты. В частности, патчи содержат некоторые важные элементы изображения документа, а не исключительно пустые / белые области. В результате патч 312 может содержать элементы или пиксели одного цвета, или же патч 322 может содержать элементы и пиксели нескольких цветов. Чтобы разделить изображение документа на разные цветовые слои, патчи 312, содержащие один и тот же цвет (монохромные патчи), могут быть идентифицированы и соотнесены с соответствующим цветовым слоем. Оставшиеся патчи, такие как патчи 322 в области 320, где связные области штампа перекрывают связные области нижележащего текста и элементов документа-формы, будут не монохромными / полихромными и впоследствии могут быть сегментированы, а их сегменты связаны с соответствующим цветом.[0044] Thus, the document image is divided into patches containing connected components. In particular, patches contain some important elements of the document's image, rather than exclusively empty/white areas. As a result,
[0045] Как показано на Фиг. 4, для достижения этой цели, первоначально в рамках способа 400, в блоке 402 может выполняться вычисление различных статистических характеристик (статистик) для набора патчей. После этого, как более подробно описано ниже, патчи могут быть классифицированы в блоке 404 согласно рассчитанной статистике. Например, в одном из вариантов осуществления скорректированное/выровненное изображение документа (т.е. изображение, которое подверглось изменению уровня яркости и контрастности) может быть преобразовано из пространства «красный-зеленый-синий» (RGB) в пространство «тон-насыщенность-значение» (HSV). Кроме того, цилиндрическую модель пространства «тон-насыщенность-значение» (HSV) можно модифицировать, сжав ее по оси «Значение» и преобразовав координаты в декартовы координаты; тогда расстояние между точками в пространстве можно рассчитать как расстояние в евклидовом пространстве (т.е. евклидово расстояние ≈ √(H 2 +S 2 +cV 2 ) , где H - значение цвета, S - значение насыщенности, V - значение яркости, а c - коэффициент для уменьшения важности / веса значения яркости V и, таким образом, сжимая цилиндр по оси V). Этот расчет расстояния, как более подробно описано ниже, можно использовать для вычисления центроидов, расстояния в цветовом пространстве, а также других статистических показателей для патчей.[0045] As shown in FIG. 4 , to achieve this goal, initially within
[0046] Кроме того, в некоторых вариантах осуществления для пикселей каждого патча оценивается набор статистических значений: (i) количество пикселей в патче, (ii) центроид (т.е. среднее значение пикселей по трем параметрам: «тон-насыщенность-значение» (HSV)), (iii) дисперсия (т.е. значения пикселей относительно центроида в цветовом пространстве «тон-насыщенность-значение» (HSV)) и (iv) перекос/асимметрия (т.е. вдоль одномерного расстояния относительно центроида). Существующие стандартные статистические / математические формулы могут использоваться для расчета этой статистики и могут быть реализованы с помощью исполняемого кода.[0046] In addition, in some embodiments, for the pixels of each patch, a set of statistical values is estimated: (i) the number of pixels in the patch, (ii) the centroid (i.e., the average value of the pixels over three parameters: "hue-saturation-value" (HSV)), (iii) dispersion (i.e. pixel values relative to the centroid in the hue-saturation-value (HSV) color space), and (iv) skew/skewness (i.e. along a one-dimensional distance relative to the centroid) . Existing standard statistical/mathematical formulas can be used to calculate these statistics and can be implemented with executable code.
[0047] Как отмечалось ранее, патчи, на которые делится изображение документа, могут быть монохромными (т.е. содержащими пиксели только одного цвета) и не монохромными / полихромными (т.е. содержащими пиксели двух или более цветов). Используемые здесь термины «не монохромный» и «полихромный» являются взаимозаменяемыми. В одном из вариантов осуществления патчи, содержащие более двух цветов, могут рассматриваться как патчи, содержащие два цвета, путем игнорирования наименее представленного цвета пикселей.[0047] As noted earlier, patches into which a document image is divided can be monochrome (i.e., containing pixels of only one color) and non-monochrome/polychromatic (i.e., containing pixels of two or more colors). As used herein, the terms "non-monochrome" and "polychrome" are used interchangeably. In one embodiment, patches containing more than two colors can be treated as patches containing two colors by ignoring the least represented pixel color.
[0048] Таким образом, при использовании классификатора 404 монохромности каждый патч может быть классифицирован либо как монохромный 406, либо как полихромный 408. В классификатор 404 могут вводиться статистические данные 402 патчей (например, количество/число пикселей, центроид, дисперсия, перекос и т.д.). Классификатор монохромности можно предварительно обучить на основе размеченных обучающих изображений и настроить с использованием соответствующих параметров классификации во время обучения. На выходе классификатор выдает решение относительно каждого патча, чтобы определить, является ли он монохромным 406 или полихромным 408. Для целей некоторых описанных здесь вариантов осуществления может быть использован любой классификатор на основе алгоритмов машинного обучения (например, модель градиентного бустинга (gradient boosting model), машина опорных векторов (support-vector machine), линейный классификатор (linear classifier) и т.д.). В других вариантах осуществления может использоваться и нейросетевой классификатор.[0048] Thus, using a
[0049] В некоторых вариантах осуществления, после классификации патчей как монохромные и не монохромные может применяться двухэтапный способ 500 кластеризации, показанный на Фиг. 5, для получения центроидов кластеров, каждый из которых соответствует отдельному цветовому слою изображения документа. Как более подробно описано ниже, для этого процесса могут быть выбраны монохромные патчи вместе с их соответствующими статистиками в блоке 502, а также могут быть вычислены центроиды (т.е. центроиды в цветовом пространстве) каждого кластера.[0049] In some embodiments, after classifying the patches as monochrome and non-monochrome, the two-
[0050] Первоначально статистические характеристики монохромных патчей могут быть сгруппированы в подкластеры с использованием классических механизмов кластеризации на этапе 504, таких как кластеризация k-средних, ЕМ-алгоритм кластеризации (Expectation-Maximization algorithm), иерархическая кластеризация и другие подобные методы. Однако на данном этапе в блоке 504 может быть создано множество кластеров, которые могут подлежать дальнейшему уточнению. Соответственно, после первого этапа кластеризации в блоке 504 может быть сгенерировано очень большое / избыточное количество кластеров (каждый из которых соответствует разному цветовому слою), которые могут быть впоследствии объединены в блоке 506 в меньшее количество кластеров.[0050] Initially, the statistical characteristics of monochrome patches can be grouped into subclusters using classical clustering mechanisms at
[0051] Соответственно, для каждого из подкластеров вычисляется набор объединенных статистик. Объединенные статистики вычисляются среди всех возможных пар подкластеров, чтобы определить лучших кандидатов для объединения (например, объединение статистических областей (SRM)). Таким образом производится попарный перебор всех возможных вариантов слияния. Пары подкластеров могут быть выбраны на основе условий максимизации сумм взвешенных межкластерных дисперсий и расстояния между центроидами соответствующих кластеров. Как только обнаруживается пара подкластеров, которая дает лучшую дисперсионную характеристику, эта пара объединяется в единый кластер. В некоторых вариантах осуществления предпочтительно максимизировать расстояние между центроидами окончательного набора кластеров. Соответственно, кластеры, которые являются кандидатами на объединение, могут быть кластерами, соответствующие центроиды которых имеют наименьшее расстояние друг от друга в цветовом пространстве.[0051] Accordingly, a set of combined statistics is calculated for each of the subclusters. The pooled statistics are computed among all possible pairs of subclusters to determine the best candidates for pooling (eg, pooled statistical areas (SRM)). Thus, a pairwise enumeration of all possible merge options is performed. Pairs of subclusters can be selected based on the conditions for maximizing the sums of weighted intercluster variances and the distance between the centroids of the respective clusters. As soon as a pair of subclusters is found that gives the best dispersion characteristic, this pair is combined into a single cluster. In some embodiments, it is preferable to maximize the distance between the centroids of the final set of clusters. Accordingly, the clusters that are candidates for merging may be the clusters whose respective centroids have the smallest distance from each other in the color space.
[0052] Таким образом, попарное слияние кластеров выполняется до тех пор, пока не будет удовлетворен заранее определенный пороговый критерий (например, будет достигнуто заранее определенное количество кластеров или будет достигнута заранее определенная сумма взвешенных межкластерных дисперсий и расстояния между центроидами). Предварительно определенный критерий может быть константой, которая предварительно задается в механизме кластеризации на основе обучающих данных. Следовательно, на выходе слияния и на втором этапе процесса кластеризации получается несколько кластеров с соответствующими статистиками. Таким образом, конкретное количество кластеров, получаемое в блоке 508, может соответствовать набору/числу отдельных цветовых слоев (т.е. каналов) исходного изображения документа. Соответственно, изображение может быть разделено на количество слоев, равное количеству полученных кластеров.[0052] Thus, pairwise merging of clusters is performed until a predetermined threshold criterion is satisfied (eg, a predetermined number of clusters is reached, or a predetermined sum of weighted intercluster variances and distance between centroids is reached). The predetermined criterion may be a constant that is predetermined in the clustering engine based on the training data. Therefore, at the output of the merge and at the second stage of the clustering process, several clusters are obtained with the corresponding statistics. Thus, the specific number of clusters obtained at
[0053] Однако, хотя вышеупомянутая процедура относится к монохромным патчам, в процесс предстоит включить еще и не монохромные патчи. Каждый из оставшихся не монохромных патчей (каждый из которых может быть уменьшен, чтобы его можно было рассматривать как содержащий два цвета) может быть связан/объединен с кластерами, образованными из монохромных патчей.[0053] However, while the above procedure applies to monochrome patches, non-monochrome patches also need to be included in the process. Each of the remaining non-monochrome patches (each of which can be scaled down to be seen as containing two colors) can be linked/combined to the clusters formed from the monochrome patches.
[0054] Чтобы осуществить это объединение, на полихромных патчах выполняются операции сегментации. Полихромные патчи, идентифицированные классификатором монохромности, могут быть сегментированы на монохромные сегменты. В некоторых вариантах осуществления каждый не монохромный патч может быть разделен на два сегмента (т.е. цветовых канала), и каждый сегмент затем может быть объединен с соответствующим цветовым слоем (на основе ранее полученных кластеров). Подобно описанному выше процессу кластеризации, для пикселей каждого сегмента каждого не монохромного патча может быть вычислен центроид (в цветовом пространстве).[0054] To accomplish this merging, segmentation operations are performed on the polychrome patches. Polychrome patches identified by the monochrome classifier can be segmented into monochrome segments. In some embodiments, each non-monochrome patch may be divided into two segments (ie, color channels), and each segment may then be combined with the corresponding color layer (based on previously obtained clusters). Similar to the clustering process described above, for the pixels of each segment of each non-monochrome patch, a centroid (in color space) can be calculated.
[0055] В некоторых вариантах осуществления сегментация может выполняться с использованием нейронной сети (например, сверточной нейронной сети, автоэнкодера и т.д.). Нейронная сеть может быть обучена на синтетических обучающих данных или реальных обучающих данных, предварительно размеченных в соответствии с тремя цветовыми каналами, один из которых представляет собой цвет фона, а два других - каналы разных цветов для значимых объектов. В других вариантах осуществления для сегментации могут применяться и другие способы, в которых не используются нейронные сети. Например, сегментация может выполняться эвристически или с использованием стандартных подходов к цветовой сегментации, таких как: сегментация по возрастанию области на основе цвета с использованием слияния статистических областей (затравок) и без него (SRM), нормализация сокращений/разрезов (Normalized Cuts) и эффективной сегментации изображений на основе графов (Efficient Graph-Based Image Segmentation).[0055] In some embodiments, segmentation may be performed using a neural network (eg, convolutional neural network, autoencoder, etc.). The neural network can be trained on synthetic training data or real training data, pre-labeled according to three color channels, one of which is the background color, and the other two are channels of different colors for significant objects. In other embodiments, other methods may be used for segmentation that do not use neural networks. For example, segmentation can be performed heuristically or using standard color segmentation approaches such as color-based ascending region segmentation with and without seeding (SRM), Normalized Cuts, and efficient graph-based image segmentation (Efficient Graph-Based Image Segmentation).
[0056] В некоторых вариантах осуществления при использовании эвристического метода сегментации изображение каждого не монохромного патча представляется в отдельных каналах, которые могут содержать информацию о цвете, такую как красный, зеленый, синий цвет, насыщенность, оттенок и т.д. В другом варианте осуществления могут использоваться другие переменные / каналы других цветовых пространств. Таким образом, в одном варианте осуществления каждый из четырех каналов (красный, зеленый, синий и насыщенность) преобразуется в двоичную форму с использованием метода Отцу (т.е. с использованием единого порога интенсивности, который разделяет пиксели на два класса, передний план и фон), чтобы получить бинаризованные маски каждого канала / переменной. Из бинаризованных масок для каждого канала выбираются сегменты цветов, которые имеют самую низкую метрику пересечения по объединению (IoU). Другими словами, для всех возможных пар бинаризованных масок рассчитывается метрика IoU и выбирается пара, для которой метрика IoU является наименьшей. Как более подробно описано ниже, затем каждая из масок может быть связана с соответствующим кластером и цветовым слоем изображения. Таким образом, изображение, разделенное на патчи, представлено в четырех версиях, каждая из которых соответствует четко определенной маске другого цвета / канала.[0056] In some embodiments, when using heuristic segmentation, each non-monochrome patch image is represented in separate channels, which may contain color information such as red, green, blue, saturation, hue, and so on. In another embodiment, other variables/channels of other color spaces may be used. Thus, in one embodiment, each of the four channels (red, green, blue, and saturation) is binarized using the Father's method (i.e., using a single intensity threshold that separates pixels into two classes, foreground and background ) to get the binarized masks of each channel/variable. From the binarized masks for each channel, color segments are selected that have the lowest intersection over union (IoU) metric. In other words, for all possible pairs of binarized masks, the IoU metric is calculated and the pair for which the IoU metric is the smallest is selected. As described in more detail below, each of the masks can then be associated with a respective cluster and color layer of the image. The patched image is thus presented in four versions, each corresponding to a well-defined mask of a different color/channel.
[0057] В некоторых случаях сегменты не монохромных патчей могут перекрываться в определенных областях. Однако при вычислении центроидов каждого из монохромных сегментов пиксели в области перекрытия можно игнорировать. Таким образом, центроиды в цветовом пространстве сегментов, полученных на этом этапе, можно использовать для составления полных отдельных цветовых слоев изображения документа.[0057] In some cases, segments of non-monochrome patches may overlap in certain areas. However, when calculating the centroids of each of the monochrome segments, the pixels in the overlapping area can be ignored. Thus, the centroids in the color space of the segments obtained in this step can be used to compose complete individual color layers of the document image.
[0058] Соответственно, в некоторых вариантах осуществления настоящего изобретения различные цветовые слои изображения документа могут быть составлены из вышеупомянутых полученных ранее кластеров и сегментов. На данный момент известна следующая информация: (i) информация, касающаяся всех монохромных сегментов не монохромных патчей и их соответствующих центроидов в цветовом пространстве, и (ii) информация, касающаяся центроидов кластеров монохромных патчей, соответствующих отдельным цветовым слоям изображения документа (полученным после кластеризации, например, 3-4 и более кластеров).[0058] Accordingly, in some embodiments of the present invention, the various color layers of a document image may be composed of the aforementioned previously obtained clusters and segments. The following information is currently known: (i) information regarding all monochrome segments of non-monochrome patches and their corresponding centroids in the color space, and (ii) information regarding the centroids of clusters of monochrome patches corresponding to the individual color layers of the document image (obtained after clustering, for example, 3-4 or more clusters).
[0059] В некоторых вариантах осуществления центроиды каждого монохромного сегмента не монохромных патчей объединяются/связываются с ближайшим кластером (т.е. цветовым слоем изображения документа) на основе евклидова расстояния в цветовом пространстве. Другими словами, на основе центроида каждого сегмента каждого совпадения сегмент связывается с одним из ранее идентифицированных кластеров до тех пор, пока все монохромные сегменты полихромных патчей не будут связаны с кластером монохромных патчей (и с их соответствующим отдельным цветовым слоем изображения документа).[0059] In some embodiments, the centroids of each monochrome segment of non-monochrome patches are combined/associated with the nearest cluster (ie, the color layer of the document image) based on the Euclidean distance in color space. In other words, based on the centroid of each segment of each match, the segment is associated with one of the previously identified clusters until all of the monochrome patch segments are associated with the monochrome patch cluster (and their respective individual document image color layer).
[0060] Таким образом, результат некоторых вариантов осуществления содержит отдельные цветовые слои изображения документа, где каждый слой состоит из кластеров монохромных патчей и связанных монохромных сегментов из не монохромных патчей. Следует отметить, что в некоторых случаях разные цветовые слои могут иметь области пересечения (т.е. общие области), которые могут соответствовать местам наложения друг на друга нескольких объектов или информационных элементов.[0060] Thus, the result of some embodiments comprises individual color layers of a document image, where each layer consists of clusters of monochrome patches and associated monochrome segments from non-monochrome patches. It should be noted that, in some cases, different color layers may have areas of intersection (ie, common areas), which may correspond to places where several objects or information elements overlap each other.
[0061] Таким образом, в одном из вариантов осуществления документ, ранее изображенный на Фиг. 2, можно разделить на три отдельных цветовых слоя. На Фиг.6 изображен первый цветовой слой 600, содержащий информацию 602 заполняемого документа-формы. На Фиг. 7 изображен второй цветовой слой 700, содержащий входную информацию / данные 702, которыми заполнены поля формы. На Фиг. 8 изображен третий цветовой слой 800, содержащий печати 802, которые были поставлены поверх документа-формы и входных данных.[0061] Thus, in one embodiment, the document previously depicted in FIG. 2 can be divided into three separate color layers. Figure 6 shows the
[0062] В некоторых вариантах осуществления различные задачи оптического распознавания символов и извлечения информации могут выполняться на каждом из полученных слоев изображения документа. Например, каждый слой, состоящий из одного из кластеров, может быть подвергнут операции оптического распознавания символов для выявления и извлечения содержащейся в нем текстовой информации. В других примерах кластеры могут использоваться нейронной сетью для идентификации и извлечения информации, состоящей из элементов или полей в слое, содержащем незаполненные поля и инструкции заполняемого документа-формы.[0062] In some embodiments, various optical character recognition and information extraction tasks may be performed on each of the acquired document image layers. For example, each layer, consisting of one of the clusters, can be subjected to an optical character recognition operation to identify and extract the text information contained in it. In other examples, clusters can be used by a neural network to identify and extract information consisting of elements or fields in a layer containing blank fields and instructions of a form document to be filled out.
[0063] При выполнении таких задач оптического распознавания символов часто бывает, что слой, содержащий данные, вводимые в поля формы, может быть, по существу, наиболее важным. Однако для получения структурированной информации, извлеченной из документа, может быть полезно дополнительно выполнить оптическое распознавание символов слоя, содержащего элементы, относящиеся к незаполненному документу-форме, чтобы иметь возможность связать входную информацию с соответствующими полями формы. Кроме того, хотя в некоторых случаях слой, содержащий печати/штампы, может иметь ограниченное значение, в других случаях штампы могут содержать важную информацию, относящуюся к вводу данных в поля формы (например, свидетельствующие об их подтверждении, правдивости или принятии), и поэтому может быть полезно выполнить оптическое распознавание символов цветового слоя, содержащего информацию из штампов. На основе координат информации, распознанной способом оптического распознавания символов, информация из каждого слоя может быть связана и объединена с информацией, полученной из других слоев, и в конечном итоге, можно сформировать составное изображение документа с распознанной информацией, готовое к последующей обработке и извлечению.[0063] When performing such OCR tasks, it is often the case that the layer containing the data entered into the form fields may be essentially the most important. However, in order to obtain structured information extracted from a document, it may be useful to additionally perform optical character recognition of the layer containing elements related to the blank form document in order to be able to associate the input information with the corresponding form fields. In addition, although in some cases the layer containing seals/stamps may have a limited meaning, in other cases stamps may contain important information related to data entry in form fields (for example, indicating their confirmation, truthfulness or acceptance), and therefore it may be useful to perform OCR on the color layer containing information from the stamps. Based on the coordinates of the information recognized by the optical character recognition method, information from each layer can be linked and combined with information obtained from other layers, and ultimately, a composite document image with recognized information can be formed, ready for further processing and extraction.
[0064] В некоторых других вариантах осуществления изображение документа можно разделить на цветовые слои с использованием другого подхода. Этот подход можно грубо разделить на четыре этапа: (i) загрузка / получение изображения документа, (ii) корректировка яркости и контрастности изображения документа, (iii) кластеризация и разделение изображения на промежуточные слои и (iv) объединение слоев изображения с использованием классификатора объединения слоев.[0064] In some other embodiments, the implementation of the image of the document can be divided into color layers using a different approach. This approach can be roughly divided into four steps: (i) loading/acquiring a document image, (ii) adjusting the brightness and contrast of the document image, (iii) clustering and splitting the image into intermediate layers, and (iv) merging image layers using a layer merging classifier .
[0065] Хотя первые два этапа могут выполняться аналогично описанным ранее, третий этап может включать в себя три основных действия: (а) преобразование изображения в цветовое пространство «тон-насыщенность-значение» (HSV); (b) выбор серых пикселей, которые должны быть связаны с цветом фона, идентификация цветовых кластеров путем генерации гистограмм пикселей конкретных цветовых тонов и определение цветовых секторов в цветовом пространстве «тон-насыщенность-значение» (HSV) внутри пикселей, сгруппированных в два кластера, для которых вычислены их центроиды; и (c) связывание пикселей со слоями, соответствующими серому слою и кластерам (т.е. после вычисления центроидов кластеров пиксели связываются либо с серым фоновым слоем, либо с кластером с ближайшим центроидом в цветовом пространстве). В результате этого процесса может быть получено несколько изображений, каждое из которых может содержать часть исходного изображения документа другого цвета. Однако элементы некоторых слоев могут выглядеть размытыми. На четвертом этапе изображения промежуточных слоев выборочно объединяются для получения заранее определенного количества цветовых слоев исходного изображения документа.[0065] While the first two steps may be performed similarly to those previously described, the third step may include three main steps: (a) converting an image to a Hue-Saturation-Value (HSV) color space; (b) selecting the gray pixels to be associated with the background color, identifying the color clusters by generating pixel histograms of specific color tones, and identifying the color sectors in the hue-saturation-value (HSV) color space within the pixels grouped into two clusters, for which their centroids are calculated; and (c) linking the pixels to the layers corresponding to the gray layer and the clusters (ie, after computing the cluster centroids, the pixels are linked to either the gray background layer or the cluster with the closest centroid in color space). As a result of this process, several images can be obtained, each of which can contain a part of the original image of the document in a different color. However, the elements of some layers may look blurry. At the fourth stage, the intermediate layer images are selectively combined to obtain a predetermined number of color layers in the original document image.
[0066] На Фиг. 9 представлен пример вычислительной системы 900, которая может выполнять любой один или несколько описанных в настоящем документе способов. Вычислительная система может быть подключена (например, по сети) к другим вычислительным системам в локальной сети, интрасети, экстрасети или интернету. Вычислительная система может работать в качестве сервера в сетевой среде «клиент-сервер». Вычислительная система может представлять собой персональный компьютер (ПК), планшет, телевизионную приставку (STB), карманный персональный компьютер (КПК), мобильный телефон, фотоаппарат, видеокамеру или любое устройство, способное выполнять набор команд (последовательных или иных), определяющих действия, которые должны быть выполнены таким устройством. Кроме того, несмотря на наглядное изображение только одной вычислительной системы, термин «компьютер» должен также включать любую совокупность компьютеров, которые индивидуально или совместно выполняют набор (или несколько наборов) команд для реализации любого одного или нескольких способов, раскрытых в настоящем документе.[0066] In FIG. 9 is an example of a
[0067] Иллюстративная вычислительная система 900 включает устройство 902 обработки данных, основную память 904 (например, постоянное запоминающее устройство (ПЗУ), флэш-память, динамическое оперативное запоминающее устройство (ДОЗУ), такое как синхронное ДОЗУ (СДОЗУ)), статическую память (например, флэш-память, статическое оперативное запоминающее устройство (СОЗУ)) и устройство 918 хранения данных, которые взаимодействуют друг с другом по шине 930.[0067] An
[0068] Устройство 902 обработки данных представляет собой одно или несколько устройств обработки общего назначения, таких как микропроцессор, центральный процессор и т.п. Точнее говоря, устройство 902 обработки данных может быть микропроцессором для вычисления сложных наборов команд (CISC), микропроцессором для вычисления сокращенных наборов команд (RISC), микропроцессором с очень длинным командным словом (VLIW), процессором, реализующим другие наборы команд, или процессором, реализующим сочетание наборов команд. Устройство 902 обработки данных также может представлять собой одно или несколько устройств обработки специального назначения, таких как специализированная интегральная схема (ASIC), программируемая логическая интегральная схема (FPGA), цифровой сигнальный процессор (DSP), сетевой процессор и т.п. Устройство 902 обработки данных сконфигурировано для выполнения инструкций 926 с целью реализации описанных здесь способов, таких как способ 100 на Фиг. 1, способ 400 на Фиг. 4 и / или способ 500 на Фиг. 5, а также для выполнения описанных здесь операций (например, операции по способам 100, 400, 500). [0068] The
[0069] Вычислительная система 900 может дополнительно включать устройство 922 сетевого интерфейса. Вычислительная система 900 также может включать видеодисплей 910 (например, жидкокристаллический дисплей (ЖКД) или электронно-лучевую трубку (ЭЛТ)), устройство 912 буквенно-цифрового ввода (например, клавиатуру), устройство 914 управления курсором (например, мышь) и устройство формирования сигнала (например, динамик). В одном иллюстративном примере устройство визуального отображения / видеодисплей 910, устройство буквенно-цифрового ввода 912 и устройство управления курсором 914 объединены в один компонент или устройство (например, сенсорный жидкокристаллический дисплей).[0069]
[0070] Устройство 918 хранения данных может включать машиночитаемый носитель 924 данных, на котором хранятся инструкции 926, воплощающие любую одну или несколько методик или функций, описанных в настоящем документе. Команды 926 во время их исполнения вычислительной системой 900 также могут находиться, полностью или как минимум частично, в основном запоминающем устройстве 904 и (или) в устройстве 902 обработки данных, причем основная память 904 и устройство 902 обработки данных также представляют собой машиночитаемые носители. В некоторых вариантах осуществления инструкции 926 могут дополнительно передаваться или приниматься по сети 916 через сетевое интерфейсное устройство 922.[0070]
[0071] Несмотря на то, что в иллюстративных примерах машиночитаемый носитель 924 данных представлен в единственном числе, термин «машиночитаемый носитель данных» следует понимать как включающий в себя один или несколько носителей (например, централизованную или распределенную базу данных и (или) связанные с ней кэши и серверы), в которых хранится один или несколько наборов инструкций. Термин «машиночитаемый носитель данных» также следует понимать как включающий в себя какой-либо носитель, способный хранить, кодировать или переносить набор команд для выполнения машиной и заставляющий машину выполнять любую одну или несколько методик настоящего изобретения. Термин «машиночитаемый носитель данных», соответственно, включает, помимо прочего, твердотельные запоминающие устройства, оптические носители и магнитные носители.[0071] Although in the illustrative examples the computer-
[0072] Несмотря на то, что приведенные в настоящем документе операции способов изображены и описаны в определенном порядке, порядок выполнения операций каждого способа может быть изменен таким образом, что определенные операции могут выполняться в обратном порядке или определенные операции могут выполняться по крайней мере частично, одновременно с иными операциями. В некоторых вариантах осуществления команды или подоперации отдельных операций могут выполняться с перерывами и (или) чередоваться.[0072] Although the steps of the methods herein are shown and described in a particular order, the order in which the steps of each method can be performed can be changed so that certain steps can be performed in reverse order, or certain steps can be performed at least partially, along with other operations. In some embodiments, instructions or sub-operations of individual operations may be performed intermittently and/or interleaved.
[0073] Следует понимать, что приведенное выше описание служит для наглядности и не носит ограничительный характер. Многие иные варианты осуществления будут очевидны специалистам в данной области после прочтения и понимания приведенного выше описания. Поэтому область применения изобретения должна определяться со ссылкой на прилагаемую формулу изобретения наряду с полным объемом эквивалентов, на которые распространяется такая формула.[0073] It should be understood that the above description is for illustrative purposes and is not restrictive. Many other embodiments will be apparent to those skilled in the art upon reading and understanding the above description. Therefore, the scope of the invention must be determined with reference to the appended claims along with the full scope of the equivalents to which such claims apply.
[0074] В приведенном выше описании изложены многочисленные подробности. Однако специалисту в данной области будет очевидно, что аспекты настоящего изобретения могут быть реализованы без таких конкретных деталей. В некоторых случаях известные структуры и устройства показаны в виде блок-схемы, без подробностей, чтобы не затруднять понимание предмета настоящего изобретения.[0074] Numerous details have been set forth in the above description. However, one skilled in the art will appreciate that aspects of the present invention may be practiced without such specific details. In some instances, well-known structures and devices are shown in block diagram form, without detail, so as not to obscure the subject matter of the present invention.
[0075] Некоторые части подробного описания, приведенного выше, представлены в виде алгоритмов и символьных представлений операций с битами данных в памяти компьютера. Такие алгоритмические описания и представления являются средствами, используемыми специалистами в области обработки данных с целью наиболее эффективной передачи содержания своей работы иным специалистам в данной области. Как в рамках настоящего документа, так и в целом алгоритм понимается как самосогласованная последовательность действий, приводящая к желаемому результату. Эти действия представляют собой этапы, требующие физических манипуляций с физическими величинами. Обычно, хотя и не обязательно, такие величины принимают форму электрических или магнитных сигналов, которые можно хранить, передавать, комбинировать, сравнивать или использовать иным образом. Иногда, в основном по соображениям общепринятой практики, удобно называть такие сигналы битами, значениями, элементами, символами, знаками, терминами, числами и т.п.[0075] Some parts of the detailed description above are presented as algorithms and symbolic representations of operations on data bits in computer memory. Such algorithmic descriptions and representations are tools used by data scientists to most effectively convey the content of their work to others in the field. Both within the framework of this document and in general, the algorithm is understood as a self-consistent sequence of actions leading to the desired result. These actions are stages that require physical manipulations with physical quantities. Typically, though not necessarily, such quantities take the form of electrical or magnetic signals that can be stored, transmitted, combined, compared, or otherwise used. Sometimes, mainly for reasons of common practice, it is convenient to refer to such signals as bits, values, elements, symbols, characters, terms, numbers, and the like.
[0076] Однако следует помнить, что все такие и подобные термины должны быть связаны с соответствующими физическими величинами и являются лишь удобными обозначениями, применяемыми к таким величинам. Если специально не указано иное, как очевидно из последующего обсуждения, следует понимать, что во всем описании изобретения обсуждения, использующие такие термины, как «получение», «определение», «выбор», «хранение», «анализ» и т.п., относятся к действиям и процессам вычислительной системы или аналогичного электронного вычислительного устройства, которое использует и преобразует данные, представленные в виде физических (электронных) величин в регистрах и памяти вычислительной системы, в иные данные, аналогично представленные в виде физических величин в памяти или регистрах вычислительной системы или иных подобных устройствах хранения, передачи или отображения информации.[0076] However, it should be remembered that all such and similar terms are to be associated with the corresponding physical quantities and are only convenient designations applied to such quantities. Unless specifically stated otherwise, as evident from the following discussion, it should be understood that throughout the description of the invention, discussions using terms such as "obtaining", "determining", "selection", "storage", "analysis", etc. ., refers to the actions and processes of a computer system or similar electronic computing device that uses and converts data represented as physical (electronic) quantities in the registers and memory of the computer system into other data similarly represented as physical quantities in the memory or registers computer system or other similar devices for storing, transmitting or displaying information.
[0077] Настоящее изобретение также относится к устройству для выполнения операций, описанных в настоящем документе. Данное устройство может быть специально сконструировано для требуемых целей, или оно может состоять из компьютера общего назначения, избирательно активируемого или реконфигурируемого компьютерной программой, хранящейся в компьютере. Такая компьютерная программа может храниться на машиночитаемом носителе данных, таком как любой тип диска, включая дискеты, оптические диски, компакт-диски и магнитно-оптические диски, постоянные запоминающие устройства (ПЗУ), оперативные запоминающие устройства (ОЗУ), ППЗУ, ЭСППЗУ, магнитные или оптические платы или любой тип носителя, подходящий для хранения электронных команд, каждый из которых соединен с шиной вычислительной системы.[0077] The present invention also relates to a device for performing the operations described herein. This device may be specially designed for the required purposes, or it may consist of a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored on a computer-readable storage medium such as any type of disk, including floppy disks, optical disks, compact disks and magnetic optical disks, read-only memory (ROM), random access memory (RAM), PROM, EEPROM, magnetic or optical boards or any type of media suitable for storing electronic instructions, each connected to a computer system bus.
[0078] Алгоритмы и представления, показанные в настоящем документе, необязательно связаны с каким-либо конкретным компьютером или иным устройством. Различные системы общего назначения могут использоваться с программами в соответствии с идеей, изложенной в настоящем документе, или, возможно, окажется более удобным создать более специализированные устройства с целью выполнения требуемых этапов способа. Необходимая структура для множества этих систем будет выглядеть так, как указано в данном описании. Кроме того, аспекты настоящего изобретения не описаны со ссылкой на какой-либо конкретный язык программирования. Следует понимать, что для реализации описанной в данном документе идеи настоящего изобретения можно использовать различные языки программирования.[0078] The algorithms and representations shown herein are not necessarily associated with any particular computer or other device. Various general purpose systems may be used with programs in accordance with the teachings of this document, or it may be more convenient to create more specialized devices to carry out the required method steps. The necessary structure for many of these systems will be as indicated in this description. In addition, aspects of the present invention are not described with reference to any particular programming language. It should be understood that various programming languages can be used to implement the idea of the present invention described herein.
[0079] Аспекты настоящего изобретения могут быть представлены в виде компьютерного программного продукта или программного обеспечения, которое может включать в себя машиночитаемый носитель данных с хранящимися на нем командами, которые могут использоваться для программирования вычислительной системы (или иных электронных устройств) с целью выполнения процесса в соответствии с настоящим изобретением. Машиночитаемый носитель данных включает любой механизм для хранения или передачи информации в форме, читаемой машиной (например, компьютером). Так, машиночитаемый (например, читаемый компьютером) носитель включает машиночитаемый (например, читаемый компьютером) носитель данных (например, постоянное запоминающее устройство, далее - «ПЗУ», оперативное запоминающее устройство, далее - «ОЗУ», магнитные дисковые носители, оптические носители, устройства флэш-памяти и т.д.).[0079] Aspects of the present invention may be in the form of a computer program product or software that may include a computer-readable storage medium with instructions stored thereon that can be used to program a computing system (or other electronic devices) to perform a process in in accordance with the present invention. A computer-readable storage medium includes any mechanism for storing or transmitting information in a form that is readable by a machine (eg, computer). Thus, a computer-readable (for example, computer-readable) medium includes a computer-readable (for example, computer-readable) storage medium (for example, read-only memory, hereinafter referred to as "ROM", random access memory, hereinafter referred to as "RAM", magnetic disk media, optical media, flash memory devices, etc.).
[0080] Слова «пример» или «примерный» используются в настоящем документе для обозначения того, что служит примером, образцом или наглядным изображением. Любой аспект или решение, описанные в настоящем документе как «пример» или «примерный», необязательно должны толковаться как предпочтительные или преимущественные по сравнению с иными аспектами или техническими решениями. Напротив, использование слов «пример» или «примерный» предназначено для конкретного представления понятий. Используемый в данной заявке термин «или» предназначен для обозначения, включающего «или», а не исключающего «или». То есть, если не указано иное или не ясно из контекста, фраза «X включает A или B» означает любую из естественных включающих перестановок. То есть если X включает A, X включает B или X включает и A, и B, то условие «X включает A или B» удовлетворяется в любом из вышеперечисленных случаев. Кроме того, слова в единственном числе, используемые в данной заявке и прилагаемой формуле изобретения, следует толковать как «один или несколько», если не указано иное или если из контекста не ясно, что они относятся к форме единственного числа. Более того, использование терминов «вариант осуществления», «один из вариантов осуществления», «вариант реализации» или «один вариант реализации» во всем тексте не означает один и тот же вариант осуществления или тот же вариант реализации, если они не описаны как таковые. Кроме того, термины «первый», «второй», «третий», «четвертый» и т.д., используемые в настоящем документе, предназначены для обозначения различий между различными элементами и не обязательно имеют порядковое значение в соответствии с их цифровым обозначением.[0080] The words "example" or "exemplary" are used herein to refer to what serves as an example, sample, or illustrative image. Any aspect or solution described herein as "example" or "exemplary" should not necessarily be construed as preferable or advantageous over other aspects or technical solutions. On the contrary, the use of the words "example" or "exemplary" is intended for a specific representation of concepts. As used in this application, the term "or" is intended to mean an inclusive "or" and not an exclusive "or". That is, unless otherwise indicated or clear from the context, the phrase "X includes A or B" means any of the natural inclusive permutations. That is, if X includes A, X includes B, or X includes both A and B, then the condition "X includes A or B" is satisfied in any of the above cases. In addition, the words in the singular used in this application and the appended claims should be interpreted as "one or more" unless otherwise indicated or if it is not clear from the context that they refer to the singular form. Moreover, the use of the terms "an embodiment", "one of the embodiments", "an implementation", or "one implementation" throughout the text does not mean the same embodiment or the same implementation, unless they are described as such. . In addition, the terms "first", "second", "third", "fourth", etc., used in this document are intended to indicate differences between various elements and do not necessarily have an ordinal value in accordance with their numerical designation.
[0081] Несмотря на то, что многие изменения и модификации изобретения, несомненно, будут очевидны для специалиста в данной области после прочтения вышеизложенного описания, следует понимать, что конкретный вариант осуществления, показанный и описанный с помощью иллюстрации, ни при каких условиях не должен считаться ограничивающим. Таким образом, ссылки на детали различных вариантов осуществления не предназначены для ограничения области применения формулы изобретения, которая сама по себе описывает только те признаки, которые считаются изобретением.[0081] While many changes and modifications to the invention will no doubt be apparent to those skilled in the art upon reading the foregoing description, it should be understood that the particular embodiment shown and described by way of illustration should not, under any circumstances, be construed as limiting. Thus, references to the details of various embodiments are not intended to limit the scope of the claims, which by themselves describe only those features that are considered to be the invention.
Claims (43)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/546,652 US20230186592A1 (en) | 2021-12-09 | 2021-12-09 | Division of images into separate color layers |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2792722C1 true RU2792722C1 (en) | 2023-03-23 |
Family
ID=
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2812413C1 (en) * | 2023-11-07 | 2024-01-30 | Общество С Ограниченной Ответственностью "Дизайнер" | Method for image generation based on user preference analysis |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6865290B2 (en) * | 2000-02-09 | 2005-03-08 | Ricoh Company, Ltd. | Method and apparatus for recognizing document image by use of color information |
US20120092359A1 (en) * | 2010-10-19 | 2012-04-19 | O'brien-Strain Eamonn | Extraction Of A Color Palette Model From An Image Of A Document |
US8571317B2 (en) * | 2010-01-15 | 2013-10-29 | Gruntworx, Llc | Systems and methods for automatically processing electronic documents using multiple image transformation algorithms |
US20160371543A1 (en) * | 2015-06-16 | 2016-12-22 | Abbyy Development Llc | Classifying document images based on parameters of color layers |
US20210224969A1 (en) * | 2020-01-21 | 2021-07-22 | Abbyy Production Llc | Detection and identification of objects in images |
US11087123B2 (en) * | 2019-08-24 | 2021-08-10 | Kira Inc. | Text extraction, in particular table extraction from electronic documents |
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6865290B2 (en) * | 2000-02-09 | 2005-03-08 | Ricoh Company, Ltd. | Method and apparatus for recognizing document image by use of color information |
US8571317B2 (en) * | 2010-01-15 | 2013-10-29 | Gruntworx, Llc | Systems and methods for automatically processing electronic documents using multiple image transformation algorithms |
US20120092359A1 (en) * | 2010-10-19 | 2012-04-19 | O'brien-Strain Eamonn | Extraction Of A Color Palette Model From An Image Of A Document |
US20160371543A1 (en) * | 2015-06-16 | 2016-12-22 | Abbyy Development Llc | Classifying document images based on parameters of color layers |
US11087123B2 (en) * | 2019-08-24 | 2021-08-10 | Kira Inc. | Text extraction, in particular table extraction from electronic documents |
US20210224969A1 (en) * | 2020-01-21 | 2021-07-22 | Abbyy Production Llc | Detection and identification of objects in images |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2812413C1 (en) * | 2023-11-07 | 2024-01-30 | Общество С Ограниченной Ответственностью "Дизайнер" | Method for image generation based on user preference analysis |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sauvola et al. | Adaptive document image binarization | |
US10559067B2 (en) | Removal of shadows from document images while preserving fidelity of image contents | |
Parker et al. | An approach to license plate recognition | |
RU2659745C1 (en) | Reconstruction of the document from document image series | |
CN111027297A (en) | Method for processing key form information of image type PDF financial data | |
Lu et al. | Binarization of degraded document images based on contrast enhancement | |
CN110766017B (en) | Mobile terminal text recognition method and system based on deep learning | |
Harraj et al. | OCR accuracy improvement on document images through a novel pre-processing approach | |
CA2502529A1 (en) | Model of documents and method for automatically classifying a document | |
Chen et al. | Page segmentation for historical document images based on superpixel classification with unsupervised feature learning | |
Singh et al. | Adaptive binarization of severely degraded and non-uniformly illuminated documents | |
US11144799B2 (en) | Image classification method, computer device and medium | |
CN113158977B (en) | Image character editing method for improving FANnet generation network | |
De Mello et al. | Digital document analysis and processing | |
CN113901952A (en) | Print form and handwritten form separated character recognition method based on deep learning | |
Durga Devi et al. | Digital acquisition and character extraction from stone inscription images using modified fuzzy entropy-based adaptive thresholding | |
CN112508000B (en) | Method and equipment for generating OCR image recognition model training data | |
RU2792722C1 (en) | Splitting images into separate color layers | |
US20230186592A1 (en) | Division of images into separate color layers | |
Polyakova et al. | Combined method for scanned documents images segmentation using sequential extraction of regions | |
Zhang et al. | Text extraction for historical Tibetan document images based on connected component analysis and corner point detection | |
CN114519788A (en) | Image processing method, image processing device, electronic equipment and computer readable storage medium | |
CN115273061B (en) | Image content level extraction method and system based on principal component analysis | |
Dai et al. | Novel Features for Character Extraction of Historical Chinese Seal Images | |
Akoushideh et al. | Text localization in digital images using a hybrid method |