自动化ADF扫描、OCR和PDF创建的工作流程

adf2pdf的Python项目详细描述


adf2pdf-将一批纸页转换为pdf的工具 有一个文本层。默认情况下,它检测空页(因为 在双面扫描过程中很容易发生)并将其排除在 ocr和生成的pdf。

为此,它使用Sane'sscanimage进行扫描, Tesseract用于[光学字符识别](ocr),以及 python包img2pdfPillow (PIL)PyPDF2用于一些图像处理任务和pdf管理。

示例:

$ adf2pdf contract-xyz.pdf

2017年,乔治索多夫mail@gms.tf

功能

  • 自动文档馈送(ADF)支持
  • 快速空页检测
  • 扫描、图像处理、ocr和pdf生成的叠加 最小化总运行时间
  • 使用精细的img2pdf包快速创建小型PDF
  • 仅使用安全的压缩方法,即不易出错 符号分段样式压缩,如JBIG2或jb2 在Xerox photocopiers和djvu格式中使用的。

安装说明

adf2pdf可以直接与^{}一起安装,例如

$ pip3 install --user adf2pdf

$ pip3 install adf2pdf

另请参见PyPI adf2pdf project page

或者,python文件adf2pdf.py可以直接 在克隆的存储库中执行,例如:

$ ./adf2pdf.py report.pdf

除此之外,还可以从 像这样的克隆工作树:

$ pip3 install --user .

硬件要求

支持自动文档馈送(ADF)的扫描仪 神志清醒。例如,Fujitsu ScanSnap S1500工作 好。该模型支持双重扫描,这是相当 方便。

示例(续)

为一个7页的示例文档运行adf2pdf需要150秒 在i7-6600u(Intel Skylake,4核)CPU上(使用 富士通扫描快照S1500)。使用默认值,adf2pdf调用 scanimage用于600 dpi线性区(黑色和 白色)图像。在本例中,6页是空的,因此 自动排除,即生成的pdf只包含 8页。

生成的pdf包含来自ocr的文本层,以便 你可以搜索并复制粘贴一些文本。它有1.1兆字节大, 也就是说,一页纸平均存储在132千磅。

软件要求

默认情况下,脚本假定Tesseract版本4。版本3罐 也可以使用,但是new neural network system in Tesseract 4的性能比旧的ocr模型要好。 截至2018年年中,还没有稳定的版本4,但是 测试版在ocr上要好多了,我不推荐。 足够稳定的版本3了。

tesseract 4注释:

  • Build instructions-警告:如果您错过了 autoconf-archive依赖性会出现奇怪的autoconf错误 消息
  • Data files-你需要你的训练数据 选择的语言和OSD数据

python包:

  • img2pdf(尚未打包用于Fedora)-版本0.2.4可以工作 罚款
  • Pillow (PIL)(软呢帽包装:Python3枕头垫)
  • PyPDF2(Fedora软件包:python3-pypdf2)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在数据库中插入行时自动发送电子邮件?   从进程输出读取的Java问题   java质疑StyledDocument和JTextPane之间的关系,以及接口的正确使用   java错误getPlayer(args[0]);   java如何使Spring引导在重新打包的WAR中包含清单文件?   Java中的除法与模   java使用2d数组和JfreeChart制作散点图   java扩展SonarQube FindBugs插件和自定义FindBugs插件   javaspring:hibernate+ehcache   具有不正确的equals和HashCode实现的java HashMap   java Jaspersoft报告网。旧金山。jasperreports。发动机例外:net。旧金山。jasperreports。发动机填满JRepressionEvalException:计算表达式时出错   java如果输入与其变量不匹配,如何添加错误   在java中使用简单数组[]实现队列   无法启动上下文路径/hsx上的java FAIL应用程序