文章目录
作品演示
Never mind插件概述
Never mind插件是一款为谷歌浏览器定制的非常强大的一款自动填充登陆chrome插件,用户可以通过插件储存自己的用户名密码,插件辅助用户进行验证码图像识别并自动填充登陆,解决在指定的网站上用户重复输入信息不方便的难题(本项目以四川师范大学教务处登陆网站为特例进行开发)
概念图
Nerver Mind插件功能
- 自动帮助储存用户账号密码
- 自动识别验证码图片(服务器验证码图像识别正确率99%)
- 自动实现信息提交登陆
- 能够修改账号密码
- 浏览器任何网站上均可一键跳转至登陆成功的页面
Never Mind插件涉及技术
- chrome浏览器插件开发(Javascript)
- 基于Linux系统的图像识别服务器开发(Ubuntu,SSH文件传输)
- 验证码图像精确预处理(二值化、灰度化、九宫格去噪法)
- 机器学习图像99%识别率算法(CNN,OpenCV,Keras,Tensorflow)
- Flask服务器开发(Python flask)
Never Mind技术相关介绍
1. chrome浏览器插件开发
使用了JavaScript以及chrome官方插件开发语言,利用插件的四个要素(content,manifest,background,popup),特定根据四川师范大学教务处登陆页面的前端代码进行chrome插件脚本的填充;通过输入错误提示、验证码识别错误等,简略实现了插件与用户的交互。
图为Chrome插件脚本代码目录树
2. 基于Linux系统的图像识别服务器开发
使用Linux作为服务器,自带的Python语言使服务器开发更加简便;SSH的传输使本地与服务器的交互更加直接。
SSH传输
3. 验证码图像精确预处理
基于PIL实现图像二值化、灰度化以及九宫格法去噪,对教务处特定验证码实现精确阈值处理。(以下为原图和处理后的图片)
4. 机器学习图像99%识别率算法
爬取网站上的800个验证码图片,图像预处理后,进行800次手动标注,再使用具有两个卷积层和两个完全连接层的简单卷积神经网络体系结构训练数据集30次,最终达到99%的精确识别度。
800次手动标注
5. Flask服务器开发
Flask是轻型服务器架构,使用flask搭建服务器能够实现轻型服务器功能。
训练30次后识别率达到99%
flask服务器识别的验证码结果
Nerver Mind插件前端图片
压缩包解压在chrome安装好插件即可使用