学习笔记-图像识别(Photo OCR)

The photo OCR problem

Photo OCR 全称 Photo Optical Character Recognition,即图像识别。例如识别下图中的文字:
这里写图片描述

文字识别的一般步骤如下:
1. 检测文字所在的区域;
2. 字符拆分;
3. 字符识别。
这里写图片描述

Sliding windows

采用滑窗策略来检测目标所在区域。如下图红框均为包含识别目标的滑动框:
这里写图片描述

针对每一个选定的窗口,利用监督学习的方法确定该窗口内是否包含待检测目标。
这里写图片描述

滑框策略的思路:采用比原图像尺寸小的窗口依次检测原图片的每一个区域,判定该区域是否包含待检测目标,如判定窗口内是否包含行人。
这里写图片描述

由于待检测目标的尺寸并不一致,因此通常需要分别尝试不同大小的窗口。
这里写图片描述

最终需要实现检测到图片中不同大小的待检测目标。
这里写图片描述

对于文字识别而言,首先确定每一个包含文字的窗口区域,用白色代表该窗口区域包含文字,用黑色代表该窗口区域不包含有文字;然后将邻近的白色区域连接起来,并过滤掉那些不可能含有文字的形状区域。
这里写图片描述

在确定含有文字的区域后,就可以利用监督学习的方法区分一个个字符,即判断是否存在字符间隙。
这里写图片描述

Getting lots of data: Artificial data synthesis

从之前的学习课程我们了解到,对于很多的机器学习任务,训练集数据集越大越好,然而当已有的数据集大小不足时,我们可以利用已有的训练集数据人工变形转换生成新的训练数据。
这里写图片描述
例如在训练文字识别器时,可以对原图像增加一些变形获得新的训练样本。
这里写图片描述

但是也不能任意去增加变形,增加的变形如果在测试集数据里可能会出现才会对模型有帮助,而增加那些毫无意义的背景噪音则很可能对结果不会有任何帮助。
这里写图片描述

在获取更多数据之前应认真讨论下:
1. 确保增加更多数据对你的模型是有帮助的;
2. 需要花费多少精力才能获得10倍的样本量?
这里写图片描述

Ceiling analysis: What part of the pipeline to work on next

辛辛苦苦造了一个模型,但结果不尽人意。需要回过头来研究一下整个工作流程的哪个部分改进后对提升结果最有帮助。
方法:依次人工帮助工作流的每个部分做到最好,分析验证对结果对提升程度。假如对某个步骤,在人工校正到100%正确后,预测结果获得了很大的提升,则说明该步骤有很大的提升潜力。
这里写图片描述
这里写图片描述

注:如无特殊说明,以上所有图片均截选自吴恩达在Coursera开设的机器学习课程的课件ppt.

虽然已经拿到结业证书一周多了,回想起来依然很激动,很感谢这门课程,我从这门课程中学到了很多。强烈推荐给想入门机器学习的朋友们。
这里写图片描述

猜你喜欢

转载自blog.csdn.net/maryyu8873/article/details/78198149