简单验证码识别matlab,简单验证码识别(matlab)

本文介绍了使用MATLAB进行简单验证码识别的方法,通过数字的面积、周长和重心等特征进行检测。实验中遇到的问题包括区分'6'和'9','4'和'0',并利用椭圆离心率进行解决。代码示例展示了区域属性测量函数regionprops的运用,以及预处理步骤。对于更复杂的验证码,需要考虑更多特征和更好的图像预处理。
摘要由CSDN通过智能技术生成

简单验证码识别(matlab)

验证码识别, matlab

昨天晚上一个朋友给我发了一些验证码的图片,希望能有一个自动识别的程序。

47318b4111091b61887b85759a0b1f4e.png

1474529971027.jpg

我看了看这些样本,发现都是很规则的印刷体数字,而且还没有角度旋转,所以我就直接使用数字的面积和周长两个特征量来进行检测,发现效果还是蛮不错的。

在实验中,主要问题是‘6’和‘9’两个数字的面积和周长都是完全一样的,所以这时候我又添加了一个重心的特征。

有些蛋疼的是数字‘4’和‘0’竟然面积是一样的。。。所以只好再引入椭圆离心率特征来判别。

图像也没有怎么预处理,就是简单的阈值化,再使用ostu分割。

具体代码如下

d=dir('*.jpeg'); %读jpeg文件

%% 预设模板,每一行对应一个数字

FD=[56,35.3137084989848,0.651415462867714;

45,41.6568542494924,0.928960924132855;

47,53.4558441227157,0.873324561446361;

54,57.4558441227157,0.842543936832893;

52,35.3137084989848,0.773979329527851;

57,56.9705627484771,0.8288087326485

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值