我正在设置一种新的发票提取方法使用AI,我能够识别发票图像中的"Total"/"Company Details“,但需要通过指定图像中的区域(Xmin,Xmax,Ymin,Ymax)从发票图像中识别的特定区域提取数据?
发布于 2019-06-12 20:17:09
AWS最近推出了一项名为Textract的服务,它完全可以实现您想要实现的目标。
您可以提供图像,PDF和Excel文件,它提取和转换任何文本为对象。我还没有使用这项服务,但计划在周末使用。
Python示例如下:
import boto3
# Document
s3BucketName = "ki-textract-demo-docs"
documentName = "simple-document-image.jpg"
# Amazon Textract client
textract = boto3.client('textract')
# Call Amazon Textract
response = textract.detect_document_text(
Document={
'S3Object': {
'Bucket': s3BucketName,
'Name': documentName
}
})
#print(response)
# Print detected text
for item in response["Blocks"]:
if item["BlockType"] == "LINE":
print ('\033[94m' + item["Text"] + '\033[0m')发布于 2019-06-12 20:10:54
看起来你是新鸟,所以让我帮助你快速演练理解你的关键字中使用的术语。
OCR是光学字符识别的概念,Tesseract是用于OCR的特殊库处理。OpenCV在图像处理库中提供帮助,帮助进行目标检测和识别。
可以,如果文本超过300dpi,您可以使用tesseract库从图像中提取文本,但在此之前,如果文本的字体对系统非常新或未知,则应使用该字体训练tesseract模型。
还请记住,如果您能够在调用tesseract之前对文本进行框图像处理,它将更准确地工作。
某些文字框图像,dpi将创建警报,但这些是您工作的核心概念。
我的建议是,如果你想从图像中提取数字,请一步一步地进行。
https://stackoverflow.com/questions/56561357
复制相似问题