要解决Amazon Textract特定块的边界框坐标发生变化的问题,可以使用以下代码示例:
import boto3
def get_updated_coordinates(document):
# 创建Textract客户端
textract_client = boto3.client('textract')
# 调用AnalyzeDocument API获取文档分析结果
response = textract_client.analyze_document(
Document={
'Bytes': document
},
FeatureTypes=['FORMS']
)
# 提取特定块的边界框坐标
block_id = 'your_block_id' # 替换为要提取边界框坐标的块的ID
blocks = response['Blocks']
for block in blocks:
if block['Id'] == block_id:
geometry = block['Geometry']
bounding_box = geometry['BoundingBox']
return bounding_box
return None
# 替换为要分析的文档的字节数组
document = b'your_document_bytes'
updated_coordinates = get_updated_coordinates(document)
if updated_coordinates:
print("Updated coordinates:", updated_coordinates)
else:
print("Block not found.")
在上面的示例中,使用boto3库创建了一个与Amazon Textract的客户端连接。然后,调用analyze_document方法来分析文档并获取结果。通过检查返回结果中的Blocks列表,可以找到特定块的边界框坐标。将your_block_id替换为要提取边界框坐标的块的ID。
如果找到了指定块的边界框坐标,它将被打印出来。如果未找到指定块,则打印"Block not found."。
请注意,要运行此代码示例,您需要在计算机上安装并配置适当的AWS SDK,并具有对Amazon Textract的访问权限。