java验证码识别--1

(本文仅用于学习研究图像匹配识别原理,不得用于其他用途。)

最近看了看验证码的识别,先从最简单的做起吧(固定大小,固定位置,固定字体)

 

验证码识别基本分四步,图片预处理,分割,训练,识别

 

看一个最简单验证码

这是一个德克萨斯扑克的注册页面的验证码

 

1。图像的预处理

这种直接根据亮度设个阈值处理就可以了

 

处理完图片效果为

图像基本分得比较清楚,图片分割也比较容易

 

2。分割

这个验证码居然是固定位置的,分割相当简单,直接截取相应位置就可以了

3。训练

直接拿几张图片,包含0-9,每个数字一个样本就可以了,将文件名对应相应的数字

4。识别

因为是固定大小,固定位置,识别也很简单。

直接拿分割的图片跟这个十个图片一个像素一个像素的比,相同的点最多的就是结果。比如如果跟5.jpg最相似,那么识别的结果就是5。

下面是识别结果,很容易达到100%

 

 

完整代码(csdn连个附件都不支持):

 

posted @ 2010-08-07 01:22  好好学习,天天进步  阅读(1306)  评论(0编辑  收藏  举报