ocr图像识别技术 一文讲通OCR文字识别原理与技术全流程科普版( 三 )


当我给他看狗的图片时, 我告诉她这是狗 。
她根据自己的认知, 找了几个特征, 构建了一个模型:长嘴+尖牙=狗 。
虽然只是看过图片, 但是出门遇到真狗, 她根据这个模型也认识对了 。
后来, 她遇到了狮子, 她修改了模型:长嘴+尖牙+鬃毛≠狗=狮子 。
后来, 又遇到了麒麟, 这个公式变得越来越复杂……决策项越来越多 。

ocr图像识别技术 一文讲通OCR文字识别原理与技术全流程科普版

文章插图

人工智能, 就是模拟的人类的神经元, 构建神经网络来尝试寻找特征和结果的关系 。 如果对了, 就给这个特征加分 。 如果, 错了, 就给这个特征减分 。
识别数字, 也是一样 。
比如在学习识别数字6的时候, 它随机认为只要有一个圈圈特征, 就是数字6 。
验证其他样本时, 发现这个随机特征是对的(不对就再换一个特征再试) 。 于是, 它建立了一个模型:只要有圈这个特征, 就是6 。
后来, 这个模型遇到了数字0 。 加入新样本后, 人工智能发现, 0也有圈, 但它不是6, 也有可能是0 。 得再找一个特征, 于是, 新增一条, 有勾就是6 。 后来, 它又遇到了9 。 那勾在上面的就是6 。 后来, 它又遇到了字母b……反正计算机有的是算力, 能在很短的时间内完成这些学习 。 上面我是搂着说的, 其实即便在32*32像素的小图片上, 它随机上几十个特征去做验证, 一点都不吃力 。
这就是识别字符的原理 。 具体到代码, 也很简单, 因为人工智能框架目前已经非常成熟 。 虽然, 这篇是科普版, 不是专业版, 不适合讲代码, 但是我还是非常想贴上一段代码, 给大家看看 。 打破你的认知, 人工智能的应用层很简单, 别被忽悠了 。
举个例子, 识别10类常见物体:飞机、自行车、鸟, 猫, 鹿、狗、青蛙、马、轮船、汽车 。
ocr图像识别技术 一文讲通OCR文字识别原理与技术全流程科普版

文章插图

它的核心代码只有……6行 。
ocr图像识别技术 一文讲通OCR文字识别原理与技术全流程科普版

文章插图

所以, OCR字符的识别从来不难 。 难的是两头, 比如开头的预处理, 以及下面要说的后处理 。
2.4 文本后处理识别出了字符, 意义不大, 有效地连接起来才能发挥作用 。
一定要记住我上面说的这句话, 默读3遍以上 。
其实, 这句话没啥用, 只是有助于缓解紧张的气氛!
对于类似的话, 我认为是废话, 因为没有任何指导意义, 但是说的也没错 。
2.4.1 版面还原可能有人会觉得, 我接下来讲的会比较跳跃, 有点作者着急去厕所的感觉 。 这并不是什么写作风格, 这篇文章我快写吐了, 很想快点结束 。 或许我该搞一个系列专题, 我比较喜欢讲述体系化的东西, 不喜欢一次冒一个点, 那样对别人没有什么深度价值 。
也可能有人觉得, 版面还原不难(是的, 进入正题了), 字符我都拆开了, 坐标也记录了, 把识别的字符画上, 不就还原了?!
ocr图像识别技术 一文讲通OCR文字识别原理与技术全流程科普版

文章插图

没错, 说的很对, 把识别的结果画上去, 视觉上是还原了 。
但是, 这依然属于单个字符识别的那一步, 只不过做成了结果可视化, 是坐标还原, 并不是版面还原 。
我们期望的拆分和还原应该是下面这样:
ocr图像识别技术 一文讲通OCR文字识别原理与技术全流程科普版

文章插图

“10+2= 4-3= 5+6=11”这些文本从数据结构上应该是一行 。 而且, “10+2=”从数据结构上是一个基本单位 。 因为, 我们要对基本单位做运算和批改 。 这才叫还原, 其实并不简单 。


特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。