- 9
- 0
- 约 5页
- 2017-09-03 发布于天津
- 举报
图像边缘检测电路的fpga设计-云南大学电子信息技术试验教学中心
作者:李同宇,云南大学信息学院2006 级电子信息工程专业
电话 E_mail : rwp3053@
基金项目:全国大学生创新性实验项目
图像边缘检测电路的FPGA 设计
李同宇 任文平 贾赞
(云南大学,信息学院)
摘要:本文实现了基于FPGA 的SOBEL 算子图像边缘检测电路的设计。利用FPGA 的流水
线结构和并行阵列结构,由时序电路流水线读取数据,利用单行缓存并行输出产生 SOBEL
算子所需的3 3 窗口数据,用加法运算替代乘法运算,实现 SOBEL 算子图像边缘检测系统
的FPGA 硬件电路构建。
关键词:FPGA;边缘检测;SOBEL
1.引言
在图像处理中,边缘检测功能的实现是其重要的组成部分,边缘检测的实
现平台软硬件均可。用软件对图像进行处理可以降低成本,而且操作较为灵活,
但是软件不支持并行运算,处理速度较慢,不利于图像的实时处理;用硬件对图
像进行处理时,专用集成电路虽然支持并行处理,可以提高处理速度,但集成电
路的开发成本较高、开发周期较长、修改自由度受限。本文着重讨论基于 FPGA
技术的边缘检测电路的实现,采用 FPGA 器件实现系统设计是一种纯硬件的解
决方案,FPGA 具有并行结构和流水线结构的天然优势,硬件实现满足实时性要
求,在线编程重构满足灵活性要求,它的处理速度比MCU 和DSP 大两个数量级。
该方案可以使系统具备较高的实时性,能够比较好地解决软件编程方式及非
并行运算所导致的处理速度慢的问题。
2.边缘检测电路设计方案
基于FPGA 的图像边缘检测电路框图如图1 所示。其中FPGA 中包含了四
个功能模块电路的设计:
图1 边缘检测电路
(1)SDRAM 的控制模块:预处理的图像存在SDRAM 存储器中,通过SDRAM 的
控制模块,将图像信息读出并进行相应的处理,提供给下一个电路模块使用;
(2)控制模块:构建SOBEL 算法所需的处理窗口数据;
(3)算法模块:SOBEL 算法实现电路,依据算法关系进行边缘检测;
(4)显示控制电路:根据VGA 显示屏的特点,产生时序驱动信号控制图像数
据显示。
3.SOBEL 算子介绍
实现边缘检测功能的传统算子有ROBERT,SOBEL,PREWITT,KIRSCH 和GAUSS
等。由于SOBEL 算法具有较好的检测效果,本文着重讨论基于FPGA 技术的SOBEL
算法的边缘检测电路的实现。
SOBEL 算子,又叫索贝尔算子,是图像处理中的算子之一,主要用作边缘检
测。它是一个离散性差分算子,用来运算图像亮度函数的梯度近似值。在图像的
任何一点使用此算子,将会产生对应的梯度矢量或是其法矢量,。该算子包含两
组3×3 窗口数据,分别为横向模版窗口数据及纵向模版窗口数据,将之与图像
作平面卷积,即可分别得出横向及纵向的亮度差分近似值。
A 代表3×3 窗口所需的像素阵列,其中Q11—Q3 3 为相邻的 9 个像素,SX
及S 分别代表经横向及纵向梯度,可知:
Y
1 0 1 1 2 1 Q11 Q12 Q13
Sx 2 0 2 * A S y 0 0 0 * A A=Q21 Q22 Q23 (1)
1 0 1 1 2 1 Q31 Q32 Q33
图像的每一个像素的横向及纵向梯度近似值可用以下的公式结合,来计
算梯度G 的大小。
原创力文档

文档评论(0)