查看: 601|回复: 14
打印 上一主题 下一主题

[求助] 讨论 - 文字版PDF文字提取或图片版OCR生成结构化文本的工具

[复制链接]
  • TA的每日心情
    慵懒
    2020-5-3 16:00
  • 签到天数: 207 天

    [LV.7]常住居民III

    28

    主题

    690

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12838
    跳转到指定楼层
    1
    发表于 2019-10-27 18:53:28 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
    本帖最后由 johannhuang 于 2020-2-15 20:11 编辑

    需求背景:
    因为我自己是学小语种的,所以在学习资源上肯定比不得英语。(没有这么多大神帮忙制作好的词库之类的)
    然后我现在在用的教材,有对应的词汇手册,有的有出版社有提供的文字版PDF,有的就没有了。

    想法是:

    1. 有文字版PDF的,希望通过相应的工具,将PDF的文字(甚至图片)抽取出来,形成相对结构化的内容,然后通过正则替换成mdx兼容的html文本,进而制作mdx,便于查询。
    2. 没有文字版PDF的,通过自己拍照或者扫描,制作成PDF,然后通过OCR生产文本(当然最好是结构化的),然后人工校验和结构化(如果没办法在前面工具处理掉结构化麻烦的化),然后制作成mdx。

    一个单词手册的页面如下:


    求助:
    论坛里面有大佬可以帮忙指导指导,怎么从文字版PDF到结构化文本,以及图片版PDF到结构化文本么?(有其他环节的建议和相关工具也欢迎推荐哈)

    个人思考:
    OCR工具是按句子输出文本的还是按单字呢?OCR工具会输出,文本对应的在页面中的坐标位置么?(感觉有坐标位置,可以后续弄个脚本,自动结构化到Excel中吧)

    总结一下:
    1. 如何 抽取文字版PDF中的文本(甚至图片)内容,到结构化的文本(当然最好是Excle或者CSV咯)?
    2. 如何 自动OCR图片版PDF生产文本内容,到结构化的文本?

    先谢为敬!
    相信论坛里面肯定还是会有不少技术大牛在的吧。毕竟各大词典,都有人做出来文字版的了。


    本帖被以下淘专辑推荐:

  • TA的每日心情
    慵懒
    2020-5-3 16:00
  • 签到天数: 207 天

    [LV.7]常住居民III

    28

    主题

    690

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12838
    来自 15楼
     楼主| 发表于 2019-10-27 19:22:25 | 只看该作者
    本帖最后由 johannhuang 于 2019-10-27 19:23 编辑
    cocowind 发表于 2019-10-27 19:01
    目前没有省事的办法。可参考
    3000米悬赏制作柯林斯法律词典mdx
    https://www.pdawiki.com/forum/thread-3678 ...

    谢谢回复,我觉得吧,其实也是下面回复的技术牛人的一家之言吧。逻辑上来看,如果是文字版PDF,而PDF其实也是开放标准,其实还是有办法快速转换成结构化的文本的,无非或者是个每个段落或者是每行文本标记坐标,然后基于坐标用脚本自动进行结构化处理(比如判断其实坐标为多少为第一列数据、第二列数据、等等)

    不过因为我自己在这个领域了解甚少,感觉论坛里面应该还是肯定是有大佬会的。
    不过问题可能就是大牛们,愿不愿意告知了。
  • TA的每日心情
    开心
    2019-3-26 21:36
  • 签到天数: 178 天

    [LV.7]常住居民III

    16

    主题

    549

    回帖

    2万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    26462

    QQ 章

    来自 14楼
    发表于 2019-10-27 23:28:10 | 只看该作者
    针对第一点的文字类pdf:
    抽取文字类pdf当中的图片可以使用“PDF 补丁丁”:https://www.cnblogs.com/pdfpatcher/
    转换成html或者抽取纯文字可以使用pdfminer:https://github.com/euske/pdfminer
    抽取结构化的pdf文字可以使用pdfalto:https://github.com/kermitt2/pdfalto

    抽取文字类里的图片和结构化的文字其实可以用现有的工具来实现,当然我没试过用文字类pdf转成适合阅读的mdx,处理抽取出来的结构化文字可能就需要花费一定的时间才可以转换成html。
  • TA的每日心情
    慵懒
    2020-5-3 16:00
  • 签到天数: 207 天

    [LV.7]常住居民III

    28

    主题

    690

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12838
    来自 12楼
     楼主| 发表于 2019-10-27 23:38:25 | 只看该作者
    lgmcw 发表于 2019-10-27 22:37
    PDF和html,举个类比就是像素图和矢量图的区别,像素图你放大就是像素格子,矢量图则完全是一堆公式,理论 ...

    纯技术方面来讲,我觉得你可能是对PDF有陌生恐惧,也或者是PDF给大家的感觉就是生硬的东西,其实不然。PDF和HTML一样,都是开放标准。因此,才有多个厂商开放PDF阅读器。也就是按照你的话来说,PDF和HTML都是矢量。
    所以如果有人研究过PDF的文档,应该还是提容易提取的。另外,正因为PDF是有单页面尺寸,所以才有固定的坐标可以用来分析(当然HTML也可以通过固定窗口的大小实现固定坐标)

    网上有工具可以将PDF转换成HTML,也是因为PDF就不是你说的像素。

    关于你最后的说法“有时候不是钱的问题,而是制作者的兴趣和对自己时间的价值评价。”
    实在讲,我觉得现在论坛除了你和另外不多的几个技术人还在免费贡献以外,确实有不少人已经转变成不给钱不参与社区了。感觉还是替社区惋惜的吧。
    其实,于我看来,这个社区最大的价值并不是其既有资源,而是有xliley01,Langheping, FF这样的愿意不为钱而贡献的大佬带路,只可惜现在感觉愿意出手的大佬少了……

    当然,即便很多大佬离开了,我还是相信社区肯定有不少技术牛人的...
  • TA的每日心情
    慵懒
    2020-5-3 16:00
  • 签到天数: 207 天

    [LV.7]常住居民III

    28

    主题

    690

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12838
    来自 10楼
     楼主| 发表于 2019-10-27 23:43:03 | 只看该作者
    流星冲击 发表于 2019-10-27 23:28
    针对第一点的文字类pdf:
    抽取文字类pdf当中的图片可以使用“PDF 补丁丁”:https://www.cnblogs.com/pdfpat ...

    能够得到大佬回复,很激动哈。逛了一定论坛之后,遇到过好几个 流星冲击 的杰作!确实 流星冲击 是个好汉,哈哈哈。 其实OCR现在,基本上都还是tesseract ocr,不过我自己还只是简单调研了下,不确定tesseract输入比如图片以后,能返回哪些具体信息。如果有文本对应的坐标,感觉应该还是可以得到结构化文本的。

    大佬推荐的 pdfminer 和 pdfalto 感觉值得了解了解,最重要的是 还开源!!!
  • TA的每日心情
    慵懒
    2020-5-3 16:00
  • 签到天数: 207 天

    [LV.7]常住居民III

    28

    主题

    690

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12838
    来自 9楼
     楼主| 发表于 2019-10-27 23:47:40 | 只看该作者
    本帖最后由 johannhuang 于 2019-10-28 00:28 编辑
    流星冲击 发表于 2019-10-27 23:28
    针对第一点的文字类pdf:
    抽取文字类pdf当中的图片可以使用“PDF 补丁丁”:https://www.cnblogs.com/pdfpat ...

    其实 我正文里面的结构化 更多是 区块 级别的吧。 要是像HTML标签一样级别的 结构化,估计还是得自己手工各种正则处理吧。

    毕竟不同的PDF页面就像不同的网页一样,可能都是不同结构的。不过一个PDF里面的页面,尤其是词典类的,页面 区块结构 及 区块内部结构 还是相对统一的。只要工具能够抽取出来区块,我觉得对区块内部结构用正则处理成HTML应该还是相对容易搞定的。
  • TA的每日心情
    奋斗
    2020-11-15 11:37
  • 签到天数: 249 天

    [LV.8]以坛为家I

    20

    主题

    1368

    回帖

    4万

    积分

    状元

    牛津爱好者

    Rank: 9Rank: 9Rank: 9

    积分
    41348

    灌水大神章小蜜蜂章笑傲江湖章QQ 章推广专家

    推荐
    发表于 2019-10-27 22:37:12 | 只看该作者
    本帖最后由 lgmcw 于 2019-10-30 09:35 编辑
    johannhuang 发表于 2019-10-27 19:22
    谢谢回复,我觉得吧,其实也是下面回复的技术牛人的一家之言吧。逻辑上来看,如果是文字版PDF,而PDF其实也是开放标准,其实还是有办法快速转换成结构化的文本的,无非或者是个每个段落或者是每行文本标记坐标,然后基于坐标用脚本自动进行结构化处理(比如判断其实坐标为多少为第一列数据、第二列数据、等等)

    PDF和html,举个类比就是像素图(rasterized)和矢量图的区别,像素图你放大就是像素格子,矢量图则完全是一堆公式,理论上可以无限放大,完全是南辕北辙的两种东西。你从曲线反推公式,怕是只能打点重算,重新建模fit新的公式,工作量可想而知。
    html的内容会自动根据窗口而flow (MDX, mobi, epub都是html);pdf你见过能flow的嘛?pdf完全是为了印刷优化的东西。后者转前者轻而易举,前者转后者@lmjiao 说的很对,需要机器辅助的情况下额外大量的人力。

    原理很简单,用abbyy OCR(相当于帮你打点放线,反推重建新的公式模型),无论是文本PDF还是扫描PDF,然后得到的html raw文件通过大量的人工处理和洗版就完成了,没有捷径。有时候不是钱的问题,而是制作者的兴趣和对自己时间的价值评价。
  • TA的每日心情

    2019-2-16 21:57
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    19

    主题

    500

    回帖

    6373

    积分

    会元

    Rank: 7Rank: 7Rank: 7

    积分
    6373
    推荐
    发表于 2019-10-30 01:29:59 | 只看该作者
    本帖最后由 lmjiao 于 2019-10-30 01:33 编辑
    johannhuang 发表于 2019-10-29 01:05
    我觉得越引越有点偏离主题而趋于论战了。这是没有必要的。所以部分问题点评不予回复吧。

    还是回归初衷, ...

    人身攻击没有意义,但论战有其意义:

    1. 说清楚了为啥已有高质量的pdf转html工具却对mdx制作帮助不大(reflow相关)

    2. 摆明了各方的技术方案:abbyy等 以及是否投票支持
    3. 辩论了是该等待“技术大牛”还是自己动手研究

    上面问题,有些属于techniques,有些属于opinion,有些则关乎strategy

    每个人都有选择自己的观点和路径的自由。但每一个帖子并不只有一个人看到,因此需要对其影响负责。

    即使仅出于平衡原则,也有必要展示各方观点。当某个观点是基于可重复的原创研究时,更应如此。

    因此,作为个人,我建议使用abbyy处理文本pdf,期待更多相关研究和成果,并且批评迷信且坐等大牛的行为策略。

    楼主至此没有表达任何主动研究的意愿,但期待将来能有成果,无论是否发表。

  • TA的每日心情
    开心
    2022-1-21 00:52
  • 签到天数: 699 天

    [LV.9]以坛为家II

    17

    主题

    1754

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    19738
    推荐
    发表于 2019-10-27 19:01:03 | 只看该作者
    目前没有省事的办法。可参考
    3000米悬赏制作柯林斯法律词典mdx
    https://www.pdawiki.com/forum/thread-36789-1-1.html?x=180507
  • TA的每日心情
    慵懒
    2020-5-3 16:00
  • 签到天数: 207 天

    [LV.7]常住居民III

    28

    主题

    690

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12838
    4
     楼主| 发表于 2019-11-4 15:24:12 | 只看该作者
    saluttous 发表于 2019-11-4 15:21
    用abbyy fine reader转成Excel格式应该很好操作的

    多谢推荐哈,看来Abbyy Fine Reader还是内置了很多黑科技的,不过因为Abbyy还是太贵,所以我没去尝试。
    PS:个人还是在尽量避免使用破解软件
  • TA的每日心情
    无聊
    2019-1-29 19:23
  • 签到天数: 1 天

    [LV.1]初来乍到

    1

    主题

    30

    回帖

    186

    积分

    童生

    Rank: 2

    积分
    186
    3
    发表于 2019-11-4 15:21:36 | 只看该作者
    用abbyy fine reader转成Excel格式应该很好操作的
  • TA的每日心情
    慵懒
    2020-5-3 16:00
  • 签到天数: 207 天

    [LV.7]常住居民III

    28

    主题

    690

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12838
    2
     楼主| 发表于 2019-10-29 01:05:15 | 只看该作者
    lmjiao 发表于 2019-10-28 23:33
    写了一堆都没一句有用的。

    实践是检验真理的唯一标准。

    我觉得越引越有点偏离主题而趋于论战了。这是没有必要的。所以部分问题点评不予回复吧。

    还是回归初衷,希望能够通过这个帖子,能够更多的坛友各抒己见,让大家都知道更好或者更多制作词典的方法与工具吧。

    在发帖之前,我自己也确有过一定程度的调研,但还是本着集思广益好过于一个人埋头苦干跑错方向好,所以发了这样一个帖子引还在论坛的愿意交流的前辈传授经验吧。

    同时,也谢谢你的回复,至少我们的交流或多或少能够后来的人一些思路吧。
  • TA的每日心情

    2019-2-16 21:57
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    19

    主题

    500

    回帖

    6373

    积分

    会元

    Rank: 7Rank: 7Rank: 7

    积分
    6373
    1
    发表于 2019-10-28 23:33:27 | 只看该作者
    johannhuang 发表于 2019-10-28 15:49
    首先声明一下,这不是一个引战帖子,是一个技术交流帖。我个人,也是一个不太喜欢和人做无意义争吵而非辩 ...

    写了一堆都没一句有用的。

    实践是检验真理的唯一标准。
    技术大牛不是,你这洋洋洒洒的一堆文字也不是。

    你有空掰扯感叹这么久某某技术大牛不在了,就没空自己上手做一次吗?

    就等着大牛们喂到你嘴边吗?

    不论是0还是1还是0.5还是什么的,你感叹一万句谁谁谁不在论坛了都是没用的。

    真正牛的不是某个人,而是动手去做!

    说实在话,就这个小问题真不是多难研究的。花上七八个小时也许你就会比我更专业。然而,从你的文字里,我看不到这种可能性。
  • TA的每日心情
    慵懒
    2020-5-3 16:00
  • 签到天数: 207 天

    [LV.7]常住居民III

    28

    主题

    690

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12838
     楼主| 发表于 2019-10-28 15:49:52 | 只看该作者
    lmjiao 发表于 2019-10-28 13:43
    你说的这个工具是存在的,就是abbyy fine reader

    不论你是否认同我的一家之言,为啥不能自己去试一下, ...

    首先声明一下,这不是一个引战帖子,是一个技术交流帖。我个人,也是一个不太喜欢和人做无意义争吵而非辩论的事情。但是因为,上升到“傲慢”了,所以觉得还是有必要正面回应一下。

    “弱小和无知不是强大的障碍,傲慢才是。”认同这个观点。但我觉得吧,我们对“傲慢”这个事情的看法不同。

    首先,我没有无视你的研究,只不过我并不会盲目相信你的一人之见就是真理。
    其次,我发这个帖子就是为了征百家之言。

    但有点讽刺意味的是,你却流露出,你的结论就是截止目前的真理,别人需要完全认同,或者推翻你的言论,0和1之间似乎不存在其他可能。

    我置顶了“流星冲击”的回复,并且试图撤销某些置顶(但显然论坛设定的规则是版主的权限或者观点更有效)。我为什么会有这种置顶抉择呢?因为“流量冲击”大牛给出的是渔竿,是提供给大家探索的工具,这是正面的好东西,是鼓励探索。但某些置顶,在我的观点里是在强调权威,是在讲接受不能,认可所谓权威的故事,个人认为其一结论待检验、其二价值观是负面的。

    还有,我其实通篇并没有提及reflowable这个点,我其实不明白为什么你们非得用reflowed这个点去正面HTML较之于PDF的所谓优越性也好所谓不可逆过程也好。

    我觉得,人的思路应该是具有发展性的,而不是固步自封的。图片到OCR文字的事情,是否别人做OCR就是不符合你们所谓不能的呢?

    其实挺奇怪的,本来就是简单的技术交流,不知道怎么就被拉到,钱啊、制作者兴趣啊、价值评估上面来了。
    然后最后又到了“傲慢”的事情上来了。其实现在有点点理解为什么很多技术牛人已经不在论坛了。

    以上!
  • TA的每日心情

    2019-2-16 21:57
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    19

    主题

    500

    回帖

    6373

    积分

    会元

    Rank: 7Rank: 7Rank: 7

    积分
    6373
    推荐
    发表于 2019-10-28 13:43:15 | 只看该作者
    johannhuang 发表于 2019-10-27 19:22
    谢谢回复,我觉得吧,其实也是下面回复的技术牛人的一家之言吧。逻辑上来看,如果是文字版PDF,而PDF其实 ...

    你说的这个工具是存在的,就是abbyy fine reader

    不论你是否认同我的一家之言,为啥不能自己去试一下,比较比较各种方法呢?如果推翻了我的结论,还可在论坛发表,我一定万米感谢。

    不去试试就无视了别人的研究,受损的还是你自己。

    弱小和无知不是生存的障碍,傲慢才是。