验证码识别一般思路

    1. 在计算机中彩色图片是由像素点组成,像素点由R(红)G(绿)B(蓝)三原色组成,在验证码识别过程中,一般把需要识别的字符称为前景,其他的称为背景
    2. 灰度化:即将彩色图像转化为灰度图像,一般有以下三种方法 
      1)最大值法:命R、G、B的值等于三者中最大值,即R=G=B=max(R,G,B),这种方法会形成亮度很高的图像 
      2)平均值法:命R、G、B的值等于三者的平均值,即R=G=B=avg(R,G,B),这种方法会形成较为柔和的图像 
      3)加权平均法:命R、G、B的值等于三者的加权平均值,即R=G=B=(RWr+GWg+B*Wb)/3,Wr、Wg、Wb分别为R、G、B的权重,Wr+Wg+Wb=1 
    3. 二值化:即将灰度图像转化为只有黑白两色的的图像,一般是设定一个阈值,然后逐个扫描像素点,若大于该阈值则设为白色(255,255,255),否则设置为黑色(0,0,0),该方法的难点在于阈值的确定;如采用阈值法效果不好,则需要找其他办法,关键在找规律或者说是漏洞,比如对北京公积金这种每个字符颜色不相同,但同一字符内颜色相同的可以统计其各种颜色的像素点个数,确定出4个字符的颜色,然后再根据颜色分别定位
    4. 去噪:一般是根据某个像素点周围4临域或8临域的其他像素点来判断该点是否为噪声,比较典型的有中值滤波、均值滤波等
    5. 切割:对字符无粘连的可以采用投影法或连通区域分析法;字符粘连的情况下可以采用滴水算法等
    6. 训练识别:一般用支持向量机或神经网络
posted @ 2018-06-24 00:50  淋哥  阅读(659)  评论(0编辑  收藏  举报