基于CCS的数字图像边缘检测的设计

时间:2022-09-26 05:19:06

基于CCS的数字图像边缘检测的设计

摘 要:数字图像边缘检测的设计大多是基于Matlab软件设计的,这与工程化还有一定的距离。针对这一不足,给出了数字图像边缘检测Sobel算子以及程序设计流程,并在CCS v3.1的软件仿真环境下进行仿真实验。通过3个实例的分析,验证了基于CCS的数字图像边缘检测设计的可行性。结果表明,使用Sobel算子实现了图像边缘检测,这为图像处理提供了一种硬件实现的方法。

关键词:CCS; 边缘检测; Sobel算子; 数字图像

中图分类号:TN919.8 文献标识码:A

文章编号:1004-373X(2010)14-0056-02

Design of Digital Image Edge Detection Based on CCS

YANG Hong

(School of Electronic Engineering, Xi’an University of Post and Telecommunications, Xi’an 710061, China)

Abstract: The design of edge detection of digital image is mostly based on Matlab software design, so this is still a certain distance from the engineering. In response to this lack, the digital image edge detection algorithm based on Sobel operator and program design process is proposed, and the simulation experiment is done in the CCS v3.1 software simulation environment. The feasibility of this design of digital image edge detection based on CCS by analyzing three application examples is proved. The results show that the image edge detection is achieved by Sobel operator, a hardware implementation approach is provided for the image processing.

Keywords: CCS; edge detection; Sobel operator; digital image

基金项目:国家自然科学基金资助项目(40974078);陕西省自然科学基金资助项目(2007D15)

0 引 言

边缘是图像最基本的特征,图像的轮廓、细节基本都存在于图像的边缘部分,它是图像的最基本特征,在图像分析中借助它能大大地减少所要处理的信息,又保留了图像中物体的形状信息[1-3]。因此,边界检测在图像处理、模式识别和机器视觉等领域中有很重要的作用,它是底层视觉处理中最重要的环节之一。边缘能勾画出目标物体,使观察者一目了然,边缘蕴含丰富的内在信息(方向、阶跃性质和形状等)。从本质上来说,图像边缘是图像局部特征不连续性(灰度突变、颜色突变和纹理结构突变等)的反映,它标志着一个区域的终结和另一个区域的开始。

两个具有不同灰度值的相邻区域之间总存在边缘,边缘是灰度值不连续的结果,这种不连续性通常可以利用求导数的方法方便地检测到,一般常用一阶导数和┒阶导数来检测边缘。边缘检测的基本思想是首先利用边缘增强算子,突出图像中的局部边缘,然后定义像素的“边缘强度”,通过设置门限的方法提取边缘点集[4-5]。经典的边缘检测方法是对原始图像中像素的某小邻域来构造边缘检测算子。常用的边缘检测算子有Sobel算子、Robert算子、Prewitt算子、LOG算子和Canny算子。边缘检测的设计大多基于Matlab软件设计的,这与工程化还有一定的距离。针对这一不足,提出了基于CCS的数字图像边缘检测的设计,为图像处理提供了一种硬件设计的方法。

1 Sobel算子

Sobel算子是一个梯度算子,一幅数字图像的一阶导数是基于各种二维梯度的近似值[6-7]。图像f(x,y)在位置(x,y)У奶荻扔墒(1)定义:

f=Gx

Gy=fx

fy(1)

该算法是在图像空间利用两个方向模板与图像进行邻域卷积来完成的。这两个方向模板一个检测垂直边缘,一个检测水平边缘。模板内的数字为模板系数,梯度方向与边缘方向总是正交垂直的。

式(2)为水平梯度方向,用于检测垂直边缘:

M A=-101

-202

-101 (2)

式(3)为垂直梯度方向,用于检测水平边缘:

M B=121

000

-1-2-1(3)

模板元素和窗口像素之间的对应关系(以3×3窗口为例)定义如式(4)模板:

M i = Mi┆-1,-1 Mi┆-1,0 Mi┆-1,1

Mi┆0,-1 Mi┆0,0 Mi┆0,1

Mi┆1,-1 Mi┆1,0 Mi┆1,1 (4)

式(3)中i=1,2分别代表垂直、水平模板。设窗口的灰度为:

f =f(j-1,k-1)f(j-1,k)f(j-1,k+1)

f(j,k-1)f(j,k)f(j,k+1)

f(j+1,k-1)f(j+1,k)f(j+1,k+1) (5)

模板卷积过程就是求乘积的过程:

fi(j,k)=∑im=-1∑in=-1F(j+m,k+n)Mim,n(6)

式(6)中fi(j,k)为模板卷积法边缘检测的输出,i=l/2(l为窗口宽度)。对于3×3窗口(l=1),Ы2个卷积的最大值赋予图像中对应模板中心位置的像素,作为该像素的新灰度值,即:

f┆max=max[fi(j,k)],i=1,2 (7)

边缘点判断是根据图像边缘附近的灰度变化较大特点,设置一阈值TH,当邻域内的像素新灰度值TH时的像素点就作为边缘点。

2 基于CCS的数字图像边缘检测的设计

CCS v3.1(code composer studio IDE v3.1)是TI公司推出的集成可视化DSP软件开发工具。它是一种针对TMS320系列DSP的集成开发环境,在Windows操作系统下,采用图形接口界面,提供环境配置、源文件编辑、程序调试、跟踪和分析等工具[8-10]。CCS有2种工作模式,即软件仿真器模式和硬件在线编程模式。本文主要采用软件仿真器模式,即可以脱离DSP芯片,在PC机上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。根据数字图像Sobel算子边缘检测和DSP的特点,基于CCS的数字图像Sobel算子的程序流程如图1所示。

图1 Sobel算子的程序流程

3 实验结果

cameraman、lena、coins作为原始图像分别如┩2(a)、图3(a)、图4(a)所示,使用Sobel算子所得的图像分别如图2(b)、图3(b)、图4(b)所示。分别比较原始图像与使用Sobel算子所得的图像,可以得出对图像达到了边缘检测的效果。

图2 cameraman原始图像、使用Sobel算子所得的图像

图3 lena原始图像、使用Sobel算子所得的图像

图4 coins原始图像、使用Sobel算子所得的图像

4 结 语

数字图像边缘检测的设计大多基于Matlab软件设计的,这与工程化还有一定的距离。针对这一不足,提出了基于CCS的数字图像边缘检测的设计,使用Sobel算子实现了图像边缘检测,为图像处理提供一种硬件实现的方法。

参考文献

[1]韩晓军.数字图像处理技术与应用[M].北京:电子工业出版社,2009.

[2]冈萨雷斯.数字图像处理(Matlab版)[M].北京:电子工业出版社,2009.

[3]阮秋琦.数字图像处理基础[M].北京:清华大学出版社,2009.

[4]蓝章礼,李益才.数字图像处理与图像通信[M].北京:清华大学出版社,2009.

[5]郭文强.数字图像处理[M].西安:西安电子科技大学出版社,2009.

[6]冯新宇,方伟林,杨栋.基于中值滤波与Sobel,Canny算子的图像边缘检测研究[ J] .黑龙江水专学报,2009,36(1):101-103.

[7]陈戈珩,王飞.基于Matlab的Sobel算子的指纹中心点定位[ J] .现代电子技术,2009,32(8):79-80.

[8]姜阳,周锡青.DSP原理与应用实验[M].西安:西安电子科技大学出版社,2008.

[9]彭启琮,管庆.DSP集成开发环境:CCS及DSP/BIOS的原理与应用[M].北京:电子工业出版社,2004.

[10]赵洪亮,卜凡亮,黄鹤松,等.TMS320C55x DSP应用系统设计[M].北京:北京航空航天大学出版社,2008.

上一篇:基于复平面圆图的射频放大器分配方案研究 下一篇:跳频扩频系统的Matlab模拟仿真实现