求训练识别手写英文加公式为 LaTeX 编码的机器学习程序

2017-07-28 09:45:19 +08:00
 i2000s
自己经常要把手写的英文加数学公式的 OneNote 笔记转换成 LaTeX,比较繁琐机械。求人工智能帮忙。自己搜了下,好像还比较麻烦,目前只有单一识别公式或者只适用于印刷体混合识别的软件。请推荐便于自主改进的程序包以同时识别文本与公式的混排,我可以逐渐训练之。

谢谢。
5251 次点击
所在节点    程序员
29 条回复
rogerchen
2017-07-28 13:04:09 +08:00
1. 识别公式符号
2. 识别公式结构
3. 转化为 AST
4. PGCF 定结构
5. 转换到 Latex

2 是基本搞不出来的,这种工作做出来至少是千万级别的产品市场。
lcqtdwj
2017-07-28 14:00:50 +08:00
人工智能重要的一半就是人工啊 lol
ihciah
2017-07-28 14:44:57 +08:00
可以无脑试试 CNN+STN 提特征然后丢 LSTM 里吐输出…不过训练数据不好搞诶
manifold
2017-07-28 19:30:28 +08:00
@ihciah =。=这也太粗暴了吧,而且想想 LaTeX 各种各样的宏包。。table,figure 什么的就很酸爽
ypw
2017-07-28 23:08:41 +08:00
CNN+BiLSTM+CTC 在训练集数量够多的情况下,可以识别单行。多行的话需要用 OpenCV 自己裁。

我写过一个简单的识别 captcha 的 Demo,用 Keras 做的,你可以参考一下: https://github.com/ypwhs/captcha_break

然后百度有个比赛( http://meizu.baiducloud.top/ps/web/contestIntroduction.html#/dataDownloading )是通过图片识别四则运算式子的,用这个方法可以做到很高的准确率。
ypw
2017-07-28 23:11:21 +08:00
估计你训练出来一个可靠的模型至少要上万张图,而且没有显卡基本上玩不了,入坑需谨慎。
andyhenry
2017-07-29 22:12:34 +08:00
机器识别出来的手写公式的 tex 代码得多么丑。。自己手打吧,或者雇人打。
i2000s
2017-07-30 00:28:02 +08:00
@ypw 感谢提供的参考资料。为什么用 OpenCV 可以实现对多行公式和文字的识别?

看样子目前国内对这个方向的重视程度还是比较高啊。人类科技探索的根本目的是实现从实践到理论,再从理论到实践的过程。如果人工智能能够实现这个全过程的参与,将是对社会发展的极大促进。
ypw
2017-07-30 14:43:23 +08:00
@i2000s OpenCV 直接做识别很难,我的意思是用 OpenCV 抠字。比如先对图像进行校正,然后对 x 方向统计直方图,可以根据分界线抠出单行文字,然后再用 CNN + RNN 去识别具体的字。

当然,我们也可以用深度学习直接抠字,参考链接: https://arxiv.org/abs/1703.06520

CNN + LSTM + CTC 识别参考: https://arxiv.org/abs/1507.05717

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/378526

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX