基于FPGA的数字识别三

基于FPGA的数字识别三

作者:OpenS_Lee

1 背景知识

在《基于FPGA数字识别一》我们在三种数字识别方法中选择了数字特征识别算法,完成了屏幕固定位置的数字识别。例如图1所示,数字只有在标线的固定位置才能被识别,移出标线就不能被识别。

图1 基于固定标线的数字识别

  在《基于FPGA的数字识别二》中我们在数字识别的前端增加了移动目标的追踪模块,从而完成了屏幕范围内0-9的任意位置的识别。例如图2,首先定位出数字在屏幕的上下左右边界,最后以此边界为依据识别数字。从而改变的数字不能移动的问题。但是每次只能识别一个数字。

图2 不限位置的单个数字识别

  为了完成屏幕内多个数字的识别,例如一排五个或者两排10个数字等的识别。我们增加了《基于FPGA的水平垂直投影法》字符分割算法,完成了多个字符的边界查找和分割。例如图3所示。这为多个数字识别或是车牌识别打下基础。

图3 水平垂直投影分割字符

在《基于FPGA的数字识别三》中我们将完成多个数字的同时识别,且不限于多个数字在屏幕上的位置大小。

2 基于FPGA的数字识别三

 在《基于FPGA的数字识别三》中我们利用的了前边的数字识别一和二以及垂直投影法。这样对之前的模块复用也是FPGA设计的核心思想。

                             图4 多个数字识别系统框图

如图4所示,我们在垂直投影模块后边增加了数字识别模块。

图5例化三个数字识别模块

利用信号的多拍处理完成了三个数字转数码管的实现。

信号多拍处理。

结果展示:

图6 放出标线的多个数字识别调试

图7 放出标线的5,6,7

图8 追踪边界的5,6,7识别

至此数字识别完成,再次基础上我们还可以对简单图像的识别或增加语音系统完成对识别数字的播报。一个简单的机器智能就此实现。

欢迎大家关注我的微信公众号:FPGA开源工作室

猜你喜欢

转载自blog.csdn.net/baidu_34971492/article/details/81296573