吴恩达机器学习笔记 —— 19 应用举例:照片OCR(光学字符识别)

本章讲述的是一个复杂的机器学习系统,通过它可以看到机器学习的系统是如何组装起来的;另外也说明了一个复杂的流水线系统如何定位瓶颈与分配资源。

更多内容参考 机器学习&深度学习

OCR的问题就是根据图片识别图片中的文字:


这种OCR识别的问题可以理解成三个步骤:

  1. 文本检测
  2. 字符切分
  3. 字符识别

文本检测

文本的检测可以用行人的检测来做,思路差不多。

我们定义几个固定大小尺寸的窗口,从照片的左上角开始扫描。扫描出来的图像做二分类,判断是北京还是人物(文字)。然后根据图像处理的一些惯用手段做二值化、膨胀,使得文字区域连通。最终根据规则选择文本框就可以了,过滤那些规则不规整、宽度比高度小的矩形框框,剩下的就是目标文本框了。

字符切分

字符切分也可以理解成二分类问题,不过这里的滑动窗口是固定大小。根据窗口内的内容判断目标是分隔,还是文本。

字符识别

最后的字符识别就很简单了,找够样本,就可以做多分类了。跟手写体识别一样的玩法~

关于训练的样本

其实训练的样本可以根据已有的样本进行成倍的扩充。比如在做文字识别的时候,根据现有的图片做一些变形、噪声、旋转等,再比如针对一些文字替换背景等等。

关于系统的性能提升

针对系统准确性的提升可以把问题阶段性的考虑,先判断第一个环节的准确率,在判断第二个环节。

选择准确率影响最关键的节点进行优化。

posted @   xingoo  阅读(1468)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
历史上的今天:
2015-07-26 我的第一个Node web程序
点击右上角即可分享
微信分享提示