一种基于FPGA的实时边缘检测系统技术方案

技术编号:32579545 阅读:29 留言:0更新日期:2022-03-09 17:10
本发明专利技术公开了一种基于FPGA的实时边缘检测系统,包括:OV5640摄像头、图像处理模块、Axi4流视频输入模块、可变地址多址模块、Axi4流视频输出模块、视频时间控制模块、动态时钟模块、DDR3;其中,Ov5640摄像头模块用于实时收集数据;图像处理模块用于对图像数据加工处理;视频时间控制模块和动态时钟模块用于控制各个模块;Axi4流视频输入模块和Axi4流视频输出模块用于将视频流数据转换成Axi4流格式的数据;可变地址多址模块用于读取和传输DDR3中数据。本发明专利技术旨在增强边缘检测系统设计的性能,加快计算速度、降低资源利用率、应用更多实际场景。际场景。际场景。

【技术实现步骤摘要】
一种基于FPGA的实时边缘检测系统


[0001]本专利技术属于视频图像边缘检测的
,具体的说是主要应用于一些对图像帧数要求较高的人脸识别系统、虹膜识别、手势识别、障碍识别,以及无人驾驶、交通道路上车牌识别等场合的一种基于FPGA的实时边缘检测系统。

技术介绍

[0002]图像边缘可代表图像最本质特征,其携带了许多重要的图像信息,在提取图像边缘时,能够在保留大部分图形信息的境况下,有效地减少数据量。而边缘识别也正是图像处理和机械视觉的基础技术,现如今视频图像数据正朝着高分辨率、高帧数的方向发展,图像数据处理量巨大,因此对处理速度的要求非常严格,这样才能满足图像数据传输的实时性。
[0003]边缘是数字图像处理中的重要内容,随着边缘检测技术的发展,在边缘检测精度不断提高的同时程序的复杂性也在不断增加,而边缘检测的很多使用场合都要求具有较高的实时性和较低的功耗。在某些重要的场合,利用软件程序实现边缘检测是以往传统的处理手段,如一般处理器例如单片机、DSP,GPU等大多只能对静态或者帧数要求较低的图像完成图像处理,串行结构处理方式已经不能较好地实现高速以及实时性,由于串行执行的特点会导致运算效率过低,丢帧现象普遍,消耗更多的处理时间,因此很难满足速度、精度的要求。

技术实现思路

[0004]本专利技术为解决上述现有技术中存在的不足之处,提出一种基于FPGA的实时边缘检测系统,以期能实现对任意图片的高速实时处理,满足图像边缘检测处理的实效性和可靠性要求,同时能降低资源的消耗、加快运算效率。
>[0005]本专利技术为解决技术问题采用如下技术方案:
[0006]本专利技术一种基于FPGA的实时边缘检测系统的特点包括:OV5640摄像头模块、OV5640图像获取模块、OV5640配置模块、图像处理模块、Axi4流视频输入模块、可变地址多址模块、Axi4流视频输出模块、数字视频接口模块、视频时间控制模块、动态时钟模块、Axi智能互联模块、HP接口、Axi互联模块、GP接口、HDMI接口、DDR3;其中,所述图像处理模块包括:中值滤波模块、Sobel边缘检测模块、腐蚀膨胀模块;
[0007]所述动态时钟模块用于产生全局时钟以控制其余模块,并产生五倍于全局时钟频率的像素时钟以控制数字视频接口模块;
[0008]在所述全局时钟的控制下,所述Ov5640配置模块用于配置Ov5640摄像头的初始化状态;
[0009]所述Ov5640摄像头实时采集图像数据并将该数据传输至Ov5640图像获取模块;
[0010]所述Ov5640图像获取模块将所接收到的图像数据进行数据位宽的处理,并将处理后的图像数据传输至图像处理模块;
[0011]所述图像处理模块接收所述图像数据,并利用中值滤波模块、Sobel边缘检测模
块、腐蚀膨胀模块分别依次进行中值滤波、Sobel边缘检测、腐蚀膨胀操作,得到处理后的图像数据并传输到Axi4流视频输入模块;
[0012]所述Axi4流视频输入模块接收所述处理后的图像数据,并转换成Axi4流格式的数据后传输至可变地址多址模块中;
[0013]所述可变地址多址模块通过Axi4智能互联模块与HP端口连接,用于高速访问DDR3;同时,所述可变地址多址模块将Axi4流格式的图像数据通过写通道转换成Axi4内存映射格式的图像数据并存储在DDR3中;并从所述DDR3中读取Axi4内存映射格式的图像数据再转换为Axi4流格式的图像数据后传输给所述Axi4流视频输出模块;
[0014]在所述全局时钟的控制下,所述视频时间控制模块产生工作时钟;
[0015]所述Axi4流视频输出模块在所述工作时钟的控制下,将所接收的Axi4流格式的图像数据转换成视频数据格式的图像数据后发送给数字视频接口模块;
[0016]在所述像素时钟的控制下,所述数字视频接口模块将所接收到的视频数据格式的图像数据转换成RGB888数据格式的图像数据并传输至HDMI接口;
[0017]所述HDMI接口用于将RGB888数据格式的图像数据显示到外接的显示屏上;
[0018]所述GP接口用于所述Axi互联模块与外设配置接口的互联,从而依据外设配置接口所连接的显示屏参数对所述动态时钟模块的全局时钟、视频时间控制模块的工作时钟、可变地址多址模块的初始化参数进行配置。
[0019]本专利技术所述的一种基于FPGA的实时边缘检测系统的特点也在于,所述中值滤波模块包括:三个移位寄存器模块、三个排序模块、一个最大值模块、两个中值模块、一个最小值模块;
[0020]在第一个全局时钟时,第一移位寄存器模块进行初始化,令三组图像数据DATA
11
、DATA
12
、DATA
13
的值都为0;第二移位寄存器模块也进行时初始化,令三组图像数据DATA
21
、DATA
22
、DATA
23
的值都为0;第三移位寄存器模块也进行初始化,令三组图像数据DATA
31
、DATA
32
、DATA
33
的值都为0;
[0021]在当前任意第i个全局时钟下,所述第一移位寄存器模块将第一组图像数据DATA
11
传输给第二移位寄存器模块,同时将第i个全局时钟下存储的三组图像数据DATA
11
、DATA
12
、DATA
13
传输给第一排序模块;
[0022]在当前任意第i个全局时钟下,第一移位寄存器模块接收所述Ov5640图像获取模块传输的一组图像数据,并命名为DATA_1,并将DATA
12
赋值给DATA
11
、将DATA
13
赋值给DATA
12
、将DATA_1赋值给DATA
13

[0023]在当前任意第i个全局时钟下,所述第二移位寄存器模块将一组图像数据DATA
21
传输给第三移位寄存器模块,同时将第i个全局时钟下存储的三组图像数据DATA
21
、DATA
22
、DATA
23
传输给第二排序模块;
[0024]在当前任意第i个全局时钟下,所述第二移位寄存器模块接收所述第一移位寄存器模块传输的一组图像数据DATA
11
,并命名为DATA_2,并将DATA
22
赋值给DATA
21
、将DATA
23
赋值给DATA
22
、将DATA_2赋值给DATA
23

[0025]在当前任意第i个全局时钟下,所述第三移位寄存器模块将第i个全局时钟下存储的三组图像数据DATA
31
、DATA
32
、DATA
33
传输给第三排序模块;...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA的实时边缘检测系统,其特征包括:OV5640摄像头模块、OV5640图像获取模块、OV5640配置模块、图像处理模块、Axi4流视频输入模块、可变地址多址模块、Axi4流视频输出模块、数字视频接口模块、视频时间控制模块、动态时钟模块、Axi智能互联模块、HP接口、Axi互联模块、GP接口、HDMI接口、DDR3;其中,所述图像处理模块包括:中值滤波模块、Sobel边缘检测模块、腐蚀膨胀模块;所述动态时钟模块用于产生全局时钟以控制其余模块,并产生五倍于全局时钟频率的像素时钟以控制数字视频接口模块;在所述全局时钟的控制下,所述Ov5640配置模块用于配置Ov5640摄像头的初始化状态;所述Ov5640摄像头实时采集图像数据并将该数据传输至Ov5640图像获取模块;所述Ov5640图像获取模块将所接收到的图像数据进行数据位宽的处理,并将处理后的图像数据传输至图像处理模块;所述图像处理模块接收所述图像数据,并利用中值滤波模块、Sobel边缘检测模块、腐蚀膨胀模块分别依次进行中值滤波、Sobel边缘检测、腐蚀膨胀操作,得到处理后的图像数据并传输到Axi4流视频输入模块;所述Axi4流视频输入模块接收所述处理后的图像数据,并转换成Axi4流格式的数据后传输至可变地址多址模块中;所述可变地址多址模块通过Axi4智能互联模块与HP端口连接,用于高速访问DDR3;同时,所述可变地址多址模块将Axi4流格式的图像数据通过写通道转换成Axi4内存映射格式的图像数据并存储在DDR3中;并从所述DDR3中读取Axi4内存映射格式的图像数据再转换为Axi4流格式的图像数据后传输给所述Axi4流视频输出模块;在所述全局时钟的控制下,所述视频时间控制模块产生工作时钟;所述Axi4流视频输出模块在所述工作时钟的控制下,将所接收的Axi4流格式的图像数据转换成视频数据格式的图像数据后发送给数字视频接口模块;在所述像素时钟的控制下,所述数字视频接口模块将所接收到的视频数据格式的图像数据转换成RGB888数据格式的图像数据并传输至HDMI接口;所述HDMI接口用于将RGB888数据格式的图像数据显示到外接的显示屏上;所述GP接口用于所述Axi互联模块与外设配置接口的互联,从而依据外设配置接口所连接的显示屏参数对所述动态时钟模块的全局时钟、视频时间控制模块的工作时钟、可变地址多址模块的初始化参数进行配置。2.根据权利要求1所述的一种基于FPGA的实时边缘检测系统,其特征是,所述中值滤波模块包括:三个移位寄存器模块、三个排序模块、一个最大值模块、两个中值模块、一个最小值模块;在第一个全局时钟时,第一移位寄存器模块进行初始化,令三组图像数据DATA
11
、DATA
12
、DATA
13
的值都为0;第二移位寄存器模块也进行时初始化,令三组图像数据DATA
21
、DATA
22
、DATA
23
的值都为0;第三移位寄存器模块也进行初始化,令三组图像数据DATA
31
、DATA
32
、DATA
33
的值都为0;在当前任意第i个全局时钟下,所述第一移位寄存器模块将第一组图像数据DATA
11
传输给第二移位寄存器模块,同时将第i个全局时钟下存储的三组图像数据DATA
11
、DATA
12

DATA
13
传输给第一排序模块;在当前任意第i个全局时钟下,第一移位寄存器模块接收所述Ov5640图像获取模块传输的一组图像数据,并命名为DATA_1,并将DATA
12
赋值给DATA
11
、将DATA
13
赋值给DATA
12
、将DATA_1赋值给DATA
13
;在当前任意第i个全局时钟下,所述第二移位寄存器模块将一组图像数据DATA
21
传输给第三移位寄存器模块,同时将第i个全局时钟下存储的三组图像数据DATA
21
、DATA
22
、DATA
23
传输给第二排序模块;在当前任意第i个全局时钟下,所述第二移位寄存器模块接收所述第一移位寄存器模块传输的一组图像数据DATA
11
,并命名为DATA_2,并将DATA
22
赋值给DATA
21
、将DATA
23
赋值给DATA
22
、将DATA_2赋值给DATA
23
;在当前任意第i个全局时钟下,所述第三移位寄存器模块将第i个全局时钟下存储的三组图像数据DATA
31
、DATA
32
、DATA
33
传输给第三排序模块;在当前任意第i个全局时钟下,所述第三移位寄存器模块接收所述第二移位寄存器模块传输的一组图像数据DATA
21
,并命名为DATA_3,将DATA
32
赋值给DATA
31
、将DATA
33
赋值给DATA
32
、将DATA_3赋值给DATA
33
;从而由三个移位寄存器模块中所存储的九组图像数据构成一个三行三列的图像数据矩阵;在当前第i+1个全局时钟下,所述第一排序模块将所述第三移位寄存器模块存储的三组图像数据DATA
11
、DATA
12
、DATA
13
进行排序处理,得到最大值MAX1、中值MID1、最小值MIN1;在当前第i+1个全局时钟下,所述第二排序模块在将所述第二移位寄存器模块...

【专利技术属性】
技术研发人员:杜高明滕佩佚李晓雅张多利李桢旻尹勇生
申请(专利权)人:合肥工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1