前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >中山大学的学霸小哥开源了一个能帮你做高数题的AI

中山大学的学霸小哥开源了一个能帮你做高数题的AI

作者头像
IT阅读排行榜
发布2019-06-20 14:37:31
8250
发布2019-06-20 14:37:31
举报
文章被收录于专栏:华章科技华章科技
导读:中山大学的一名叫mathAI的硕士学霸小哥在GitHub上开源了一个拍照做题神器火了。

作者:猿妹 整编

来源:开源最前线(ID:OpenSourceTop)

中山大学的一名叫mathAI的硕士学霸小哥在GitHub上开源了一个拍照做题神器火了。

这个程序只需要输入一张手写数学题的图片,这个AI就可以识别出输入的数学公式,最后输出计算结果,就像下面这样:

这样一个好用的项目,立马收获众多网友收藏,评价道:以后辅导宝宝的数学就有救了!

01 mathAI是如何实现的?

整个程序使用python实现,具体处理流程包括了图像预处理、字符识别、数学公式识别、数学公式语义理解、结果输出:

本程序使用opencv对输入的图像进行预处理,并将字符裁剪出来再归一化成固定大小的矩阵。

它在TensorFlow上实现了一个lenet5 的卷积神经网络用来识别数学字符,训练使用CHROME数据集。对于数学公式的识别,主要是将识别出的独立的字符组织成计算机能够理解的数学公式(这里的数学公式就是纯字符的可求解的数学计算题)。

大概的方法是使用编译原理的算符优先法和递归下降法进行实现。然后根据属性文法的值传递思想,将数学公式的值计算出来。最后使用python的matlibplot库把计算过程和答案打印出来。

02 图像预处理

图片预处理以OpenCV作为主要工具。预处理的主要目的是把图片中的字符切割出来,同时避免无关变量对字符识别的影响。

对图片预处理的效果如下图所示:

平均字符识别率已经高达96.23%

对 160 道测试题进行测试,系统做对 127 道题目,正确率为 79.38%

创建者将这个项目在GitHub上开源了,感兴趣的不要错过了。

mathAI已经在GitHub上获得 1106 个Star,286 个Fork,GitHub地址:

https://github.com/Roujack/mathAI

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-06-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据DT 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 01 mathAI是如何实现的?
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档