验证码识别
说明:本程序在于学习JAVA验证码别及交流,不可用于网络攻击和强力验证码爆破。
说明
- 贯穿验证码下载、图像处理、字符检测分割、对象识别、脚本处理等技术
- 以学习交流为目的,代码注释及文档也在逐步完善
- java语言验证码学习项目,拥有完整的训练、检测、识别过程的开源项目 在整个开源社区来说都相对较少
- 本人目前也正在学习图片识别相关技术,代码及文档持续更新中
包含功能
- 图像过滤器,包括大部份的图像处理, 主要过滤器使用jhlabs类库对图像做前期处理
- 象素化:彩色网格、晶格化、象素风格化、马赛克
- 噪点处理:去斑、去除噪点1、去除噪点2、去除孤立点、去除干扰线
- 形态处理:去除白边、旋转图像、图像缩放、裁剪图像、透视变形
- 效果处理:发光、取消锐化、锐化、浮雕、镶边
- 模糊处理:智能模糊、盒状模糊、简单模糊、高斯模糊
- 边缘检测:canny、拉普拉斯、高斯差值、边缘检测、轮廓
- 颜色处理:三阶色调整、中值降噪、二值化、伽码、对比度调整、曝光、曝光过度、混合RGB通道、清除背景、灰度处理、腐蚀、色彩增值、色彩分离、过滤颜色、颜色反转
- 图像分割器,包括固定分割法、投影分割法、联通分割法、水滴分割法
- 生成特征码,将处理后的图像生成16*16方阵的特征码,用于识别对比使用
- 图像识别 使用训练后的图像特征库对比进行图像识别
使用说明
String ocr= Cracker.ocr(projectPath,"trade",srcImg);
功能预览
训练工具源码请参照: captch-cracker-train-tool 验证码识别训练工具