WEB开发网
开发学院软件开发C语言 163相册验证码图片的识别手记之一 --- 去除干扰... 阅读

163相册验证码图片的识别手记之一 --- 去除干扰

 2009-03-26 08:20:18 来源:WEB开发网   
核心提示: 效果出来了.部份图片明显的将干扰线去掉了.但是对某些特殊(弯曲特历害的)的干扰线还是去除不了.分析到这里后我的思路卡壳了.要怎么样才能将那些弯曲的干扰线去除掉呢?来来回回的看了验证码样例图片和0-9数字图片,终于有一个"啊哈"闪光在我头脑里呈现:为什么我要取块来判断呢(

效果出来了.部份图片明显的将干扰线去掉了.但是对某些特殊(弯曲特历害的)的干扰线还是去除不了.分析到这里后我的思路卡壳了.要怎么样才能将那些弯曲的干扰线去除掉呢?来来回回的看了验证码样例图片和0-9数字图片,终于有一个"啊哈"闪光在我头脑里呈现:为什么我要取块来判断呢(把问题搞复杂化了-_-),直接使用颜色"步长"(又是我自己取的名字>p<)统计不就可以了吗?

颜色步长统计法:

在验证码图片里干扰线和验证码的颜色是分别不相同的(拜"变色"所托!)并且0-9数字图片的长宽是固定的(作业答案在这里.嘿嘿).所以直接在扫描图片时记录每种颜色的出现次数和第一次与最后出现的坐标.扫描完图像后统计"出现次数大于一定数量(这个数量值很重要,我试验时取的是20)并且最后出现和第一次出现的x轴差必须为正负8之内,y轴差必须为正负10"的颜色(验证码颜色).如果不满足此统计条件的颜色都可认为为干扰色直接去除即可.

根据上面方法进行处理后的验证码图片样例如下:

163相册验证码图片的识别手记之一 --- 去除干扰       163相册验证码图片的识别手记之一 --- 去除干扰          163相册验证码图片的识别手记之一 --- 去除干扰            163相册验证码图片的识别手记之一 --- 去除干扰          163相册验证码图片的识别手记之一 --- 去除干扰

到此,所有干扰线都完美的去除了.剩下的就是怎么识别验证码了.

上一页  1 2 3 4 

Tags:相册 验证 图片

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接