龙源期刊网 http://www.qikan.com.cn 浅析小猿搜题类软件是如何实现的 作者:喻梅 来源:《商情》2015年第43期 如果你之前使用过PhotoMath或者小猿搜题这些产品的话,你会发现它们一个共同点就是用起来很简单,用户只要拍个照软件就能返回题目答案。但在这个简单的过程背后,你是否知道具体是怎样实现的?计算机所做的事情远比这个要复杂得多。 把手机对着试卷拍一下,然后等几秒钟的时间,这道题的答案就出来了。在我上中学的时候,从来没想学生们竟然可以用上这等“神器”,但是现在这类产品却开始接二连三的出现。 如果你之前使用过PhotoMath或者小猿搜题这些产品的话,你会发现它们一个共同点就是用起来很简单,用户只要拍个照软件就能返回题目答案。但在这个简单的过程背后,你是否知道具体是怎样实现的?计算机所做的事情远比这个要复杂得多。 1.上传图片。2.预处理图片:即对图像的模糊、旋转、颜色反转等问题进行处理。3.切分:对图片中的汉字、英文、符合加以区别。经过“二值化”之后整个图像会呈现出明显的黑白效果,这样一来,图像就变得简单了,而且数据量也减小了,还能凸显出感兴趣的目标的轮廓。接着自然也就可以把单个字符切分出来了。 4.识别:把字符切分出来之后,软件还是“认不出”这个字符是什么的,所以接下来还要“识别”这些字符。这时就需要光学字符识别技术(OCR)和深度学习(Deep Learning)技术上场了。在“识别”这个过程中,PhotoMath主要使用了OCR技术,而小猿搜题则主要使用了Deep Learning技术。Deep Learning是机器学习其中的一个分支,其动机在于建立、模拟人脑进行分析学习的神经网络,模仿人脑的机制来解释数据,例如图像,声音和文本。专家称Deep Learning的识别能力未来可以超过人眼。5.纠错:利用语言模型进行纠错。不论是OCR技术还是深度学习技术都不能保证100%识别正确,所以中间可能还需要插入一个纠错过程,像“1和l”、“好图所示和如图所示”、“入和人”这些形式非常相近的字符机器也很容易读错。通过Deep Learning、标注数据、优化算法等对图中文字进一步识别。6.搜索:经过上述这些步骤,将题目转化成文字,然后在题库中进行搜索,最终返回题目答案以及解析。另外,这个过程中还使用了以图搜图的技术加以补充。以图搜图的方法就是把用户拍摄的图片和已有的图片题库做匹配。这和我们平常通过上传图片的方式在搜索引擎中找与之相似的图片其实非常类似。只是在图片匹配的过程中有“计算机视觉+机器学习”和“深度学习”这两种方式可选。 虽然这些做题软件可以在几秒钟之内给你返回一道题的答案,但中间的整个处理过程其实是相当麻烦的,用到的技术也非常广泛。另外一个需要说明的是,即便用到了如此多的先进技术,这些软件也不能保证给出一个100%正确的答案。 不过对于学生来说你也不用太担忧,因为目前深度学习的识别极限和人眼的极限是差不多的,而未来深度学习肯定会比人眼更厉害。这也就是说再过几年,现在的中学生们或许又会感慨:我当年上学的时候怎么没有这种神器。 本文来源:https://www.wddqw.com/doc/fe005aa0b04e852458fb770bf78a6529657d3517.html