验证码识别技术(2)



   如果验证码的变形比较大、且有很多字体、大小也不固定、且有旋转,那么我们经过划分、取比率显示后,可能会得到这样一个图:
○■○
○○■
○■○
■○○
■■■
    那么这个数字应该是什么数字,我们需要使用排除法!排除所有不可能,在0123456789中,这个图不可能是013456789,他只能是 :2。

    写过验证码识别的朋友可能已经明白了!是的,我们需要建立一个类似的数据库,也就是识别库,出现哪些图,他就属于那个数字。
   再举一个例子:
○■○
■○○
■■■
■○■
○■○
     这是哪个数字呢??是6,没错

     我这里我需要再说明一下为什么要取5行,3列,15个块,因为块太多了你 的识别库就会很大,块太少了,就会出现很多分不清楚的块图。

    另外你取的百分比也需要注意,不能太大也不能太小。

     好了,等做好自己的数据库,这时就可以识别大部分数字了。

    最后还有一个问题,就是重复的问题,比如,图片上的数字,明明是 5,可由于它的字体不是常见的字体,且发生了旋转,最后得到这样一个图:
■■■
■○○
■■■
■○■
■■■
   在我的数据库里,这个块图,是6,也是就说识别错误,怎么办?

    我的解决方法是,在数据库里先把这条数据删除因为这个是错误的。

    遇到这种情况,就需要进行二次处理,我的方法是:降低百分比,这时就得到了:
■■○
■○○
■■○
○○■
■■○
     OK,经过降低百分比,图片就由“6”又变为“5”了,呵呵~~~由于降低了百分比,我们需要再建立一个识别库的来存储这些数据。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/3120.html