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

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

链接:https://github.com/Roujack/mathAI


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


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


640?wx_fmt=png


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


扫描二维码关注公众号,回复: 6552715 查看本文章

640?wx_fmt=png


640?wx_fmt=png


mathAI是如何实现的?


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


640?wx_fmt=png


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


它在TensorFlow上实现了一个lenet5 的卷积神经网络用来识别数学字符,训练使用CHROME数据集。对于数学公式的识别,主要是将识别出的独立的字符组织成计算机能够 理解的数学公式(这里的数学公式就是纯字符的可求解的数学计算题)。大概的方法是使用编译原理的算符优先法和递归下降法进行实现。 然后根据属性文法的值传递思想,将数学公式的值计算出来。最后使用python的matlibplot库把计算过程和答案打印出来。



图像预处理


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


640?wx_fmt=png


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


640?wx_fmt=png


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


640?wx_fmt=png


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


640?wx_fmt=png


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


640?wx_fmt=png


mathAI已经在GitHub上获得 732 个Star,196 个Fork(GitHub地址:https://github.com/Roujack/mathAI



致转行AI的在校大学生的一封信


【AI自学】 完备的 AI 学习路线,最详细的资源整理!


转行AI需要看的一些文章


转行学AI,具体细分方向如何选,来自一线工程师的感悟


用法律武器,痛击腾讯侵权行为!!!湾区人工智能可以改善知识产权现状吗?


【送书PDF】Python编程从入门到实践


Python从入门到精通,深度学习与机器学习资料大礼包!


【免费】某机构最新3980元机器学习/大数据课程高速下载,限量200份


640?wx_fmt=png


640?wx_fmt=png



640?wx_fmt=png


 觉得不错, 请随意转发,麻烦点个在看!

猜你喜欢

转载自blog.csdn.net/BTUJACK/article/details/91456245