layout: post title: 软件流水账:数学公式OCR识别 categories:
在翻译amber手册的时候, 遇到一些数学公式, 虽然不如gromacs手册中的多, 但人工输入还是麻烦, 也容易出错. 查看了一下已有的解决方案, 推荐最多的是Mathpix这个工具, 可以自动识别数学公式, 并转换为LaTex格式, 而且准确率挺高. 这个软件刚开始是免费的, 可惜很快就收费了, 而且也不大便宜. 目前的免费版本每个月只能使用50次(教育邮箱好像是100次), 有点不够用. 当然你可以申请一系列账号, 轮换着用, 虽然有点陋鄙. 一个较好的解决方法是使用它提供的API, 每个月限额1000次, 大致够用了, 但这就需要借助其他软件了.
这里也顺便总结下看到的资料吧. 首先, 识别数学公式属于OCR(光学字符识别)领域的问题. 对于一般的文字识别, 很多软件都支持. 最简单的应该就是利用几乎人人都有的QQ截图了, 按下Ctrl+Alt+A
, 截图工具上就有屏幕识图功能, 可以直接识别文字, 效果也还不错. 但这个工具不支持识别数学公式. 我猜测是因为需要这个功能的人太少, 腾讯不怎么关心.
与一般的文字识别相比, 识别数学公式更困难些, 因为数学公式的排布是二维的, 且涉及多种符号, 大小, 字体, 所以要单独拿出来处理. 以前所用的识别方法都比较传统, 效果不怎么好, 目前所用的大多是基于机器学习或深度学习的方法, 训练好以后效果好一些.
如果你不想使用Mathpix, 那可以看看我找到的下面这些.
此外, 几乎每家互联网公司都有自己的数学公式识别引擎, 如
其中讯飞摘得ICFHR 2020数学公式识别挑战赛冠军, 就是不知识别率是不是真的能够超过Mathpix.
最后, 如果数学公式识别已经不成问题, 接下来可以转战化学结构式了: