【验证码识别】基于不变矩算法实现数字验证码识别附matlab代码
【验证码识别】基于不变矩算法实现数字验证码识别附matlab代码
TT_Matlab
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。
1 简介
网络给人们提供丰富资源和极大便利,同时,互联网的安全性问题也随之而来。验证码正是加强网络系统安全性的常用手段。不变矩方法在目标识别领域的应用较为广泛,但在验证码识别方面的应用却不多。论文以数字验证码为例,先对验证图像进行去噪、定位、归一化等预处理,然后计算待识别数字的不变矩,再进行特征匹配,得到识别结果。以Matlab软件为开发平台来进行设计实现及仿真,并构建相应的GUI界面。实验结果表明利用不变矩在识别数字验证码方面具有可行性。在教学过程中应用该成果,可以使学生强化基本理论,培养学生的创新能力和理论联系实际的能力。
2 部分代码
% 提取不变矩特征数据
function res = invmoments(x)
x = double(x);
[M,N,~] = size(x);
[X,Y] = meshgrid(1:M, 1:N);
X = X(:);
Y = Y(:);
x = x(:);
m.m00 = sum(x);
m.m10 = sum(X.*x);
m.m01 = sum(Y.*x);
m.m11 = sum(X.
*Y.*
x);
m.m20 = sum(X.^2.*x);
m.m02 = sum(Y.^2.*x);
m.m30 = sum(X.^3.*x);
m.m03 = sum(Y.^3.*x);
m.m12 = sum(X.
*Y.^2.*
x);
m.m21 = sum(X.^2.
*Y.*
x);
xbar = m.m10/m.m00;
ybar = m.m01/m.m00;
e.hp11 = (m.m11 - ybar*m.m10) / m.m00^2;
e.hp20 = (m.m20 - xbar*m.m10) / m.m00^2;
e.hp02 = (m.m02 - ybar*m.m01) / m.m00^2;
e.hp30 = (m.m30 - 3
*xbar*
m.m20 + 2
*xbar^2*
m.m10) / m.m00^2.5;
e.hp03 = (m.m03 - 3
*ybar*
m.m02 + 2
*ybar^2*
m.m01) / m.m00^2.5;
e.hp21 = (m.m21 - 2
*xbar*
m.m11 -ybar
*m.m20 + 2*
xbar^2*m.m01) / m.m00^2.5;
e.hp12 = (m.m12 - 2
*ybar*
m.m11 -xbar
*m.m02 + 2*
ybar^2*m.m10) / m.m00^2.5;
res(1) = e.hp20 + e.hp02;
res(2) = (e.hp20 - e.hp02)^2 + 4*e.hp11^2;
res(3) = (e.hp30 - 3
*e.hp12)^2 + (3*
e.hp21 - e.hp03)^2;
res(4) = (e.hp30 + e.hp12)^2 + (e.hp21 + e.hp03)^2;
res(5) = (e.hp30 - 3
*e.hp12)*
(e.hp30 + e.hp12)*...
((e.hp30 + e.hp12)^2 - 3*(e.hp21 + e.hp03)^2)+...
(3*e.hp21 - e.hp03)*(e.hp21 + e.hp03)*...
(3*(e.hp30 + e.hp12)^2 - (e.hp21 + e.hp03)^2);
res(6) = (e.hp20 - e.hp02) * ((e.hp30 + e.hp12)^2-...
(e.hp21 + e.hp03)^2)+...
4*e.hp11*(e.hp30 + e.hp12)*(e.hp21 + e.hp03);
res(7) = (3
*e.hp21 - e.hp03) *
(e.hp30 + e.hp12) * ...
( (e.hp30 + e.hp12)^2 - 3*(e.hp21 + e.hp03)^2) +...
(3*e.hp12 - e.hp30)*(e.hp21 + e.hp03)*...
(3*(e.hp30 + e.hp12)^2 - (e.hp21 + e.hp03)^2);
3 仿真结果
4 参考文献
[1]赵杰. 不变矩特征在数字验证码识别中的应用[J]. 舰船电子工程, 2018, 38(6):3.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
-
2023年血糖新标准公布,不是3.9-6.1,快来看看你的血糖正常吗? 2023-02-07
-
2023年各省最新电价一览!8省中午执行谷段电价! 2023-01-03
-
GB 55009-2021《燃气工程项目规范》(含条文说明),2022年1月1日起实施 2021-11-07
-
PPT导出高分辨率图片的四种方法 2022-09-22
-
2023年最新!国家电网27家省级电力公司负责人大盘点 2023-03-14
-
全国消防救援总队主官及简历(2023.2) 2023-02-10
-
盘点 l 中国石油大庆油田现任领导班子 2023-02-28
-
我们的前辈!历届全国工程勘察设计大师完整名单! 2022-11-18
-
关于某送变电公司“4·22”人身死亡事故的快报 2022-04-26
