Russian (Русский) - Change language

Алгоритм поиска основных полей

Данная статья описывает алгоритм поиска и извлечения основных полей инвойса, а также его настройку.

Обработка инвойса начинается с предраспознавания текста документа в соответствии с настройками из определения документа:

  • режим предраспознавания (Очень быстрый/ Быстрый/ Сбалансированный/ Полный) определяет скорость распознавания и качество распознанного текстового слоя. Настраивается в свойствах определения документа (Редактор определения документа: Определение документа → Свойства определения документа..., вкладка Распознавание).
  • список языков для предраспознавания задаётся в свойствах определения документа (Редактор определения документа: Определение документа → Свойства определения документа..., вкладка Настройки определения документoв, группа Страны и языки).

После выполнения предраспознавания начинается извлечение полей инвойса.

Поиск и извлечение полей на документе осуществляется двумя методами:

Далее описаны оба метода и алгоритм объединения результатов или выбора лучшего.

Поиск полей гибким описанием

Подразделение компании и Поставщик

Наложение с заранее заданным поставщиком или подразделением компании

Поставщик или подразделение компании инвойса могут быть известны заранее, например, по параметрам источника инвойса (имени оператора сканирования или электронному адресу отправителя письма).

ABBYY FlexiCapture for Invoices предусматривает возможность задать явно поставщика и / или подразделение компании до автоматического детектирования.

Для этого в качестве значения регистрационного параметра документа fc_Predefined:InvoicePredefinedVendorId (fc_Predefined:InvoicePredefinedBusinessUnitId) необходимо задать идентификатор (Id) соответствующей записи из Набора данных Vendors (BusinessUnits).

В этом случае процедура автоматического определения поставщика (подразделения компании) всё равно сработает для данной записи. В результате будет получено не только предопределённое значение в качестве поставщика (подразделения компании), но и признак уверенности (насколько данная предопределённая запись хорошо соответствует изображению по мнению программы), а также регионы полей группы Vendor (Business Unit).

Группа полей заголовка инвойса (Invoice Header)

Группа полей Amounts

Группа полей Purchase Order

Группа полей Line Items

Поиск полей нейронными сетями

Одно из главных преимуществ нейронных сетей – возможность самостоятельно обучаться. Нейронные сети находят сложные зависимости между входными данными и обобщают полученную информацию.

При помощи работы нейронных сетей могут быть извлечены следующие поля:

  • InvoiceNumber
  • InvoiceDate
  • Total
  • Vendor \ Name
  • Vendor \ Address
  • Business Unit \ Name
  • Business Unit \ Address
  • Purchase Orders \ Order Number
  • LineItems:
    • OrderNumber
    • OrderDate
    • Position
    • ArticleNumber
    • Description
    • Quantity
    • Unit of measurement
    • Unit Price
    • Total Price Netto
    • VATPercentage

Два метода извлечения полей: нейронными сетями и гибким описанием – комбинируются для достижения лучшего результата. Те поля, которые не удается извлечь при помощи нейронных сетей, будут извлечены гибким описанием. Если возможно извлечение обоими методами, то результаты извлечения объединяются. Алгоритм объединения зависит от поля. Подробнее см. Объединение результатов поиска.

Отключение поиска полей нейронными сетями

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

Чтобы отключить нейронную сеть для извлечения группы полей Line Items:

  • Откройте Редактор определения документов.
  • Откройте Свойства определения документа... Настройки определения документoвДополнительные поля и возможности.
  • Отключите опцию Тщательное извлечение позиций инвойсов.

Чтобы отключить нейронную сеть для групп полей Invoice Header, Vendor, Business Unit и Purchase Order:

  • Откройте Редактор определения документов.
  • Откройте Свойства определения документа... Настройки определения документoвДополнительные поля и возможности.
  • Отключите опцию Тщательное извлечение заголовков инвойсов.

Объединение результатов поиска

Алгоритм объединения результатов поиска и выбора лучшего результата зависит от поля. В общем случае предпочтительным считается результат, полученный нейронными сетями. Исключением являются ситуации, в которых используется поиск по Наборам данных или при помощи регулярных выражений, настроенных для конкретных пользовательских документов.

Группы полей Invoice Header

Для следующих полей всегда приоритетным является результат, полученный нейронной сетью:

  • Invoice Number,
  • Invoice Date,
  • Total.

Подразделение компании и Поставщик

Подразделение компании и Поставщик по умолчанию определяются из Набора данных, если он подключен. Эта информация является приоритетной.

Кроме того, следующие поля могут быть найдены нейронной сетью, если в Наборе данных не было найдено соответствующей записи:

  • Name,
  • VATID (ABN),
  • Address.

Если Набор данных не подключен, то используется поиск нейронной сетью.

Группа полей Purchase Order

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

Таблицы с позициями инвойса (Line Items)

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

Если в таблице, найденной нейронной сетью, в каждой позиции (LineItem) нашли только описание позиции (Description) и подсумму (TotalPriceNetto), то эти данные будут дополнены результатами, полученными гибким описанием.

1/14/2021 2:17:24 PM


Please leave your feedback about this article