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

Character String

Character String - элемент, представляющий собой описание последовательности символов, расположенных на одной строке друг за другом слева направо. Цепочки символов составляются из текстовых объектов - например, из целых слов, либо из одного/нескольких фрагментов текстовых объектов.

В дереве проекта элемент Character String отображается значком .

Данный элемент предназначен для поиска текста неизвестного содержания. При этом рассматриваются объекты Recognized Words, найденные при предраспознавании изображений и находящиеся в области поиска элемента.

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

Описание искомого текста

Свойства, описывающие искомый текст, задаются в диалоге свойств элемента на вкладке Character String. Для того чтобы открыть диалог свойств элемента, щелкните правой кнопкой мыши по элементу в окне FlexiLayout и выберите в контекстном меню команду Properties....

Показать диалог Properties, вкладка Character String

Текст, который необходимо найти на изображении, может быть описан двумя способами.

Описание искомого текста с помощью регулярного выражения

Регулярное выражение определяет возможные комбинации символов, их взаимное расположение (тем самым определяется структура искомого текста). При задании регулярного выражения поиск ведется точно, т.е. гипотеза должна строго удовлетворять регулярному выражению. Обычно этот способ поиска подразумевает, что изображения документов имеют хорошее качество и распознаются без ошибок.

Для того чтобы описать искомый текст регулярным выражением, выберите опцию Regular expression и введите выражение в поле, расположенное рядом с этой опцией. Для удобства ввода регулярного выражения справа от поля для ввода находится кнопка , нажав на которую вы можете выбирать пункты выпадающего меню (например, Any Letter, Character From Set) и соответствующее регулярное выражение будет автоматически подставлено в поле.

Алфавит, используемый в регулярных выражениях

Описание искомого текста с помощью алфавита

Алфавит - перечисление символов, допустимых в составе цепочки. Этот способ используется, если формат цепочки символов невозможно описать регулярным выражением, или качество изображения недостаточно хорошее, и, как следствие, текст распознается с ошибками. Для элемента Character String можно задать несколько допустимых наборов символов (алфавитов). Если формат текста неизвестен, то допустимые алфавиты не задаются и тогда при поиске элемента рассматриваются все символы.

Для того чтобы описать искомый текст с помощью алфавита:

  1. Выберите режим формирования гипотез. Для того чтобы из цепочки символов, находящейся в области поиска, были сформированы все возможные гипотезы, в том числе пересекающиеся и вложенные, выберите опцию Allow embedded hypotheses. Для того чтобы получить гипотезы максимальной длины, отмените выбор опции Allow embedded hypotheses.
  2. Создайте один или несколько алфавитов.

    Подробнее о создании, редактировании и удалении алфавита

  1. В поле Percentage of non-alphabet characters укажите максимально допустимую долю (число от 0 до 100) символов цепочки, которые могут не принадлежать ни к одному из заданных алфавитов.

Вне зависимости от того, каким способом описан искомый текст, можно также задать следующие свойства:

  1. Отметьте опцию Whole words only , чтобы производился поиск только целых слов.
  2. Укажите способ разбиения строки на слова с помощью опции Detect words by interword space. Для автоматического поиска слов отключите данную опцию. При включении данной опции разбиение строки будет производиться там, где промежуток между соседними символами больше или равен значения, указанного в поле Min interword space.
    Замечание. При автоматическом поиске конец слова определяется наличием пробела или прочих символов, разделяющих слова (например, ' , ', ' ; ', ' / ', ' ? ', конкретный набор зависит от выбранного языка предраспознавания), или по другим признакам. Для проверки разбивки на слова строк тестовых примеров просмотрите текстовые объекты изображения (меню View → Images → Objects → Recognized Words).
  3. В поле Word count укажите количество слов внутри цепочки символов. Количество слов задается с помощью нечеткого интервала. По умолчанию задан интервал {-1,-1,INF,INF} (ищутся гипотезы из любого количества слов).
  4. В поле Max space length укажите максимально допустимую абсолютную длину пробела внутри найденного объекта. Значение данного свойства указывается в используемых единицах измерения. Оценить длину пробела можно с помощью координат соседних объектов, отображаемых в строке состояние при наведении курсора мыши на объект изображения. При поиске текста символы добавляются в цепочку до тех пор, пока расстояние между соседними символами не превышает значения Max space length.
  5. В поле Character count задайте длину цепочки символов (количество символов в цепочке). Параметр задается с помощью нечеткого интервала и оценивает качество гипотезы в зависимости от ее длины.
    Для того чтобы задать нечеткие интервалы в отдельном окне с помощью удобного и наглядного инструмента, воспользуйтесь кнопками .

См. также:

Создание, копирование и удаление элементов

Обзор свойств элементов гибкого описания FlexiLayout

Область поиска элемента

Дополнительные условия поиска элемента Character String

10.11.2020 12:08:08


Please leave your feedback about this article