0

我需要为某些工作(使用 emscripten 移植)构建没有 leptonica 依赖的 tesseract。我查看了 make 文件,似乎 tesseract 需要 leptonica 头文件和 lib 文件才能构建。

提供头文件不是问题,但由于某种原因我无法提供 lib 文件(emscripten 不会生成 leptonica 的 lib 文件)。我试图通过编辑make文件来阻止tesseract要求leptonica,但似乎我走错路了。

我对制作/自动工具的东西非常陌生,我所做的是从整个脚本中的$LIB“”变量中删除标志,ac_link并且在我认为它正在调用的更多地方。

但我猜这些构建系统可能有一种方法可以以更干净的方式删除依赖项,而无需编辑配置脚本中的任意位置(可能是 makefile.am 之类的一些地方,或其他地方)。或者有没有其他方法可以在没有 leptonica 的情况下构建 tesseract,我该怎么做?

抱歉,如果我使用了错误的术语,比如我说我对上述构建系统不太熟悉。

4

1 回答 1

2

恐怕没有办法省略 Leptonica,除非您为所需功能提供一些替代品。

我对这个问题做了一些研究。目前,Leptonica 统计了 2481 个函数,但 Tesseract 使用了其中的一小部分——总共 163 个函数。

因此,您必须为非平凡的 163 函数提供替代,主要执行复杂的图像处理,如数学形态学、通过剪切旋转和彩色图像的二值化。

无法将 Leptonica 重新编译为 Javascript 的事实投票支持 Leptonica 更好的模块化。目前,它是一个庞大的单体库,严重依赖于 jpeg、gif、tiff、webp 等多种图像格式。因此,您必须将 libtiff、libgiff、libz、libwebp 等适当的库重新编译为 Javascript 为出色地。这可以更好地实现为插件。

就我的两分钱...

于 2015-10-04T14:44:22.717 回答