1 简介 光学字符识别(Optical Character Recognition,OCR)的概念在1929年就已经提出,经过几十年的发展,该技术相对比较成熟,目前的应用主要体现在办公自动化,车牌识别,票据识别等方面,而食品
1 简介
光学字符识别(Optical Character Recognition,OCR)的概念在1929年就已经提出,经过几十年的发展,该技术相对比较成熟,目前的应用主要体现在办公自动化,车牌识别,票据识别等方面,而食品,制造,日用品等行业还有这巨大的潜在市场.随着自动化生产水平的普及以及物联网等高新技术的应用,字符识别技术在工业方面的应用还有这巨大的潜在市场,因此本文的研究重点主要是字符识别技术在工业方面的应用.
2 部分代码
%建立模板%Letter
A=imread('letters_numbers\A.bmp');B=imread('letters_numbers\B.bmp');%读取letters_numbers文件夹下的A.bmp图片
C=imread('letters_numbers\C.bmp');D=imread('letters_numbers\D.bmp');%读取出来的是42*24是图片像素点
E=imread('letters_numbers\E.bmp');F=imread('letters_numbers\F.bmp');
G=imread('letters_numbers\G.bmp');H=imread('letters_numbers\H.bmp');
I=imread('letters_numbers\I.bmp');J=imread('letters_numbers\J.bmp');
K=imread('letters_numbers\K.bmp');L=imread('letters_numbers\L.bmp');
M=imread('letters_numbers\M.bmp');N=imread('letters_numbers\N.bmp');
O=imread('letters_numbers\O.bmp');P=imread('letters_numbers\P.bmp');
Q=imread('letters_numbers\Q.bmp');R=imread('letters_numbers\R.bmp');
S=imread('letters_numbers\S.bmp');T=imread('letters_numbers\T.bmp');
U=imread('letters_numbers\U.bmp');V=imread('letters_numbers\V.bmp');
W=imread('letters_numbers\W.bmp');X=imread('letters_numbers\X.bmp');
Y=imread('letters_numbers\Y.bmp');Z=imread('letters_numbers\Z.bmp');
%Number
one=imread('letters_numbers\1.bmp'); two=imread('letters_numbers\2.bmp');
three=imread('letters_numbers\3.bmp');four=imread('letters_numbers\4.bmp');
five=imread('letters_numbers\5.bmp'); six=imread('letters_numbers\6.bmp');
seven=imread('letters_numbers\7.bmp');eight=imread('letters_numbers\8.bmp');
nine=imread('letters_numbers\9.bmp'); zero=imread('letters_numbers\0.bmp');
%*-*-*-*-*-*-*-*-*-*-*-
letter=[A B C D E F G H I J K L M...
N O P Q R S T U V W X Y Z];%一般在编辑器里一行代码太长写不下了,用...表示续行,下一行的代码和上一行是连着的。但在字符串里不能这样。
number=[one two three four five...
six seven eight nine zero];
character=[letter number];
templates=mat2cell(character,42,[24 24 24 24 24 24 24 ...%数字后面换行空格加三点,字母后面换行不用空格加三点
24 24 24 24 24 24 24 ...
24 24 24 24 24 24 24 ...
24 24 24 24 24 24 24 ...
24 24 24 24 24 24 24 24]);%mat2cell矩阵啊分块函数,在mat2cell函数中,有三个参数,第一个参数是想要分解的矩阵,第二个和第三个参数一般都是集合的形式,表示分解的尺度。
save ('templates','templates')%直接在文件夹中生成templates目录。前面那个templates是是文件名。
clear all
%mat是matlab的数据文件,可以直接双击导入。或者通过命令窗输入命令以及编写m文件导入。如果是当前目录下的文件file1.mat,直接输入load
%file1;如果不是当前目录下的,输入load(['目录\file1.mat'])。如果file1里含有a,b,c这三个变量,导入后数据空间里,就直接存在a,b,c这三个量。如果数据空间里有重名的,会把已有数据冲掉。
3 仿真结果
4 参考文献
[1]李杜. 字符识别技术研究及其在机器视觉测控中的应用[D]. 江南大学.