【印刷字符识别】OCR印刷字母+数字识别【含Matlab源码 1861期】

✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,Matlab项目合作可私信。
🍎个人主页:海神之光
🏆代码获取方式:
海神之光Matlab王者学习之路—代码获取方式
⛳️座右铭:行百里者,半于九十。

更多Matlab仿真内容点击👇
Matlab图像处理(进阶版)
路径规划(Matlab)
神经网络预测与分类(Matlab)
优化求解(Matlab)
语音处理(Matlab)
信号处理(Matlab)
车间调度(Matlab)

⛄一、OCR简介

OCR技术是光学字符识别的缩写, 是通过扫描等光学输入方式将各种票据、报刊、书籍、文稿及其它印刷品的文字转化为图像信息, 再利用文字识别技术将图像信息转化为可以使用的计算机输入技术。由于其应用前景广泛, 在应用领域有着重要的意义。

1 预处理部分
本部分可进一步细分为要素定位、二值化、切割、文字归整几个部分。由清分机或者高速扫描仪扫入的原始票据经过本部分的处理, 其识别要素如金额、日期按照单个汉字分别被存储为汉字点阵, 其中手写体大写汉字、印刷体大写汉字以及印刷体小写数字, 被存储为6464的点阵, 而手写的小写数字被存储为9680的点阵, 然后对此汉字点阵进行字符识别处理。由于某些种类的票据中, 即便为同一张票据, 其各要素的背景噪声都不相同, 所以对各不同要素区域采用了不同的二值化方法。在切割完成之后, 各要素已经成为单独的字符点阵, 文字归整则是针对单个字符点阵进行。票据上的金额、日期、帐号等都分别要经过上面的流程处理。

2 文字识别部分
按照识别系统所要识别的字符种类来分, 本系统需识别的文字有:印刷体汉字、印刷体数字、手写体汉字、手写体数字。按照识别要素, 系统包含日期识别、金额识别、帐号识别、磁码识别几个不同模块。

本系统对汉字识别采用了模板匹配方法, 对数字识别采用了人工神经网络方法。

模板匹配的基本原理是抽取未知文字的特征与事先存储好的标准的文字特征进行匹配, 在一定的距离或相似度测度下, 找出与未知文字的特征匹配得最好的标准特征, 将该标准特征所代表的文字作为未知文字的识别结果。

3 特征训练
训练是识别的基础, 标准特征的好坏直接影响到识别结果, 选取具有代表性的样本作为训练样本。训练前先将样本按一定的顺序存放起来, 训练样本也是64*64的点阵。与识别部分的特征抽取相对应, 训练部分的特征抽取也是在对文字图像进行规整和分割基础之上进行的。抽取的标准特征是每个汉字不同的样本的特征值的平均值, 还抽取了每个汉字的标准方差, 方差记录了每个字的离散度。标准特征和标准方差在识别过程中都有很重要的作用。

4 印刷体数字和英文字母识别算法开发
首先, 改进汉字识别算法, 必须充分考虑即将要开发的识别算法所要面对的识别对象与原有算法所面对的识别对象之间的区别。原算法是面对变形较大、笔划比较稠密的手写汉字, 而所开发的算法面对的是字形比较固定、笔划比较稀疏的小写数字, 相对来讲, 识别对象简单了很多。而且识别字符集也小了不少, 由原来的3755个汉字变为简单的十个数字, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 不过其中相似字仍然存在, 如5和6, 3和8; 其次是识别要求上的变化, 识别率由原来的手写汉字的识别率要求基本达到100%。

⛄二、部分源代码

% Clear all
clc, close all, clear all
% 读取图片
imagen=imread(‘test_1.jpg’);
% 显示图片
imshow(imagen);
title(‘输入带噪声的图像’)
%转换为灰度
if size(imagen,3)==3 %RGB图片
imagen=rgb2gray(imagen);
end
%转换为 BW
threshold = graythresh(imagen);
imagen =~im2bw(imagen,threshold);
% 移除所有小于 30 像素的对象
imagen = bwareaopen(imagen,30);
%图像中的存储矩阵字
word=[ ];
re=imagen;
%打开 text.txt 作为写入文件
fid = fopen(‘text.txt’, ‘wt’);
%加载模板
load templates
global templates
% 计算模板文件中的字母数
num_letras=size(templates,2);
while 1
%Fcn ‘lines’ separate lines in text
[fl re]=lines(re);
imgn=fl;

% 标记和计数连接的组件
[L Ne] = bwlabel(imgn);    
for n=1:Ne
    [r,c] = find(L==n);
    %提取字母
    n1=imgn(min(r):max(r),min(c):max(c));  
    %调整字母大小(模板大小相同)
    img_r=imresize(n1,[42 24]);
    %Uncomment line below to see letters one by one
     %imshow(img_r);pause(0.5)
    %-------------------------------------------------------------------
    % Call fcn to convert image to text
    letter=read_letter(img_r,num_letras);
    %字母连接
    word=[word letter];
end

⛄三、运行结果

在这里插入图片描述

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]张殿东,包常新,温尚卓.OCR技术在银行票据识别系统中的应用[J]. 山东科学. 2005,(02)

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

🍅 仿真咨询
1 各类智能优化算法改进及应用

生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置

9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长

10 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合

  • 19
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值