【图像识别】基于卷积神经网络实现英文字母及单词识别matlab代码
2021/11/10 6:12:27
本文主要是介绍【图像识别】基于卷积神经网络实现英文字母及单词识别matlab代码,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1 简介
随着近些年来互联网技术的飞速发展,网络安全逐渐进入公众视野,并成为人们日常生活所关心的一部分。验证码的使用也随之普及开来。验证码的英文为CAPTCHA,主要是被人们开发出来用于区分机器自动程序与人类用户的差异性。自从互联网以来,人们因为疯狂地追逐利润而滥用网络资源,进而导致自动化软件(有时称为机器人)的产生。为了抵御恶意机器人程序,防止论坛、博客中的垃圾评论,过滤垃圾邮件,保证在线投票真实性以及防止恶意批量注册网站等等,验证码应运而生。现如今,验证码在全球超过 350 万的各大网站论坛随处可见,人们日常处理的验证码数量多达 300 万次以上。由此可见,验证码识别技术的研究有益于验证现如今各种验证码的安全,帮助设计更可靠安全的验证码。不仅如此,验证码识别结合了图像处理、模式识别等多个领域的研究,对于促进各个领域的技术研究具有重要意义。
2 部分代码
[filename pathname] =uigetfile({'*.png';'*.*'},'打开图片'); str=[pathname filename]; S=imread(str); try S=rgb2gray(S); end S=imadjust(S); if(mean(mean(S))>125) S=255-S; end S=im2bw(S,0.5); [l w]=size(S); S=[zeros(l,1) S zeros(l,1)]; S=[zeros(1,w+2);S;zeros(1,w+2)]; figure(1) imshow(S) V=[1 1 1 1 1 1 1 1 1]; S=imerode(S,V); S=imdilate(S,V); figure(2) imshow(S) [l w]=size(S); ih=zeros(1,w); for i=1:w if max(S(:,i))>0 ih(i)=1; end end ms=zeros(1,w); for i=1:w if i~=w ms(i)=ih(i)-ih(i+1); end end pos=[]; for i=1:w if ms(i)~=0 pos=[pos i]; end end count=length(pos)/2; alpha=cell(1,count); for i=1:count alpha{i}=S(:,pos(2*i-1):pos(2*i)); [L W]=size(alpha{i}); ih=zeros(1,L); for j=1:L if max(alpha{i}(j,:))>0 ih(j)=1; end end ms=zeros(1,L); for j=1:L if j~=L ms(j)=ih(j)-ih(j+1); end end poss=[]; for j=1:L if ms(j)~=0 poss=[poss j]; end end alpha{i}=alpha{i}(poss(1):poss(length(poss)),:); %%alpha{i}=imresize(alpha{i},[30 30]); end figure(3) for i=1:length(alpha) subplot(1,length(alpha),i) imshow(alpha{i}) end
3 仿真结果
4 参考文献
[1]张良文. 联机手写英文单词识别技术的研究与实现. Diss. 南开大学, 2011.
这篇关于【图像识别】基于卷积神经网络实现英文字母及单词识别matlab代码的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-20实战:30 行代码做一个网页端的 AI 聊天助手
- 2024-11-185分钟搞懂大模型的重复惩罚后处理
- 2024-11-18基于Ollama和pgai的个人知识助手项目:用Postgres和向量扩展打造智能数据库
- 2024-11-15我用同一个提示测试了4款AI工具,看看谁设计的界面更棒
- 2024-11-15深度学习面试的时候,如何回答1x1卷积的作用
- 2024-11-15检索增强生成即服务:开发者的得力新帮手
- 2024-11-15技术与传统:人工智能时代的最后一袭纱丽
- 2024-11-15未结构化数据不仅仅是给嵌入用的:利用隐藏结构提升检索性能
- 2024-11-15Emotion项目实战:新手入门教程
- 2024-11-157 个开源库助你构建增强检索生成(RAG)、代理和 AI 搜索