Я пытаюсь использовать DOCUMENT_TEXT_DETECTION от google_cloud_platform, но получаю разные результаты при использовании библиотек python vision
по сравнению с использованием прямого URL-вызова с использованием запросов.
Использование библиотек Python дает гораздо лучшие результаты. Например:
$4,71
по сравнению с $4.71
Кроме того, отсутствуют пропущенные символы при прямом URL-вызове, которые правильно отображаются при использовании библиотеки google.cloud.vision.
Прямой URL-адрес с запросами:
file_like = io.BytesIO()
image.save(file_like, 'png')
file_like.seek(0)
ret = base64.b64encode(file_like.read())
body = {
"requests": [
{
"image": {
"content": self.serialized_image
},
"features": [
{
"type": "DOCUMENT_TEXT_DETECTION"
}
]
}
]
}
response = requests.post(Models.gcp_vision_api_url, params={'key': self.gcp_key}, data=json.dumps(body))
против использования Vision lib:
client = vision.ImageAnnotatorClient()
with NamedTemporaryFile() as f_img:
tmp.save(f_img, 'bmp')
f_img.seek(0)
img = vision.types.Image(content=f_img.read())
response =client.document_text_detection(image=img)
Полагаю, разница в этой строке, которая преобразует изображение в другой формат:
img = vision.types.Image(content=f_img.read())
Но я не уверен, как сделать то же самое, используя первый метод.
Есть ли способ получить те же результаты, что и с lib lib vision?.