如何解决是否可以使用Google Vision API一次扫描10张图像?到目前为止,只做1
我们当前正在使用google vision API进行ocr项目,其中图像返回文本值...但是到目前为止,我们仅能处理1张图像,是否可以处理10张图像?即时通讯使用python,此代码只能运行一张图片。.谢谢
import os,io
from google.cloud import vision
from google.cloud.vision import types
import pandas as pd
os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = r'anjir.json'
client = vision.ImageAnnotatorClient()
FILE_NAME = 'receipttest2.jpg'
FOLDER_PATH = r'C:\Users\Fadhlan\Desktop\Python venv\image\text'
with io.open(os.path.join(FOLDER_PATH,FILE_NAME),'rb') as image_file:
content = image_file.read()
image = vision.types.Image(content=content)
response = client.text_detection(image=image)
texts = response.text_annotations
df = pd.DataFrame(columns=['locale','description'])
for text in texts:
df = df.append(
dict(
locale=text.locale,description=text.description
),ignore_index=True
)
print(df['description'][0])
解决方法
由于batch image annotation offline在异步模式下受支持,因此可以使用"TEXT_DETECTION" feature。您可以找到Python in here的示例代码,如您所见,它需要为每个图像创建一个request元素并将其添加到请求数组中:
client = vision_v1.ImageAnnotatorClient()
//image one
source1 = {"image_uri": image_uri_1}
image1 = {"source": source1}
features1 = [
{"type": enums.Feature.Type.LABEL_DETECTION},{"type": enums.Feature.Type.IMAGE_PROPERTIES}
]
//image two
source2 = {"image_uri": image_uri_2}
image2 = {"source": source2}
features2 = [
{"type": enums.Feature.Type.LABEL_DETECTION}
]
# Each requests element corresponds to a single image
requests = [{"image": image1,"features": features1},{"image": image2,"features": features2}]
gcs_destination = {"uri": output_uri}
# The max number of responses to output in each JSON file
batch_size = 2
output_config = {"gcs_destination": gcs_destination,"batch_size": batch_size}
operation = client.async_batch_annotate_images(requests,output_config)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。