Matlab字符识别实验

Matlab 字符识别OCR实验

图像来源于屏幕截图,要求黑底白字。数据来源是任意二进制文件,内容以16进制打印输出,'0-9a-f'字符被16个可打印字符替代,这些替代字符经过挑选,使其相对容易被识别。

第一步进行线分割和字符分割。因来源于屏幕截图,所以横平竖直。首先灰度图放大2倍并被二值化,然后在X(W)方向上像素求和,这样可以确定线分割精确位置,取多条线(20条)的子图,在Y(H)方向上进行像素求和,可大体确定字符间分割位置,在字符切割过程中,针对不同字符在此基础上可做左右精细调整。

第二步逐行逐字符模式匹配识别。对切割出的字符,在16个字符模板中进行匹配,取相似度最高的作为识别结果。匹配可采用二维模板匹配。这里出于效率考虑,用X和Y方向像素求和曲线作为字符特征,和切割字符的曲线进行比较,识别率几乎100%。曲线比较逻辑: 首先曲线归一化和对齐,然后用两条曲线的SAD做相似度度量,数值越小相似度越高

相关推荐
机器学习之心20 分钟前
多工况车速数据集训练GRU门控循环单元用于车速预测,输出未来多个时间步车速,MATLAB代码
深度学习·matlab·gru·车速预测
简简单单做算法2 小时前
基于hough变换和线段分类算法的金属冲孔板裂痕检测matlab仿真
matlab·hough变换·线段分类·金属冲孔板·裂痕检测
enmouhuadou14 小时前
快速运行matlab仿真方法
开发语言·matlab
神仙别闹21 小时前
基于MATLAB实现(GUI)汽车出入库识别系统
开发语言·matlab·汽车
hoiii1871 天前
MATLAB模拟ADS-B数据解码与信号处理整体流程
数据结构·matlab·信号处理
ghie90902 天前
维纳滤波器语音增强MATLAB实现
人工智能·matlab·语音识别
机器学习之心2 天前
CWT-CNN-GRU基于连续小波变换和卷积神经网络-门控循环单元故障诊断MATLAB代码
matlab·cnn·gru·故障诊断·cwt-cnn-gru
freexyn2 天前
Matlab速成笔记七十三:三角函数运算的用法
开发语言·笔记·matlab
划水的code搬运工小李2 天前
Origin技巧(五)连接matlab控制台
开发语言·matlab
SugarFreeOixi3 天前
Matlab多个图窗重叠问题解决,平铺函数TileFigs
开发语言·matlab