Как вывести только весь отрывок [Google Cloud Vision API, document_text_detection] - PullRequest
0 голосов
/ 06 февраля 2020

Я пробую Google Cloud Vision API document_text_detection. На японском это работает очень хорошо, но у меня есть проблема. Ответ содержит как весь отрывок, так и частичные отрывки с переносами строк. Мне нужен только целый отрывок.

Это ответ.

Google keep の画像 テキスト化
画像文字認識で手書き文字をどこ
までテキスト化が出来るのかをテスト。
Google keep OCR機能がとれた
け使えるかを確認
この手書き文書を認献してiPhone
のGoogle keepでテキスト化して
Macで編集をするのにどれだけ
出来るかも確認する。

Google
keep
の画像
テキスト化
画像文字認識で手書き文字をどこ
までテキスト化が出来るのかをテスト
。
Google
keep
OCR機能がとれた
け使えるかを確認
この手書き文書を認献してiPhone
のGoogle
keepでテキスト化して
Macで編集をするのにどれだけ
出来るかも確認する
。

Это мой код python.

import io
import os

os.environ["GOOGLE_APPLICATION_CREDENTIALS"]="credentials.json"
"""Detects text in the file."""
from google.cloud import vision
client = vision.ImageAnnotatorClient()
directory = 'resources/'
files = os.listdir(directory)

for i in files:
    with io.open(directory+i, 'rb') as image_file:
        content = image_file.read()

    image = vision.types.Image(content=content)

    response = client.document_text_detection(image=image)
    texts = response.text_annotations

    for text in texts:
        print('{}'.format(text.description))

Я прочитал справочник по API (https://cloud.google.com/vision/docs/reference/rest/v1/AnnotateImageResponse#TextAnnotation) и пришел к идее использовать response.full_text_annotation вместо response.text_annotations.

image = vision.types.Image(content=content)
response = client.document_text_detection(image=image)
texts = response.full_text_annotation
print('{}'.format(text))

Но я получил сообщение об ошибке.

File "/home/kazu/language/ocr.py", line 21, in <module> print('{}'.format(text))
NameError: name 'text' is not defined

Не могли бы вы дать мне какую-либо информацию или предложение?

Заранее спасибо.

С уважением, Казу

1 Ответ

2 голосов
/ 09 февраля 2020

Похоже на опечатку. Вы назвали свою переменную «тексты», но попытались использовать переменную «текст».

...