Как сгруппировать блоки, которые являются частью больших предложений в Google Cloud Vision API? - PullRequest
0 голосов
/ 18 сентября 2018

Я использую Google Cloud Vision API на Python для обнаружения текстовых значений на досках, которые обычно находятся над магазином / магазином. До сих пор я был в состоянии обнаружить отдельные слова и координаты их ограничивающих полигонов. Есть ли способ сгруппировать обнаруженные слова по их относительному положению и размеру?

Например, название магазина обычно пишется одинакового размера, а слова выровнены. Предоставляет ли API некоторые функции, объединяющие те слова, которые, вероятно, являются частью большего предложения (название магазина или адрес и т. Д.)?

Если API не предоставляет такие функции, какой будет хороший подход для их группировки? Ниже приведен пример изображения, которое я сделал до сих пор:

shop's banner Отрывок вывода Vision API:

description: "SHOP"
bounding_poly {
  vertices {
    x: 4713
    y: 737
  }
  vertices {
    x: 5538
    y: 737
  }
  vertices {
    x: 5538
    y: 1086
  }
  vertices {
    x: 4713
    y: 1086
  }
}
, description: "OVOns"
bounding_poly {
  vertices {
    x: 6662
    y: 1385
  }
  vertices {
    x: 6745
    y: 1385
  }
  vertices {
    x: 6745
    y: 1402
  }
  vertices {
    x: 6662
    y: 1402
  }
}

1 Ответ

0 голосов
/ 18 сентября 2018

Я предлагаю вам взглянуть на формат ответа TextAnnotation , который применяется при использовании DOCUMENT_TEXT_DETECTION для запроса распознавания OCR. Эти ответы содержат подробную информацию о метаданных изображения и значениях текстового содержимого, которые можно использовать для группировки текста по блокам, абзацам, словам и т. Д., Как описано в общедоступной документации:

TextAnnotation содержит структурированное представление извлеченного текста OCR. Иерархия выделенной текстовой структуры OCR выглядит следующим образом: TextAnnotation -> Страница -> Блок -> Абзац -> Слово -> Символ

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

...