json 如何从PDF文件中转换/提取文本,以便将信息保存在对象/变量中?

8yparm6h  于 2023-06-25  发布在  其他
关注(0)|答案(2)|浏览(148)

此功能的目的是允许用户将PDF文件上传到前端(Angular)并在屏幕上显示PDF文件的信息。但它不显示完整的PDF文件,只显示所包含的信息。
为此,我想我可以将PDF文件转换为. txt文件或类似的文件,让提取信息。

    • 示例:**
  • Input:Cedula de Identificación Fiscal.pdf <--file Example pdf information
  • 输出:{name:Gregorio Emanuel Hernandez Rivera,address:"...",...,etc.}
ergxz8rk

ergxz8rk1#

您可以使用tesseractJS从pdf中读取文本。

1sbrub3j

1sbrub3j2#

默认情况下,OCR将没有此类字段的上下文。
您有几个选项,具体取决于您的方案:
1.所有文档都遵循相同的模板(如提供的),并且分辨率相同。
如果您使用的是少量字段,请执行OCR并创建预期字段及其像素坐标的JSONMap,例如{“name”:[x1,y1,x2,y2],...},然后将这些ROIMap回OCR输出。大多数OCR引擎支持单词级别的坐标输出。
1.所有的文档都遵循相同的模板(如提供的),但可以扫描或作为图片(让我们说通过移动的)。
您需要使用关键点Map进行一些图像转换,以将其与模板文档匹配。你可以试试选项1。
1.这些文档不遵循任何模板(提供的示例只是一个示例)。
在这种情况下,考虑到您列出的字段,我认为尝试的一个选项是首先对图像进行OCR,然后对提取的文本利用命名实体识别(NER)来确定您列出的字段(名称,地址等)。例如,请参见:spaCy NER
另一件事,你应该考虑的是,你得到的PDF是否已经有一个文本层。如果PDF已经有一个文本层,你不需要OCR,可以直接解析文本。在这种情况下,您可能需要考虑跳过OCR处理,而只尝试类似NER的方法来提取名称和地址。如果NER没有给出好的结果,你应该回到选项1和2。

相关问题