用大津法进行omr识别

来源:互联网 发布:阿里云收件服务器 编辑:程序博客网 时间:2024/05/02 01:54

这是前年年底我做过的一个项目,项目中我用到了大津法来处理omr识别的自动阈值问题,经过测试,该算法可以对不规范的涂写答题卡进行高效识别(比如以打对勾进行涂写的),而且是仅仅是几十行代码就实现了这样的功能。

看如果对如下这样的调查问卷进行识别:


在用大津法之前会有很多图像预处理及复杂的识别过程,这里略去,感兴趣的读者可以参看相关的文章。

我们这里假设成功的完成以上的步骤,成功的分割了卡片,分离出若干的基于二值或者灰度的答题框(这里,为表达方便,对答题框简写为CM,下文将均采用CM来代表分离出的答题框位图),如下:


涂了的CM,黑像素的比率自然就大些,我们下面要做的就是要在这些若干个CM中选出涂改了的CM。这里先简单介绍一下大津法。

大津法是由日本学者大津(Nobuyuki Otsu)1979年提出的,是一种自适应的阈值确定的方法,又叫最大类间方差法,简称OTSU。它是用来对图像阈值化的。我们说大津法实际上是对集合的一个二分类,大津法是作用于某覆范空间M,如果M有进行二分类的需求。可以用大津法进行集合的两分类。

再回到omr识别上来,像素比率是实数域上的覆范空间,定义范数为其绝对值,而且我们这里的识别是否涂写就是二分类(涂写了和没有涂写),所以说完全的符合大津法的要求。

我们简述一下大津法的过程:

对于图像I(x,y),涂改的和未涂改的黑像素比率的分割阈值记作,属于已经涂写的CM个数占CM的总数比例记为,其平均黑像素比率;未涂写的CM个数占CM的总数的比例为,其平均黑像素比率为。图像的总平均黑像素比率记为,类间方差记为

图像的大小为,图像中黑像素比率大于阈值CM个数记作,黑像素比率小于阈值CM个数记作,则有:


将式(1.5)代入式(1.6),得到等价公式:


采用遍历的方法得到使类间方差最大的阈值,即为所求。

我们对答题卡涂写一般是用2B铅笔全涂(要尽可能的适用于不规范的情况),对调查问卷则可能打对勾等,我们要适用于各种情况,所以绝不能用固定阈值来处理。大津法恰恰能动态的对目标和背景进行区分,最大限度的保证它的稳定性。



参考资料:

[1] 大津法原理 

0 0
原创粉丝点击