如何将 PyMuPdf 输出匹配到 pdf2image 输出?

问题描述

一个pdf2image 构建的 PDF 到 PNG 转换器。将 PDF 转换为 PNG 图像非常慢。例如,即使在 4 核机器(标准 B4ms Azure VM)上将 thread_count 设置为 4,一个 7 页的 PDF 文档也需要 10 秒才能拆分为 PNG 图像。

尝试了 PyMuPdf(如 here 所述)并且在认缩放的情况下运行速度更快(仅 800 毫秒):

mat = fitz.Matrix(1,1)

然后我意识到认缩放输出的 PNG 与 pdf2image 相比要小得多,因此增加了缩放以匹配 pdf2image 输出的 PNG。我必须使用 2.7777 的比例因子来使像素大小与 pdf2image 匹配,所以

mat = fitz.Matrix(2.7777,2.7777)

这需要 3 秒才能运行,但与 pdf2image 相比仍然快得多。

在我看来,PyMuPdf 输出的图像与 pdf2image 输出的图像完全相同,但实际上它们不同。我们使用这些 PNG 的下游处理(对象检测模型)也会产生不同的结果。

看看 pdf2image doc,我们刚刚使用了认的 dpi 200。如何将此设置转换为 PyMuPdf 以获得完全相同的输出?我尝试了 setResolution 次,共 200 次,但没有帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)