第一部分 设计概述 /Design Introduction
1、概述
在图像处理领域,图像识别是较为困难而关键的技术。这项技术被广泛的应用到娱乐、工业、军事等领域。本次设计数字识别系统已经在车牌识别、运动员号码识别等多处运用。本系统包括了摄像头读取图像、图像灰度处理、数字识别、HDMI显示四个主要模块,成功识别到纯底色上的一位数字,并在显示屏上的数字表中选中该数字,基本实现了本次设计的功能。
2、成品展示
第二部分 系统组成及功能说明 /System Construction & Function Description
计划实现的功能:(1)摄像头驱动 (2)对摄像头拍摄到的图片进行灰度化处理 (3)对0-9进行识别(4)识别的结果在屏幕上对应显示
已实现的功能:(1)摄像头驱动 (2)对摄像头拍摄到的图片进行灰度化处理 (3)对0-9进行识别(4)识别的结果在屏幕上对应显示
具体操作摄像头拍摄背景为纯色的图片,将数字分别置于屏幕上红色的框中(数字必须完全在框内,且框中只能有一个数字,观察屏幕左上角图片的变化情况。(再运行工程时请刷新.coe文件地址)
项目系统框图:
整体框图结构如下:

系统输入输出信号

分模块设计
(1)分频模块

系统时钟clk_in1输入,输出out1 100MHz用于摄像头驱动,输出out2 200MHz用于图像MIPI信号转RGB
(2)摄像头驱动模块

(3)对图像MIPI信号转RGB信号模块

输出的clk_pixel像素显示时钟控制灰度化处理,数字识别和显示模块,输出的setx,sety用于定位像素点位置,输出的rgb_data即图像RGB信息,可以进行实时处理,输出的hsync,vsync,vde用于最终的HDMI显示
(4)灰度化处理模块

通过对图像RGB信息进行处理,

得到一位数的灰度信号并输出。
(5)数字识别模块

输入灰度化处理得到的二值数据,以及像素点位置坐标setx,sety,输出识别到的数字num
我们采用基于数字特征的算法进行数字的识别,通过对图像灰度化处理后产生的二值数据,然后进行数字特征的提取和统计来完成对数字的识别。
1)首先在屏幕上限定好x坐标为540-740,y坐标为227-493的部分,当摄像头拍摄到数字处于这个区域内,就可以得到识别。
2)作三条标线x1,x2,y,基于打印体,x1在竖直方向的2/5处的水平线,x2在竖直方向的2/3处的水平线,y在水平方的1/2处的垂直线,数字特征如下:


通过边沿检测,当二值数据在标线处发生一次改变,与标线的交叉点个数就加一,对于数字2,3,5,判断交叉点位置的左右,就由此就可以完成从0到9全部数字的识别。
(6)图像显示模块

统一用图像MIPI信号转RGB信号模块输出的像素时钟clk_pixel控制。
Rgb_test部分:将数字识别模块输出的num(即检测到的数字)和灰度化处理之后的二值信号以及像素点坐标信息setx,sety输入。为了方便检测,在屏幕上画出x坐标为540,740,y坐标为227,493的四根红线,识别时需要将数字放置与红线形成的框中。在左上角规定x坐标为30-130,y坐标为40-140的区域,用于显示如下图片,图片信息存放于rom中。
当识别出数字时,如识别出1,图片中数字1对应的部分背景变为黑色数字变为白色,相当于数字1“被选中”,其他情况类似,没有识别到数字时图片不发生变化,识别到0图片消失。屏幕上其余部分显示摄像头拍摄并实时处理后的灰度图像。最终输出屏幕上需要显示的图像的RGB信息。
HDMI_Driver部分:调用IP:rgb2dvi_0,将处理后的RGB信息等输入,完成HDMI显示。
第三部分 完成情况及性能参数 /Final Design & Performance Parameters
设计功能:
(1)摄像头驱动;
(2)对摄像头拍摄到的图片进行灰度化处理;
(3)对0-9进行识别;
(4)识别的结果在屏幕上对应显示。
均已实现
未识别到数字时:
识别数字时:
当数字1位于红色框中,左上角图片中的1背景变黑,数字变白,“1”被选中,与设计目标相符。
识别数字时,为了得到正确稳定的输出,数字必须完全放置于框中,且一个框中只能出现一个数字。
摄像头读取的图像:(根据摄像头的具体情况选择黑底白字或白底黑字)
全部0条评论
快来发表一下你的评论吧 !