概述
数字图像处理学的不太好,在我看了好几天别人的源码后,最后憋出来这么的垃圾东西,也能算是图像识别吧,但是应该是没有啥实际用处的。好了下面记录一下吧。
这是最主函数,读取图片,然后传入read函数,然后得到read函数返回的切割好的字母的图片。将切割好的字母图片传入compare函数,识别对应字母,然后最后在命令行窗口输出识别的字母。
read函数,传入的图片先进行二值化。因为得到的图片数组只有0和1,并且0为黑1位白,每行或者每列的和不为0,那么就可以说这是某个字母的边界,根据这作为边界条件,然后用循环分别确定每个字母上下左右的边界,然后通过边界切割出字母,调整大小为80×40并且存入一个三维数组,在所有的字母都切割完成后返回这个三维数组。
这是compare函数,传入一张切割并且大小调整好的图片,然后将图片与模板相减,统计得到数组中0 的个数0的个数越多说明匹配度越高,然后找到匹配度最高的模板对应的字母,然后返回这个字母。
这个是做模板的函数,具体做法就是切割含有从A到Z的一张图片,然后将切割好的图片保存,作为模板使用。函数和read函数类似只是将后面的显示部分和存储切割好的字母图片到三维数组的部分改为输出切割的图片,并且保存。
大概就是这个样子了吧。
MATLAB源文件和测试用截图
百度网盘:
链接:https://pan.baidu.com/s/13dXg3pHA07kROXq_cCYD0Q
提取码:qqwv
曲奇云盘
https://quqi.com/3914072/42
最后
以上就是飞快小伙为你收集整理的MATLAB学习记录 基于MATLAB的可能是最最简单的字母识别的全部内容,希望文章能够帮你解决MATLAB学习记录 基于MATLAB的可能是最最简单的字母识别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复