最流行的开源OCR软件之一是谷歌的Tesseract。它接受图像作为输入,并给出机器编码的文本。当我翻阅Tesseract的文档时,我发现Tesseract只接受图像作为输入。因此,我需要一种方法将我的pdf文件转换为图像。在上网的时候,我发现了4个可以将pdf转换成图片的python库。这让我想到,为什么不写一篇关于这些库的安装和代码演练的文章。所以就写到这里了。
Pdf2image
Pdf2image是一个Python模块,它封装了pdftoppm和pdftocairo,将PDF转换成PIL图像对象。第一个方法是convert_from_path ,它把pdf文件的路径作为一个输入。第二个是convert_from_bytes ,接受字节作为输入。后者可以用于生产准备的代码,因为我们可以直接从云存储中读取pdf的字节。这消除了将pdf下载到你的系统中的风险。
pip安装pdf2image
先决条件:
- Windows - 要在Windows中安装pdf2image,我们需要Windows的poppler二进制文件。下载poppler文件后,我们需要提供bin文件夹的路径。
- Linux - 要在Linux中安装pdf2image,我们可以使用conda forge命令来安装poppler。
conda install -c conda-forge poppler
Pypdfium2
pypdfium2是对PDFium的Python 3绑定,PDFium是由Foxit编写并由Google维护的自由许可的PDF渲染库。
pypdfium2的安装很简单,不需要任何依赖性。
pip3 install -no-build-isolation -U pypdfium2
PyMuPDF或Fitz
PyMuPDF是MuPDF的一个Python绑定--"一个轻量级的PDF和XPS查看器"。使用PyMuPDF可以将一个PDF文件转换为多种图像格式。
pip install PyMuPDF==1.16.14
Pdf2jpg
Pdf2jpg是一个Python库,可以用来将PDF转换为图像。我们需要分别提供pdf和图片的输入和输出路径。
pip install pdf2jpg