提取表单时按文档中的原始顺序返回结果

0

【以下的问题经过翻译处理】 你好。

我正在使用 AWS textract,特别是 FORMS 功能来提取表单。它真的很好用。但我遇到的问题是,当提取表单并返回结果 时,并没有按照在文档中的原始顺序进行返回。有什么办法可以保持返回结果的原始顺序?或者我可以使用坐标映射回文档顺序吗?以下代码就是我目前使用提取的方式:

def ocr(document):

job_id = start_job(client, BUCKET, document)
is_job_complete(client, job_id)
response = get_job_results(client, job_id) #This is the full object of the OCR
field_list = []
doc = Document(response)
start = 0
for page in doc.pages:
    lst = []
    for field in page.form.fields:
        lst.append("Key: {} Value: {}".format(field.key, field.value))
    field_list.append(lst)
    start = start + 1
text_list = []#Also extract the raw text
for i in range(0,len(response)):
    for item in response[i]["Blocks"]:
        if item["BlockType"] == "LINE":
            text_list.append(item["Text"])
text = " ".join(text_list)
return(field_list, text)

放到真实场景中, 示例文档包含以下表格:

答:123

乙:432

C:000

D:126

但是上面的函数返回:

乙:432

答:123

D:126

C:000

因此,返回的结果并没有按照从上方开始,然后从左到右,再到文档底部的自然顺序。我是否可以更改配置或者更改当前函数以返回原始/自然顺序?

profile picture
专家
已提问 1 年前54 查看次数
1 回答
0

【以下的回答经过翻译处理】 Textract是一项机器学习服务,因此可能不会完全准确。但是,我们一直在努力提高模型的准确性。我们将向科学团队转交这个特定的用例,希望未来的模型更新不会漏掉这种情况。

关于阅读顺序的问题,Textract目前不支持阅读顺序的配置。但是,我们会将此功能请求提交给我们的产品经理,看看是否可以在未来的发布中添加此功能。

profile picture
专家
已回答 1 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则