【汉字识别】基于模板匹配实现汉字精准识别附Matlab代码

简介: 【汉字识别】基于模板匹配实现汉字精准识别附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法  神经网络预测雷达通信 无线传感器

信号处理图像处理路径规划元胞自动机无人机 电力系统

⛄ 内容介绍

为实现对集装箱箱号的正确识别,提出一种基于模板匹配和特征匹配的识别算法.对采集到的汉字图像进行预处理,得到改善后的汉字二值化图像;采用数学形态学操作使字符域连通,计算字符连通域的宽高比得到汉字区域;利用投影检测方法实现对汉字字符的分割;运用模板匹配算法与特征匹配算法相结合的分类方法对汉字字符进行识别.该算法用MATLAB进行编程,完成对汉字的自动定位、分割和识别.

⛄ 部分代码

function [PY2,PY1,PX2,PX1]=chepai_fenge(I5)

[y,x,z]=size(I5);

myI=double(I5);

%begin横向扫描

tic

Y_threshlow=5; %这个数值很重要。决定了提取的彩图的质量

X_firrectify=5;

%=== Y 方向===从左向右寻找第一个1值像素大于5的坐标为水平方向左侧分界线,从优向左寻找到第一个1值像素量大于5的为右侧分界线

Blue_y=zeros(y,1);

for i=1:y

   for j=1:x

       if(myI(i,j,1)==1)%如果myI(i,j,1)即myI图像中坐标为(i,j)的点为白色

        %则Blue_y的相应行的元素white_y(i,1)值加1

          Blue_y(i,1)= Blue_y(i,1)+1;     % 蓝色象素点统计                    

       end  

   end      

end

       [temp MaxY]=max(Blue_y);% Y方向车牌区域确定 temp(最多点数):所有行中,最多的累积像素点 MaxY(最多点所在行):该行中蓝点最多

        PY1=MaxY;%有最多蓝点的行付给PY1

       while ((Blue_y(PY1,1)>=Y_threshlow)&&(PY1>1))%找到图片上边界

           PY1=PY1-1;

       end

     

       %PY1:存储车牌上边界值

       PY2=MaxY;

       while ((Blue_y(PY2,1)>=Y_threshlow)&&(PY2<y))%阈值为5

            PY2=PY2+1;

       end

      PY1, PY2 %原始图像I中截取的纵坐标在PY1:PY2之间的部分

  % figure(1),imshow(Blue_y),title('y方向确定');

   pause(2);

   %==============X 方向===============================

       X_threshhigh=(PY2-PY1)/11;%这个数值很重要。决定了提取的彩图的质量,适当提高可抗干扰,但是小图会照成剪裁太多

       Blue_x=zeros(1,x);             % 进一步确定X方向的车牌区域

       for j=1:x

           for i=PY1:PY2

               if(myI(i,j,1)==1)

                Blue_x(1,j)= Blue_x(1,j)+1;              

               end  

           end      

       end

       [temp MaxX]=max(Blue_x);

       PX1=MaxX-6*(PY2-PY1);

       if  PX1<=1

           PX1=1;

       end

       while ((Blue_x(1,PX1)<=X_threshhigh)&&(PX1<x))%阈值

             PX1=PX1+1;

       end               %确定出X方向车牌起点  

       PX2=MaxX+6*(PY2-PY1);

       if  PX2>=x

           PX2=x;

       end

       while ((Blue_x(1,PX2)<=X_threshhigh)&&(PX2>PX1))%阈值

              PX2=PX2-1;

       end            %确定出X方向车牌终点

       PX1 ,PX2

   % figure(2),imshow(Blue_x),title('X方向确定');    

⛄ 运行结果

⛄ 参考文献

[1]谷秋頔, 白艳萍. 基于模板匹配的车牌汉字识别方法及判别函数[J]. 电子科技, 2011, 24(12):3.

[2]陈超, 牛王强, 杜芃. 基于模板匹配和特征匹配的集装箱箱号识别算法[J]. 上海海事大学学报, 2019, 040(001):65-70.

❤️ 关注我领取海量matlab电子书和数学建模资料
❤️部分理论引用网络文献,若有侵权联系博主删除


相关文章
|
2月前
|
算法 定位技术 计算机视觉
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
111 0
|
2月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
143 8
|
2月前
|
机器学习/深度学习 编解码 算法
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
136 8
|
2月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
208 0
|
2月前
|
算法 机器人 计算机视觉
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
|
2月前
|
新能源 Java Go
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
107 0
|
2月前
|
机器学习/深度学习 数据采集 测试技术
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
|
2月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
154 8
|
2月前
|
编解码 运维 算法
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
152 12
|
2月前
|
人工智能 数据可视化 网络性能优化
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
104 9

热门文章

最新文章