基于双阈值的图像边缘实时检测系统
2019-09-10孙晓杰
孙晓杰,梁 义
(伊犁师范大学电子与信息工程分院,新疆伊宁 835000)
0 引言
图像边缘检测作为图像分割的重要分支,提取出有效的边缘信息为后续分析提供基础,但快速准确检测是边缘特征提取的难点问题[1]。单阈值法提取的边缘信息存在断点、特征不准确等问题,为实现图像边缘实时检测,采用双阈值法快速提取图像边缘信息并应用到实时检测系统。
1 图像边缘检测系统设计
高阈值要求严格,会求出很少的图像边缘信息,但高阈值边缘都有效。低阈值要求宽松,求出很多边缘信息,主要包括无效边缘和连续边缘信息[2]。具体检测原理如图1所示,先用高阈值求出有效边缘,Canny边缘检测方法需要边缘特征连在一起,但高阈值求出的边缘特征断断续续[3],再利用低阈值求出的边缘信息,把高低阈值边缘连在一起,未使用的低阈值边缘信息被筛选掉。高低阈值的区别:高阈值是将物体轮廓与背景区分开,可以调整目标与背景的对比度;低阈值用来平滑边缘的轮廓,当阈值设置太高时边缘轮廓会不连续或者不够平滑,通过低阈值平滑轮廓线或连接不连续边缘。
图1 双阈值检测原理
图像边缘实时检测分为软件和硬件系统,具体功能如图2所示。软件系统用于提取图像边缘特征,主要包括帧图像、双阈值和边缘检测等模块,本文利用双阈值提取边缘信息并用Canny方法拼接边缘[4]。硬件系统包括视频接口、STM32和TMS320部分,STM32部分用于图像数据的接收、存储和显示,TMS320电路用于运行双阈值、边缘检测等程序。
图2 图像边缘实时检测系统
2 图像边缘检测方法
2.1 双阈值检测方法设计
利用整体图片的颜色特性进行分割,首先将输入图像按照模板进行颜色归一化,根据双阈值算法标准,对采集到的图像进行边缘判断[5],按照设定要求筛选出符合要求的像素点。先选择大小为5×5的梯度模板,利用双阈值法对提取的图像数据进行比较,采用数据选择器选择出符合要求的结果,算法具体实施过程如下。
(1)采集5个点像素和过高阈值个数:
(1)
式中:(i,j)为像素点;w为照片参数;x为定义参数。
(2)对采集的5点按照像素点灰度值数据排序,对数据进行像素定级:
x1 (2) (3)利用双阈值选择符合要求的像素; (4) 计算像素点的能量值: (3) 式中:E为能量值;P为像素点级别。 (5)依据能量值判断图像边缘信息,如果大于设定小阈值则认定为边缘信号,小于阈值则为背景图片。 Canny算子具有信噪比高、定位精度准确和单边缘响应快的准则,它是一阶传统微分中边缘检测效果最好的算子[6],比Prewitt 算子、Sobel算子的去噪能力强。 根据对信噪比与定位乘积进行测度,得到最优化逼近算子即Canny边缘检测算子,具体实施过程如图3所示。 边缘检测系统的主要任务是采集图像,并利用硬件运行双阈值等软件程序,具体硬件检测系统组成如图4所示。 图3 程序编写流程 图4 硬件系统整体结构 边缘检测硬件系统主要分为图像采集和边缘检测两个部分,图像采集是以摄像头OV7670为基础读取图像,以STM32为核心采集、存储和显示图像数据[7]。DSP处理芯片TMS320为核心运行程序,处理程序以双阈值特征提取程序和边缘检测程序为主,完成边缘特征的提取和拼接。 CCD采集图像后可以直接传送给STM32模块进行特征数据提取,但为了降低CPU计算传输压力采用外置视频解码芯片GV7700进行数据格式转换[8],经过视频解码后原始图像质量可以得到提高,同时图像识别算法也会得到简化。视频数据采集整体电路如图5所示,高性能解码芯片GV7700可以通过SPI总线进行控制,视频识别格式可以通过编程进行控制,内核低压电源1.8 V供电可以保证高速采集转换过程中电路芯片处于低功耗模式[9]。当五针视频输入到SDO接口过程中利用电感和电容滤除信号中交流成分,然后芯片把直流成分和SDO接收到的小幅度交流成分进行合成。视频解码芯片工作在27 Mbps高速过程中也可以保持低功耗,且视频输入输出都通过20位并行数据总线进行传输。 图5 视频数据采集电路 在工业应用中一般内存处理电路即可满足功能要求,但数据处理速度要求比较高的场所需要高速存储电路。 图像高速存储电路如图6所示。数据传输信号连接到MT47H64的DDR引脚,在高速传输和工业干扰环境下为提高信号抗干扰能力[10],参考引脚VREF并联一个0.1 μF去耦电容,在电源部分并联0.1 μF电容和22 μF电解电容[11],这样芯片可以很好地兼容+1.8 V电源。 图6 图像高速存储电路 每种场景对阈值参数的要求都不相同,需要根据图片边缘的灰度变化、特征像素点数等信息选择阈值参数[12]。本文以梯度变换的树形灰度图为例,利用摄像头拍摄场景照片,选取Canny检测方法的合适双阈值,分别利用变换高阈值和低阈值,根据图像边缘检测结果确定参数,不同低阈值的检测结果如图7所示,不同高阈值的检测结果如图8所示。 根据两组不同参数确定边缘图形,检测结果分为原图、不同低阈值和高阈值,检测结果表明低阈值引入的边缘特征比较多,信号可以分为无效边缘和有效边缘,低阈值越小无效信息越多,高阈值越大则有效信息越少。综合观察高低阈值分别为0.07和0.04时,检测的图像边缘更贴合原始图,且信息还原度比较高。 为开发一种基于双阈值的动态图像边缘检测系统,设计了边缘检测方法和硬件电路,利用树形灰度图选取Canny检测方法的合适双阈值,实验结果表明高低阈值分别为0.07和0.04时,检测的图像边缘更贴合原图,也证明了图像边缘检测系统的可靠性。 (a)原始图像 (b)双阈值0.02、0.08,Canny算子进行边缘检测 (c)双阈值0.04、0.08,Canny算子进行边缘检测 (d)双阈值0.06、0.08,Canny算子进行边缘检测 (a)原始图片 (b)双阈值0.04、0.05,Canny算子进行边缘检测 (c)双阈值0.04、0.07,Canny算子进行边缘检测 (d)双阈值0.04、0.09,Canny算子进行边缘检测2.2 Canny边缘识别
3 边缘检测硬件系统
3.1 硬件系统设计
3.2 视频数据采集电路
3.3 图像存储电路
4 图像边缘实时检测实验
5 结束语