CN113744189A - 一种基于fpga的自适应阈值边缘检测系统及方法 - Google Patents
一种基于fpga的自适应阈值边缘检测系统及方法 Download PDFInfo
- Publication number
- CN113744189A CN113744189A CN202110878865.8A CN202110878865A CN113744189A CN 113744189 A CN113744189 A CN 113744189A CN 202110878865 A CN202110878865 A CN 202110878865A CN 113744189 A CN113744189 A CN 113744189A
- Authority
- CN
- China
- Prior art keywords
- image
- module
- component image
- adaptive threshold
- edge detection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000003708 edge detection Methods 0.000 title claims abstract description 51
- 238000012545 processing Methods 0.000 claims abstract description 62
- 230000003044 adaptive effect Effects 0.000 claims abstract description 47
- 238000001914 filtration Methods 0.000 claims abstract description 21
- 238000006243 chemical reaction Methods 0.000 claims abstract description 19
- 238000001514 detection method Methods 0.000 claims abstract description 15
- 238000004806 packaging method and process Methods 0.000 claims abstract description 12
- 230000000877 morphologic effect Effects 0.000 claims description 23
- 239000000872 buffer Substances 0.000 claims description 13
- 230000005540 biological transmission Effects 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000003672 processing method Methods 0.000 claims description 5
- 230000007797 corrosion Effects 0.000 claims description 4
- 238000005260 corrosion Methods 0.000 claims description 4
- 238000012938 design process Methods 0.000 claims description 4
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000005538 encapsulation Methods 0.000 claims description 2
- 230000003139 buffering effect Effects 0.000 claims 1
- 230000001360 synchronised effect Effects 0.000 claims 1
- 230000008859 change Effects 0.000 abstract description 8
- 208000033749 Small cell carcinoma of the bladder Diseases 0.000 abstract 1
- 201000007710 urinary bladder small cell neuroendocrine carcinoma Diseases 0.000 abstract 1
- 238000005516 engineering process Methods 0.000 description 11
- 238000011160 research Methods 0.000 description 7
- 238000011161 development Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 235000020061 kirsch Nutrition 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20024—Filtering details
- G06T2207/20032—Median filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30141—Printed circuit board [PCB]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种基于FPGA的自适应阈值边缘检测系统及方法,包括图像传感器单元、FPGA硬件处理平台,FPGA硬件处理平台包括数据转换模块、SCCB协议电路、格式转换模块、图像滤波模块、自适应阈值模块、边缘检测模块、形态学处理开操作模块、SDRAM缓存模块、图像数据封装模块,将图像传感器单元采集到的数字图像传输到FPGA硬件处理平台,经过灰度格式转化及中值滤波处理后,采用自适应阈值的8个方向Sobel算子分离出图像的边缘信息,实现阈值随着灰度级变化的自适应变化,为了提高边缘信息,增加了双阈值控制的方法。本发明不仅检测精确度高,而且实时性好。
Description
技术领域
本发明涉及数字图像处理技术,具体涉及一种基于FPGA的自适应阈值边缘检测系统及方法。
背景技术
近年来,随着机器视觉技术的迅速发展,使得其在运动分析、智能控制、人机交互等领域有着潜在的应用研究价值。在机器视觉技术中,运动目标检测问题的研究一直是研究的热点和难点。目前,运动目标检测技术主要集中在基于PC机、DSP等传统技术和基于现场可编程门阵列(Field Programmable Gate Array,FPGA)硬件平台技术等。其中,基于PC机的平台技术中,由于其体积较大、携带不便等缺点,使得该技术不能在如无人机侦查等场合应用。基于DSP平台技术中,只能处理某些特定的图像方法,不能实现实时图像信息的采集与处理,若利用多个DSP芯片并行运算实现快速处理,则大大提高了系统的成本。由于具有处理速度快、可靠性强等优点,因此,利用FPGA对实时图像进行硬件处理逐渐成为发展趋势。所以,研究人员做了大量基于FPGA相关的研究工作,并取得了较好的研究进展。2017年,徐紫洋等研究人员提出了一种基于FPGA和Kirsch的自适应阈值彩色图像边缘检测方法,申请号201710269426.0,该方法可以弥补以往技术对图像处理实时性不足的缺点,对边缘的检测更加灵活,有助于提高物体边缘检测的准确性。同年,董恩增等研究人员提出了一种基于FPGA的降噪边缘检测方法,申请号201710729198.0,将待处理图像转化成mif格式文件,并存入FPGA中的单口ROM IP核,利用地址计数将图像数据从ROM中读出,将图像与5×5的高斯拉普拉斯算子进行卷积操作,利用四个方向sobel算子的模板计算7×7阵列中的中心点处的四个方向的最大一阶偏导数,LOG算子卷积值阈值化,找出可疑零交叉点和非零交叉点,对于可疑零交叉点,当其与中心点处梯度法向方向相一致时认为此点为真零交叉点,否则为假零交叉点;对真零交叉点与假零交叉点,分别进行梯度方向上的膨胀与腐蚀操作;对于非零交叉点,进行腐蚀膨胀的开运算,对图像去噪,获得图像的边缘。
通过研究人员的不断努力,机器视觉技术中的图像处理的实时性、准确性得到了较大幅度的提高。但是,随着人工智能、智能控制技术的不断发展,高分辨率的图像信号的实时处理难度越来越大,精度要求也越来越高。
发明内容
发明目的:为了解决跟踪系统中存在的精确度低、实时性差、性价比低等问题,本发明提供一种基于FPGA的自适应阈值边缘检测系统及方法。本发明在现有研究的基础上,研究改进了Sobel边缘检测方法,设计了自适应阈值的边缘检测方法,利用FPGA并行处理的特点实现图像信息的实时检测,通过以太网接口进行存储。
技术方案:为实现上述目的,本发明采用的技术方案为:
一种基于FPGA的自适应阈值边缘检测系统,包括图像传感器单元、FPGA硬件处理平台,FPGA硬件处理平台包括数据转换模块、SCCB协议电路、格式转换模块、图像滤波模块、自适应阈值模块、边缘检测模块、形态学处理开操作模块、SDRAM缓存模块、图像数据封装模块,图像传感器单元与FPGA硬件处理平台中的图像传感器驱动电路连接,FPGA硬件处理平台中的SCCB协议电路与图像传感器单元相互连接,SDRAM外设单元与FPGA硬件处理平台中的SDRAM控制器相互连接,通过开发板上的以太网接口发送给上位机存储。本发明将图像传感器单元采集到的数字图像传输到FPGA硬件处理平台,经过灰度格式转化及中值滤波处理后,采用自适应阈值的8个方向Sobel算子分离出图像的边缘信息,实现阈值随着灰度级变化的自适应变化,为了提高边缘信息,增加了双阈值控制的方法。由于时钟的不匹配,先把处理后的图像数据经过SDRAM缓存,然后再通过图像数据封装模块从SDRAM读写控制模块中读出数据,封装成以太网发送模块的数据格式,包括添加图像的帧头,最后由以太网发送模块发送封装后的图像数据,其发送的CRC校验值由CRC32校验模块负责计算,其中:
所述图像传感器单元用于采集图像,并将采集的图像发送给格式转换模块。
所述格式转换模块用于将采集的图像分成灰度图像YCbCr,将Y分量图像、Cb分量图像、Cr分量图像分别提取出来,将提取出的Y分量图像发送给图像滤波模块,将提取出的Cb分量图像发送给中SDRAM缓存模块,将提取出的Cr分量图像发送给中SDRAM缓存模块。
所述图像滤波模块用于根据Y分量图像进行去噪处理,将获得的去噪处理后的Y分量图像发送给自适应阈值模块和边缘检测模块。
所述自适应阈值模块用于根据去噪处理后的Y分量图像计算出自适应阈值,并将计算得到的自适应阈值发送给边缘检测模块。
所述边缘检测模块用于对去噪处理后的Y分量图像进行边缘检测,计算出中心像素的梯度值。当中心像素的梯度值大于自适应阈值,则输出1。当中心像素的梯度值小于自适应阈值的一半,则输出0。当中心点像素的梯度值在自适应阈值的一半和自适应阈值之间,则需要看前一个中心像素点是否为边缘,若是,则输出1,反之,输出0,得到边缘图像,并将得到的边缘图像发送给形态学处理开操作模块。
所述形态学处理开操作模块用于根据边缘图像进行形态学处理,获得形态学处理后的Y分量图像,并将获得的形态学处理后的Y分量图像发送给SDRAM缓存模块。
所述SDRAM缓存模块用于将Cb分量图像、Cr分量图像、形态学处理后的Y分量图像进行缓存延时处理。
所述图像数据封装模块用于读取SDRAM缓存模块中的Cb分量图像、Cr分量图像、形态学处理后的Y分量图像,并将Cb分量图像、Cr分量图像、形态学处理后的Y分量图像进行封装成32位图像数据。
优选的:所述FPGA硬件处理平台包括UDP顶层模块,所述UDP顶层模块用于将32位图像数据添加图像数据的帧头,得到带有帧头的32位图像数据。
优选的:包括以太网传输单元,所述以太网传输单元用于将带有帧头的32位图像数据发送给上位机存储。
一种基于FPGA的自适应阈值边缘检测方法,包括以下步骤:
步骤1、图像传感器单元传送来的待测图像流经灰度格式转换方法分成灰度图像YCbCr,将Y分量图像、Cb分量图像、Cr分量图像分别提取出来。
步骤2、采用中值滤波方法对图像中的灰度图像中的Y分量图像进行去噪处理。
步骤3、利用自适应阈值方法根据去噪处理后的Y分量图像计算出自适应阈值。采用Sobel边缘检测方法对去噪处理后的Y分量图像进行边缘检测,计算出中心像素的梯度值。当中心像素的梯度值大于自适应阈值,则输出1。当中心像素的梯度值小于自适应阈值的一半,则输出0。当中心点像素的梯度值在自适应阈值的一半和自适应阈值之间,则需要看前一个中心像素点是否为边缘,若是,则输出1,反之,输出0,得到边缘图像。
步骤4、边缘图像经形态学处理方法处理,获得形态学处理后的Y分量图像。
步骤5、将步骤1中未经处理的Cb分量图像、Cr分量图像以及形态学处理后的Y分量图像经过SDRAM缓存模块缓存延时处理。
步骤6、图像数据封装模块负责从SDRAM缓存模块中读取16位的Cb分量图像、Cr分量图像以及形态学处理后的Y分量图像,并转换成以太网发送模块方便调用的32位数据,通过UDP顶层模块添加图像数据的帧头,得到带有帧头的32位图像数据。
步骤7、将步骤6得到的带有帧头的32位图像数据通过以太网发送协议发送给上位机存储。
优选的:所述步骤2中的中值滤波方法为:选取3×3的卷积核做中值滤波处理,在3×3窗口图像数据中获取中值。在逻辑设计过程中,采用两个行缓存来暂存前两行数据,使用3×3窗口获取邻域中的9个像素,使用3×3窗口获取邻域中的9个像素的排序比较方法为:(1)对每行的3个像素进行排序,得到最大值、中值、最小值。(2)比较3行中每行的最大值,获取3个最大值中的最小值。(3)比较3行中每行的最小值,获取3个最小值中的最大值。(4)比较3行中每行的中值,获取3个中值中的中间值。
优选的:步骤3中利用自适应阈值方法根据去噪处理后的Y分量图像计算出自适应阈值的方法为:(1)采用两个行缓存来进行延迟,得到滑动的3×3窗口模板。(2)每行通过3个D触发器进行延迟,使3×3滑动模板中的9个数据同时输出。(3)对得到的9个数据通过加法器求出窗口内的总和。(4)把窗口内的总和利用除法器得到自适应阈值。
优选的:步骤3中Sobel边缘检测方法包括八方向Sobel算子,八方向Sobel算子包括45°方向上算子和135°方向上算子,Sobel边缘检测方法采用局部3×3模板算子和待测图像进行卷积计算获得梯度。
优选的:步骤4中形态学处理方法为:采用先腐蚀后膨胀的开运算。
优选的:步骤6中添加图像数据的帧头的方法为:把图像帧头设置为{32'hf0_5a_a5_0f}。
优选的:以太网发送协议为UDP协议。
本发明相比现有技术,具有以下有益效果:
本发明采用8个方向的Sobel算子分离出图像的边缘信息,通过计算边缘检测的自适应阈值,实现了阈值随着灰度级变化的自适应变化并,采用双阈值判断的方式,使边缘信息更加精确,利用基于FPGA硬件平台系统,完成实时图像数据的采集、检测及显示等功能,实现了复杂图像信息的自适应阈值Sobel边缘检测,该方法可以快速而准确地检测到图像的边缘信息。
附图说明
图1为本发明装置的结构示意框图。
图2为本发明的八方向Sobel算子模型。
图3为本发明的实施例示意图。
图4为本发明的实施例自适应阈值计算示意图。
图5为本发明的实施例以太网通信系统框图。
图6为本发明的实施例中边缘检测结果示意图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
一种基于FPGA的自适应阈值边缘检测方法,如图1所示,包括以下步骤:
步骤1、图像传感器单元传送来的待测图像流经灰度格式转换方法分成灰度图像YCbCr,将Y分量图像、Cb分量图像、Cr分量图像分别提取出来。
步骤2、采用中值滤波方法对图像中的灰度图像中的Y分量图像进行去噪处理。
中值滤波方法为:选取3×3的卷积核做中值滤波处理,在3×3窗口图像数据中获取中值。在逻辑设计过程中,采用两个行缓存来暂存前两行数据,使用3×3窗口获取邻域中的9个像素,使用3×3窗口获取邻域中的9个像素的排序比较方法为:(1)对每行的3个像素进行排序,得到最大值、中值、最小值。(2)比较3行中每行的最大值,获取3个最大值中的最小值。(3)比较3行中每行的最小值,获取3个最小值中的最大值。(4)比较3行中每行的中值,获取3个中值中的中间值。
步骤3、利用自适应阈值方法根据去噪处理后的Y分量图像计算出自适应阈值。采用Sobel边缘检测方法对去噪处理后的Y分量图像进行边缘检测,计算出中心像素的梯度值。当中心像素的梯度值大于自适应阈值,则输出1。当中心像素的梯度值小于自适应阈值的一半,则输出0。当中心点像素的梯度值在自适应阈值的一半和自适应阈值之间,则需要看前一个中心像素点是否为边缘,若是,则输出1,反之,输出0,得到边缘图像。
利用自适应阈值方法根据去噪处理后的Y分量图像计算出自适应阈值的方法为:(1)采用两个行缓存来进行延迟,得到滑动的3×3窗口模板。(2)每行通过3个D触发器进行延迟,使3×3滑动模板中的9个数据同时输出。(3)对得到的9个数据通过加法器求出窗口内的总和。(4)把窗口内的总和利用除法器得到自适应阈值。
如图2所示,Sobel边缘检测方法采用八方向Sobel算子,在传统的Sobel算子的基础上增加45°和135°方向上算子,Sobel边缘检测方法采用局部3×3模板算子和待测图像进行卷积计算获得梯度。
步骤4、边缘图像经形态学处理方法处理,采用先腐蚀后膨胀的开运算获得形态学处理后的Y分量图像。
步骤5、将步骤1中未经处理的Cb分量图像、Cr分量图像以及形态学处理后的Y分量图像经过SDRAM缓存模块缓存延时处理。
步骤6、图像数据封装模块负责从SDRAM缓存模块中读取16位的Cb分量图像、Cr分量图像以及形态学处理后的Y分量图像,并转换成以太网发送模块方便调用的32位数据,通过UDP顶层模块添加图像数据的帧头,得到带有帧头的32位图像数据。为了避免把图像数据错当成图像帧头,在程序中把把图像帧头设置为{32'hf0_5a_a5_0f}。
步骤7、将步骤6得到的带有帧头的32位图像数据通过以UDP协议发送给上位机存储。
一种基于FPGA的自适应阈值边缘检测系统,包括图像传感器单元、FPGA硬件处理平台、以太网传输单元,FPGA硬件处理平台包括数据转换模块、SCCB协议电路(总线模块)、格式转换模块、图像滤波模块、自适应阈值模块、边缘检测模块、形态学处理开操作模块、SDRAM缓存模块、图像数据封装模块、UDP顶层模块,其中:
所述图像传感器单元用于采集图像,并将采集的图像发送给格式转换模块。
所述格式转换模块用于将采集的图像分成灰度图像YCbCr,将Y分量图像、Cb分量图像、Cr分量图像分别提取出来,将提取出的Y分量图像发送给图像滤波模块,将提取出的Cb分量图像发送给中SDRAM缓存模块,将提取出的Cr分量图像发送给中SDRAM缓存模块。
所述图像滤波模块用于根据Y分量图像进行去噪处理,将获得的去噪处理后的Y分量图像发送给自适应阈值模块和边缘检测模块。
所述自适应阈值模块用于根据去噪处理后的Y分量图像计算出自适应阈值,并将计算得到的自适应阈值发送给边缘检测模块。
所述边缘检测模块用于对去噪处理后的Y分量图像进行边缘检测,计算出中心像素的梯度值。当中心像素的梯度值大于自适应阈值,则输出1。当中心像素的梯度值小于自适应阈值的一半,则输出0。当中心点像素的梯度值在自适应阈值的一半和自适应阈值之间,则需要看前一个中心像素点是否为边缘,若是,则输出1,反之,输出0,得到边缘图像,并将得到的边缘图像发送给形态学处理开操作模块。
所述形态学处理开操作模块用于根据边缘图像进行形态学处理,获得形态学处理后的Y分量图像,并将获得的形态学处理后的Y分量图像发送给SDRAM缓存模块。
所述SDRAM缓存模块用于将Cb分量图像、Cr分量图像、形态学处理后的Y分量图像进行缓存延时处理。
所述图像数据封装模块用于读取SDRAM缓存模块中的Cb分量图像、Cr分量图像、形态学处理后的Y分量图像,并将Cb分量图像、Cr分量图像、形态学处理后的Y分量图像进行封装成32位图像数据。
所述UDP顶层模块用于将32位图像数据添加图像数据的帧头,得到带有帧头的32位图像数据。
所述以太网传输单元用于将带有帧头的32位图像数据发送给上位机存储。
如图3所示,系统采用的是Altera公司的Cyclone系列EP4CE10F17C8N芯片为核心设计的FPGA开发板,开发环境为Quartus II 13.1,使用硬件描述语言Verilog HDL。从图中可以看出,实验系统主要包括图像传感器单元、图像检测单元、图像缓存单元以及以太网发送单元。图像传感器单元中的传感器使用的是OV5640摄像头。在设计过程中,采用串行控制总线协议(Serial Camera Control Bus SCCB)对图像传感器进行控制,待测图像的分辨率是通过SCCB修改摄像头的寄存器地址来实现的。
图像缓存单元的缓存组件主要分为输入及输出的先进先出(FIFO)模块和随机存取存储器(SDRAM)缓存模块。在对所采集的视频实行一系列的方法处理操作的时候,需要大量的存储空间。而通常FPGA的片上随机存取存储器(RAM)资源有限,因此,需要使用SDRAM作为外部数据缓存模块。然而,当大量的图像数据在FPGA与SDRAM之间互相传输时,会产生一些跨时钟的问题,此时,设计读写FIFO模块就很有必要。SDRAM读写控制器模块负责驱动SDRAM片外存储器,缓存图像传感器输出的图像数据。该模块将SDRAM复杂的读写操作封装成类似FIFO的用户接口,非常方便用户的使用。
为了提高待测图像边缘信息的准确度,在传统的Sobel算子的基础上增加45°和135°方向上算子,该方法采用局部3×3模板算子和待测图像进行卷积计算获得梯度,改进的Sobel算子模型如图3所示。
为了解决边缘检测阈值由人工经验选定,缺乏自适应性,无法根据外部环境的变化而变化,针对不同光线对图像处理所造成的一定影响,把传统的固定阈值改成了自适应阈值,该方法是计算滑动3×3窗口内像素的总和的均值作为自适应阈值,获取均值流程如图4所示。
如图5所示,UDP顶层模块用于将32位图像数据添加图像数据的帧头,以太网传输单元用于将带有帧头的32位图像数据发送给上位机存储。
为了分析本文设计的自适应阈值的检测方法,在增加光照条件情况下,设定固定阈值和采用自适应阈值的方法对待测图像进行了边缘检测,检测结果如图6所示,图6(a)为待检测的原始图像,图6(b)是经过本方法的检测结果,从图中可以很明显的看出,消除了大量的噪声干扰,改善了边缘检测后图片的质量,能够更灵活得适应自然环境的变化。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种基于FPGA的自适应阈值边缘检测系统,其特征在于:包括图像传感器单元、FPGA硬件处理平台,FPGA硬件处理平台包括数据转换模块、格式转换模块、图像滤波模块、自适应阈值模块、边缘检测模块、形态学处理开操作模块、SDRAM缓存模块、图像数据封装模块,其中:
所述图像传感器单元用于采集图像,并将采集的图像发送给格式转换模块;
所述格式转换模块用于将采集的图像分成灰度图像YCbCr,将Y分量图像、Cb分量图像、Cr分量图像分别提取出来,将提取出的Y分量图像发送给图像滤波模块,将提取出的Cb分量图像发送给中SDRAM缓存模块,将提取出的Cr分量图像发送给中SDRAM缓存模块;
所述图像滤波模块用于根据Y分量图像进行去噪处理,将获得的去噪处理后的Y分量图像发送给自适应阈值模块和边缘检测模块;
所述自适应阈值模块用于根据去噪处理后的Y分量图像计算出自适应阈值,并将计算得到的自适应阈值发送给边缘检测模块;
所述边缘检测模块用于对去噪处理后的Y分量图像进行边缘检测,计算出中心像素的梯度值;当中心像素的梯度值大于自适应阈值,则输出1;当中心像素的梯度值小于自适应阈值的一半,则输出0;当中心点像素的梯度值在自适应阈值的一半和自适应阈值之间,则需要看前一个中心像素点是否为边缘,若是,则输出1,反之,输出0,得到边缘图像,并将得到的边缘图像发送给形态学处理开操作模块;
所述形态学处理开操作模块用于根据边缘图像进行形态学处理,获得形态学处理后的Y分量图像,并将获得的形态学处理后的Y分量图像发送给SDRAM缓存模块;
所述SDRAM缓存模块用于将Cb分量图像、Cr分量图像、形态学处理后的Y分量图像进行缓存延时处理;
所述图像数据封装模块用于读取SDRAM缓存模块中的Cb分量图像、Cr分量图像、形态学处理后的Y分量图像,并将Cb分量图像、Cr分量图像、形态学处理后的Y分量图像进行封装成32位图像数据。
2.根据权利要求1所述基于FPGA的自适应阈值边缘检测系统,其特征在于:所述FPGA硬件处理平台包括UDP顶层模块,所述UDP顶层模块用于将32位图像数据添加图像数据的帧头,得到带有帧头的32位图像数据。
3.根据权利要求2所述基于FPGA的自适应阈值边缘检测系统,其特征在于:包括以太网传输单元,所述以太网传输单元用于将带有帧头的32位图像数据发送给上位机存储。
4.一种权利要求1所述基于FPGA的自适应阈值边缘检测系统的检测方法,其特征在于,包括以下步骤:
步骤1、图像传感器单元传送来的待测图像流经灰度格式转换方法分成灰度图像YCbCr,将Y分量图像、Cb分量图像、Cr分量图像分别提取出来;
步骤2、采用中值滤波方法对图像中的灰度图像中的Y分量图像进行去噪处理;
步骤3、利用自适应阈值方法根据去噪处理后的Y分量图像计算出自适应阈值;采用Sobel边缘检测方法对去噪处理后的Y分量图像进行边缘检测,计算出中心像素的梯度值;当中心像素的梯度值大于自适应阈值,则输出1;当中心像素的梯度值小于自适应阈值的一半,则输出0;当中心点像素的梯度值在自适应阈值的一半和自适应阈值之间,则需要看前一个中心像素点是否为边缘,若是,则输出1,反之,输出0,得到边缘图像;
步骤4、边缘图像经形态学处理方法处理,获得形态学处理后的Y分量图像;
步骤5、将步骤1中未经处理的Cb分量图像、Cr分量图像以及形态学处理后的Y分量图像经过SDRAM缓存模块缓存延时处理;
步骤6、图像数据封装模块负责从SDRAM缓存模块中读取16位的Cb分量图像、Cr分量图像以及形态学处理后的Y分量图像,并转换成以太网发送模块方便调用的32位数据,通过UDP顶层模块添加图像数据的帧头,得到带有帧头的32位图像数据;
步骤7、将步骤6得到的带有帧头的32位图像数据通过以太网发送协议发送给上位机存储。
5.根据权利要求4所述检测方法,其特征在于:所述步骤2中的中值滤波方法为:选取3×3的卷积核做中值滤波处理,在3×3窗口图像数据中获取中值;在逻辑设计过程中,采用两个行缓存来暂存前两行数据,使用3×3窗口获取邻域中的9个像素,使用3×3窗口获取邻域中的9个像素的排序比较方法为:(1)对每行的3个像素进行排序,得到最大值、中值、最小值;(2)比较3行中每行的最大值,获取3个最大值中的最小值;(3)比较3行中每行的最小值,获取3个最小值中的最大值;(4)比较3行中每行的中值,获取3个中值中的中间值。
6.根据权利要求5所述检测方法,其特征在于:步骤3中利用自适应阈值方法根据去噪处理后的Y分量图像计算出自适应阈值的方法为:(1)采用两个行缓存来进行延迟,得到滑动的3×3窗口模板;(2)每行通过3个D触发器进行延迟,使3×3滑动模板中的9个数据同时输出;(3)对得到的9个数据通过加法器求出窗口内的总和;(4)把窗口内的总和利用除法器得到自适应阈值。
7.根据权利要求6所述检测方法,其特征在于:步骤3中Sobel边缘检测方法包括八方向Sobel算子,八方向Sobel算子包括45°方向上算子和135°方向上算子,Sobel边缘检测方法采用局部3×3模板算子和待测图像进行卷积计算获得梯度。
8.根据权利要求7所述检测方法,其特征在于:步骤4中形态学处理方法为:采用先腐蚀后膨胀的开运算。
9.根据权利要求8所述检测方法,其特征在于:步骤6中添加图像数据的帧头的方法为:把图像帧头设置为{32'hf0_5a_a5_0f}。
10.根据权利要求9所述检测方法,其特征在于:以太网发送协议为UDP协议。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110878865.8A CN113744189A (zh) | 2021-08-02 | 2021-08-02 | 一种基于fpga的自适应阈值边缘检测系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110878865.8A CN113744189A (zh) | 2021-08-02 | 2021-08-02 | 一种基于fpga的自适应阈值边缘检测系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113744189A true CN113744189A (zh) | 2021-12-03 |
Family
ID=78729810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110878865.8A Withdrawn CN113744189A (zh) | 2021-08-02 | 2021-08-02 | 一种基于fpga的自适应阈值边缘检测系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113744189A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114155222A (zh) * | 2021-12-06 | 2022-03-08 | 合肥工业大学 | 一种基于fpga的实时边缘检测系统 |
CN114581472A (zh) * | 2022-03-11 | 2022-06-03 | 合肥御微半导体技术有限公司 | 一种图像边缘检测方法、装置、电子设备及存储介质 |
CN118379315A (zh) * | 2024-04-23 | 2024-07-23 | 盐城工学院 | 一种基于FPGA的8方向Sobel边缘检测系统 |
-
2021
- 2021-08-02 CN CN202110878865.8A patent/CN113744189A/zh not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114155222A (zh) * | 2021-12-06 | 2022-03-08 | 合肥工业大学 | 一种基于fpga的实时边缘检测系统 |
CN114155222B (zh) * | 2021-12-06 | 2024-02-20 | 合肥工业大学 | 一种基于fpga的实时边缘检测系统 |
CN114581472A (zh) * | 2022-03-11 | 2022-06-03 | 合肥御微半导体技术有限公司 | 一种图像边缘检测方法、装置、电子设备及存储介质 |
CN118379315A (zh) * | 2024-04-23 | 2024-07-23 | 盐城工学院 | 一种基于FPGA的8方向Sobel边缘检测系统 |
CN118379315B (zh) * | 2024-04-23 | 2024-09-20 | 盐城工学院 | 一种基于FPGA的8方向Sobel边缘检测系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113744189A (zh) | 一种基于fpga的自适应阈值边缘检测系统及方法 | |
CN110717852A (zh) | 一种基于fpga的田间视频图像实时分割系统及方法 | |
Ma et al. | Optimised single pass connected components analysis | |
JP3853034B2 (ja) | 物体の境界決定方法および装置並びに物体の境界決定プログラムを記録した記録媒体 | |
TWI749364B (zh) | 移動偵測方法及移動偵測系統 | |
CN108287336A (zh) | 一种面阵盖革apd激光雷达距离像强度像生成系统 | |
CN109242776B (zh) | 一种基于视觉系统的双车道线检测方法 | |
CN111340835A (zh) | 基于fpga的视频图像边缘检测系统 | |
CN206564662U (zh) | 一种视频质量检测系统 | |
CN111830039A (zh) | 一种智能化的产品质量检测方法及装置 | |
Wei et al. | FPGA Implementation of Hardware Accelerator for Real-time Video Image Edge Detection | |
CN202261654U (zh) | Fpga视频图像存储与处理的装置 | |
Tan et al. | The research of implementation method of canny edge detection of video on FPGA | |
He et al. | FPGA-based high definition image processing system | |
Ratnayake et al. | An FPGA-based implementation of spatio-temporal object segmentation | |
CN210721562U (zh) | 一种基于PYNQ-z2的运动目标检测系统 | |
Wang et al. | Multi-Object Tracking in the Dark | |
Zhang et al. | An ultra-high-speed hardware accelerator for image reconstruction and stereo rectification on event-based camera | |
CN106373113A (zh) | 一种超高清超广角鱼眼图像质量自动检测的方法及装置 | |
Chen | Design of image recognition system based on FPGA | |
CN107623834A (zh) | 一种基于fpga的运动目标检测系统 | |
CN207037747U (zh) | 一种跟踪瞄准模拟器 | |
Bilal et al. | Rapid prototyping of image contrast enhancement hardware accelerator on FPGAs using high-level synthesis tools | |
Sangiovanni et al. | Hardware-oriented multi-exposure fusion approach for real-time video processing on FPGA | |
CN205005137U (zh) | Fpga的实时图像采集和去噪处理的装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20211203 |