clear;
clc;
close all
yuantu=imread('60.jpg');%读取验证码
huid=rgb2gray(yuantu);%灰度化
%二值化
huid(huid>140)=255; %大于140白色,小于140黑色
huid(huid<140)=0;
%标准数字像素点
bz=zeros(12,9,10);
bz1=zeros(12,9);
jieguo=zeros(1,4);
%0
bz(:,:,1)=[1 1 0 0 0 1 1 1 1;
1 0 0 0 0 0 1 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
1 0 0 0 0 0 1 1 1;
1 1 0 0 0 1 1 1 1];
%1
bz(:,:,2)=[1 1 1 0 0 1 1 1 1;
1 1 0 0 0 1 1 1 1;
1 0 0 0 0 1 1 1 1;
0 0 0 0 0 1 1 1 1;
1 1 1 0 0 1 1 1 1;
1 1 1 0 0 1 1 1 1;
1 1 1 0 0 1 1 1 1;
1 1 1 0 0 1 1 1 1;
1 1 1 0 0 1 1 1 1;
1 1 1 0 0 1 1 1 1;
1 1 1 0 0 1 1 1 1;
1 1 1 0 0 1 1 1 1;];
%2
bz(:,:,3)=[1 1 0 0 0 1 1 1 1;
1 0 0 0 0 0 1 1 1;
0 0 0 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
1 1 1 1 1 0 0 1 1;
1 1 1 1 1 0 0 1 1;
1 1 1 0 0 0 1 1 1;
1 1 0 0 0 1 1 1 1;
1 0 0 0 1 1 1 1 1;
1 0 0 1 1 1 1 1 1;
0 0 0 0 0 0 0 1 1;
0 0 0 0 0 0 0 1 1];
%3
bz(:,:,4)=[1 1 0 0 0 1 1 1 1;
1 0 0 0 0 0 1 1 1;
0 0 1 1 1 0 0 1 1;
1 1 1 1 1 0 0 1 1;
1 1 1 0 0 0 1 1 1;
1 1 1 0 0 0 0 1 1;
1 1 1 1 1 0 0 1 1;
1 1 1 1 1 0 0 1 1;
0 1 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
1 0 0 0 0 0 1 1 1;
1 1 0 0 0 1 1 1 1];
%4
bz(:,:,5)=[1 1 1 1 1 0 0 1 1;
1 1 1 1 0 0 0 1 1;
1 1 1 1 0 0 0 1 1;
1 1 1 0 0 0 0 1 1;
1 1 0 0 0 0 0 1 1;
1 0 0 0 1 0 0 1 1;
1 0 0 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 0 0 0 0 0 0 1;
0 0 0 0 0 0 0 0 1;
1 1 1 1 1 0 0 1 1;
1 1 1 1 1 0 0 1 1];
%5
bz(:,:,6)=[1 1 0 0 0 0 0 1 1;
1 0 0 0 0 0 0 1 1;
0 0 0 1 1 1 1 1 1;
0 0 0 1 1 1 1 1 1;
0 0 0 0 0 1 1 1 1;
1 0 0 0 0 0 1 1 1;
1 1 1 1 1 0 0 1 1;
1 1 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 0 1 1 0 0 1 1;
1 0 0 0 0 0 1 1 1;
1 1 0 0 0 1 1 1 1];
%6
bz(:,:,7)=[ 1 1 0 0 0 1 1 1 1;
1 0 0 0 0 0 1 1 1;
1 0 1 1 1 0 0 1 1;
0 0 1 1 1 1 1 1 1;
0 0 0 0 0 0 1 1 1;
0 0 0 0 0 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
1 0 0 0 0 0 1 1 1;
1 1 0 0 0 1 1 1 1];
%7
bz(:,:,8)=[ 0 0 0 0 0 0 0 1 1;
0 0 0 0 0 0 0 1 1;
1 1 1 1 0 0 0 1 1;
1 1 1 1 0 0 1 1 1;
1 1 1 0 0 1 1 1 1;
1 1 1 0 0 1 1 1 1;
1 1 1 0 1 1 1 1 1;
1 1 0 0 1 1 1 1 1;
1 1 0 0 1 1 1 1 1;
1 1 0 0 1 1 1 1 1;
1 1 0 0 1 1 1 1 1;
1 1 0 0 1 1 1 1 1];
%8
bz(:,:,9)=[ 1 1 0 0 0 1 1 1 1;
1 0 0 0 0 0 1 1 1;
0 0 0 0 0 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
1 0 0 0 0 0 1 1 1;
1 0 0 0 0 0 1 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
1 0 0 0 0 0 1 1 1;
1 1 0 0 0 1 1 1 1];
%9
bz(:,:,10)=[1 1 0 0 0 1 1 1 1;
1 0 0 0 0 0 1 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
1 0 0 0 0 0 0 1 1;
1 1 0 0 0 0 0 1 1;
0 1 1 1 1 0 0 1 1;
0 0 1 1 1 0 0 1 1;
1 0 0 0 0 0 1 1 1;
1 1 0 0 0 1 1 1 1];
[m,n]=size(huid);
[m0,n0]=size(bz1);
xg=zeros(m-m0+1,n-n0+1,10);
aaa=zeros(4,10);
%计算相关性
for kk=1:10
bz1=bz(:,:,kk);
vec_sub=double(bz1(:));
norm_sub=norm(vec_sub);
for i=1:m-m0+1
for j=1:n-n0+1
sm=huid(i:i+m0-1,j:j+n0-1);
vv=double(sm(:));
xg(i,j,kk)=vv'
图像识别基于匹配滤波器实现数字验证码识别附matlab代码
版权申诉
5星 · 超过95%的资源 5 浏览量
2022-07-06
22:14:35
上传
评论
收藏 21KB ZIP 举报
天天Matlab科研工作室
- 粉丝: 3w+
- 资源: 7258
最新资源
- 部署yolov8的tensorrt模型支持检测分割姿态估计的C++源码+部署步骤.zip
- 以简单、易用、高性能为目标、开源的时序数据库,支持Linux及Windows, Time Series Database.zip
- python-leetcode面试题解之第198题打家劫舍-题解.zip
- python-leetcode面试题解之第191题位1的个数-题解.zip
- python-leetcode面试题解之第186题反转字符串中的单词II-题解.zip
- 一个基于python的web后端高性能开发框架,下载可用
- python-leetcode面试题解之第179题最大数-题解.zip
- python-leetcode面试题解之第170题两数之和III数据结构设计-题解.zip
- python-leetcode面试题解之第168题Excel表列名称-题解.zip
- python-leetcode面试题解之第167题两数之和II输入有序数组-题解.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论1