基于Sobel算子的弧形材料边缘检测.pdf
第 3 0卷第 1 期 2 0 0 9年 1 月 煤矿机械 C o a l Mi n e Ma c h i n e r y V 0 J . 3 0 № . O 1 J a n.20 09 基于 S o b e l 算子的弧形材料边缘检测 李要球 ,王锐 1 . 淮海工学院,江苏 连云港 2 2 2 0 0 5 ;2 . 解放军后勤工程学院,重庆 4 0 0 0 1 6 摘要数字图像的边缘检测是 图像分析与处理的基础, 在测试技术工程应用上 占有十分重 要的地位。针对具体的弧形材料, 实验过程 中首先用 C C D结合图像采集卡获取材料 的图像 , 然后 经图像去噪处理 , 通过 V C进行编程 , 采用 S o b e l 算子的检测方法, 最终得到 了弧形材料 的边缘。 结果表明所检测的边缘清晰, 能够满足对弧形材料其他相关测试的要求。 关键词边缘检测 ;弧形材料 ;S o b e l 算子 中图分类号T P 3 9 1 . 4 1 文献标志码 A 文章编号 1 0 0 3 . 0 7 9 4 2 0 0 9 0 1 . 0 1 7 6 . 0 3 Ed g e De t e c t i o n o f Ar c s h a p e d M a t e r i a l Ba s e d o f S o b e l Op e r a t o r LI Ya oq i u 。W ANG R l 1 . H u m h m T e c h n o l o g y I n s t i t u t e 。L i a n y u n g a n g 2 2 2 0 0 5 , C h i n a ; 2 . P I A l o g i s ti c a l E n gi n e e r i n g C o l l e g e ,C h o n g q i n g 4 0 0 0 1 6 , C h i n a Ab s t r a c t F i g u r e i m a g e e d g e d e t e c t i o n i s a v e r y i mp o r t a n t b a s i s i n i m a g e d i v i s i o n , a n d i t h a s v e ry i mpor ta n t s t a - t u s i n p r o j e c t a p p l i c a t i o n o f m e a s u r e m e n t t e c h n i q u e . C o n s i d i n g t h e a res h a p d e m a t e r i al, fi r s t , u s i n g C C D and i ma g e c o l l e c t c a r d t o g e t t h e i ma g e o f a r cs h a p e d ma t e ri al and the n n o i s e r e mo v a l o f i ma g e . t h e b e t t e r 一 s h a ped ma t e ri al e d g e c a l l be g e t fi n a l l y b y S o bel e d g ed e c t c e t i o n o p e rat o r b a s e d o f V C . T h e e d g e i s c l e a r f r o m e x p e r i me n t r e s u l t .I t s a n s a t i s f y the r e q u e s t t o o t h e r rel a t e d t e s t s o fthe a r cs h a p e d ma t e ria1. Ke y wo r d s e d g e d e c t c e t i o na re s h a p e d ma t e rialS o b e l o p e rat o r 0引言 边缘是指周围像素灰度强度有跳跃变化的像素 集合, 是图像最基本的特征, 是图像分割、 纹理分析 和图像识别的重要基础。提取边缘的算法就是检出 符合边缘特性的边缘像素的数学算子。边缘检测的 算子一般有 2 种类型 ①以二阶导数为基础的边缘 检测算子, 通过求二阶导数中的过零点来检测边缘, 如 L o g 算子、 C a n n y 算子等。这种算法运算量大, 不 适合实时处理的时间要求 ; ② 以一阶导数为基础的 边缘检测算子 , 通过计算图像的梯度来检测图像边 缘 , 如 R o b e a算子、 S o bel 算子 、 P r e w i t t 算子等。S o bel 算子由于计算量小 、 速度快 , 得到了广泛的应用。 1 边缘检测的 S o bel 算子 由于边缘是图像上灰度变化 比较剧烈的地方 , 在灰度变化突变处进行微分 , 将产生高值 , 梯度是图 像处理中最为常用的一种一次微分方法。对一个图 像函数 f , , , , 在 , , , 点的梯度幅值 G [ f x , y ] G c y - [ 1 其方向 a , a r c t a J 1 a r c t a n [ 3 , 3 ] 2 对于数字图像 , 可用一阶差分替代一 阶微分, 即有 △ 矿 , Y , Y 一 f 一1 , Y 3 G y A y f , Y f , Y 一 f , Y一1 4 根据梯度的定义 , 图像 厂 , Y 的梯度幅值 G E f , Y ] { [ △ , Y ] [ A y f , Y ] } 专 5 为了避免平方和运算及开方运算, 可将幅度用 2个分量的绝对值之和或最大绝对值来表示, 即 G [ f , Y ] I △ , Y I l △y f , Y I 6 或c [ f , Y ] 一m a x [ I △ x f , y I , l △ , Y 1 ] 7 这 3种幅度表示方式之间有下述关系 m a x [ IA , Y I , I △ , Y I ] ≤} [ △ , y ] [ △ , y ] } ≤I A , Y I I △ yf , Y l 或[ I △ , Y I I △ , Y 1 ] 2 ≤{ [ △ , , ] [ △ , y ] } 2 n 诅 X [ I A V , y l , l △ , Y 1 ] 这表明, 用绝对值相加表示的梯度比实际梯度 大 , 用水平和垂直差分取最大值方法计算的梯度 比 实际梯度小。而对于检测水平方向和垂直方向上的 边缘时, 上述 3种表示法是等价的。 对 S o bel 边缘检测算子, 是先进行加权平均 , 再 微分, 然后求梯度。其数学表示式与式 6 相同。不 过其中的差分方程为 △ , Y f 一1 , Y1 2 f , Y1 f 1 , Y1 一 一1 , Y一1 一 2 f , Y一 1 一 _厂 1 , Y 一 1 8 Z y f , Y f 一1 , Y一1 2 f 一1 , Y 一 1 , Y1 一 1 , Y一1 一 2 f 1 , Y - f 1 , Y1 9 式 8 、 式 9 中各像素之间的关系如表 1 。 - - - 1 7 6 ---- 第 3 0 卷第 1 期 基于 S o b e l 算子的弧形材料边缘检测李要球, 等 V o 1 . 3 0 N o . 0 1 表1 像素之间关系 d e fi n e R E C T WI D T H 1 p R e c t 1 p R e c t 一d g h t 表 1 的 33大小 的图像 区域的第 1行和第 3 行之差近似于式 8 所表示的 方向上的导数, 第 3 列和第 1 列之差近似于式 9 所表示的 Y 方向上的 导数, 权值 2 是增加中心点的重要性, 实现某种程度 的平滑效果。 由式 8 、 式 9 可以构成 2个方向模板 , 然后与 图像进行邻域卷积形成 S o b e l 算子 的边缘检测。这 2 个方向模板一个检验水平边缘 , 一个检 验垂直边 缘, 如图 l 所示, 模板中的元素表示式 8 、 式 9 中 相应像素的加权因子。对图像中的每一个像素都用 这2 个方向模板进行卷积运算, 取其最大值作为输 出, 运算结果就是一幅体现所要检测边缘幅度的图 像 。 图 1 S 0 b e l 边 缘检 验算子 2 S o b e l 算子的 V C编程实现 弧形材料的边缘检验过程是通过 C C D摄像得 到全视频信号, 然后利用图像采集卡与 P C I 接口将 图像信息采集到计算机, 通过 V C 编程实现图像 采集 、 图像的预处理 、 图像边缘提取 , 最终得到弧形 材料的边缘 图像轮廓。 1 图像采集 图像采集部分程序设计 的功能是对图像采集卡 进行相关操作 , 在所使用 的采集卡 中图像采集 函数 已实现图像卡的初始化、 图像卡的激活、 图像卡的关 闭等功能, 在 V C 中对图像采集卡的程序控制通 过对动态链接库函数的调用即可实现。在编程中先 构造 D I B函数库 , d i b a p i . h是定 义 的函数库 的头文 件 , d i b a p i . c p p是它的实现文件 , 在程序 中所定义的 d i b a p i . h头文件的内容为 d i b a p i . h i f n d e f I NCDI B PI d e fin e IN C DI B AP I D I B句柄 D E C L A R EH A N D L E H D I B ; D I B常量 d e fi n e PAI IVER SI ON 0 【 3 00 D I B宏 d B e I SWI N 3 0一D I B 1 p b i * L P D . WO R D 1 p b i s i x e o f B Ⅱ MA P I N F 0 I { 口 A D E R 一 1 p R e c t 一l e f t 社d e fi n e RE C T H E I G H T 1 p R e c t 1 p R e c t 一 b o t t o m一 1 p R e c t 一t o p 2 图像预处理 经 C C D和采集卡获得的图像存在噪声, 不能直 接进行 S o b e l 边缘检测, 还要对图像进行预处理, 消 除图像在采集过程中存在的噪声, 改善图像的质量 和抽出弧形材料特征, 这个过程又称为图像平滑或 图像滤波。在用 V C 编制程序时, 图像滤波的实 现函数定义如下 B O0 L WI N AO E Me d i a n F i l t e r LP S T R l p DI B Bi t s L O N G l Wi d t h L ONG 1 He i g h t i n t i F i h e r H i n t i F i l t e r W i n t i F i h e r MX i n t i F i l t e r MY 3 图像边缘提取 图像的边缘提取就是利用 S o b e l 边缘检测算子, 通过 V C编程获取边缘图像 , 在 d i b a p i . h内定义 函数如下 BOOL WI NAPI T e mp l a t e LP S T R l p DI BBi t s LONG I W i d t h LO NG 1 He i g h t i n t i T e mp H i n t i T e mp W i n t i Te mp MX i n t i Te mp MY F L OAT*f o Ar r y L 0AT*f Co e f 在 d i b a p i . c p p中编写 实现函数 , 设置水平方 向 和垂直方向 S o b e l 算子的模板参数, 调用 T e m p l a te 函数对图像边缘进行提取, 并存人开辟的内存内。 3 实 验及 结果 对图2 所示的弧形材料经图像采集卡、 图像滤 波后 , 再用 V C编程实现 S o b e l 边缘检测算子提 取边缘。在实验 中先取得图像大小 、 位置、 数据 区, 逐行从左向右扫描像素点 , 在最左端 扫到二值化 的 白像素点后, 再从右向左扫描, 扫描到最右端白像素 点 , 跳到下一行继续从左 向右扫描图像 , 如此循环 , 得到水平方向最外围像素。逐列从上到下扫描图 像, 当最上端扫到白像素点后, 从下到上扫描图像, 扫描到最下端白像素点后, 跳到下一列继续从上 到 下扫描图像 , 依次循环 , 得到垂直方向最外围像素 , --- 1 7 7-- - 第 3 o 卷第 1 期 2 0 0 9年 1 月 煤矿机械 C0 a 1 Mi n e Ma e h i n e Vo l _ 3 O № . 0 1 J a n.2 0 09 行程给定 的提升机速度控 制研究 张小峰,贾世祥,邹海林 鲁东大学 计算机科学与技术学院,山东 烟台 2 6 4 0 2 5 摘 要设计了在行程给定方式下提升机速度与行程的关系, 将原 S形曲线分为 1 5段 曲线 后, 建立统一的数 学模型进行处理 , 以保证速度平滑过渡, 并减 少原 系统中对设备的冲击。通过 S I . E ME N S s 7 3 0 0进行 了编程 实现, 测试效果良好。 关键词行程控制 ;提升机 ;可编程控制器;速度控制 中图分类号T D 5 3 4 文献标志码 A 文章编号 1 0 0 3 . 0 7 9 4 2 0 0 9 0 1 0 1 7 8 . 0 3 Re s e a r c h o f S p e e d Co n t r o l 0 f Li f t M a c h i n e u n d e r Pa t h Co n t r o l Z HANG Xi a of e n g ,J I A S h i x i a n g,Z OU Ha i l i n C o m p u t e r S c i e n c e a n d T e c h n o l o g y C o l l e g e ,L u d o n g U n i v e r s i t y ,Y a n t a i 2 6 4 0 2 5 -C h i n a Ab s t r a c t T h e r e l a t i o n s h i p b e t we e n s p e e d a n d t h e p a t h i s d e s i g n e d.Af t e r c u t t i n g t h e o rig i n a l“ S”fig u re i n t o 1 5一s e g me n t fi g u r e,e s t a b l i s h t h e u n i fi e d mo d e l S O a s t o s mo o t h t h e s p e e d t r an s i t i o n。an d r e d u c e s t h e s wi t c h i mp a c t i n t he o r i g i n a l c o n t r o 1 .T h i s s y s t e m i s i mp l e me n t e d o n S I EMENS S 73 0 0.a n d r e c e i v e s g o o d r e s u l t . Ke y wo r d s p a t h c o n t r o l ;l i ft ma c h i n e;PL C;s p e e d c o n t r o l 1 问题的提出 受到各种外界条件 的制约 , 其 中最关键 的是受安全 与所有运输设备一样 , 矿井提升机是一种对被 性的制约。对提升机运行速度的控制 , 必须要有一 控对象“ 位置变化的控制” 。在实际应用中, 必然要 个按速度要求而确定的可靠的控制参考信号,即调 取水平方向和垂直方 向所扫像素 的并集 , 即得到了 如图 3所示的弧形材料边缘图像 。 a 图 2弧形 a b 图 3 S o b e l 算子检测 的边缘图 4 结语 图像测量技术作为一种新兴的精密测量技术 , 具 有高分辨率、 非接触、 高灵敏度、 光谱响应宽、 动态范 围大、 易于实现自动化等特点, 有很大的发展前景 , 而 图像边缘的检测是图像测量的基础 , 尤其是边缘点的 检测一直是图像处理和测量的难题, 本文对弧形材料 的边缘检测只是进行了一些基础性研究工作。 参考文献 [ I ] 姚敏 . 数字 图像处理[ M] . 北京 机械工业出版社, 2 0 O 6 . [ 2 ] 陈传波, 金先级. 数字图像处理[ M ] . 北京 机械工业出版社 , 2 0 0 4. [ 3 ] 高守传 , 姚领田. V i s u a l C 实践与提高[ M] . 北京 中国铁道出 版社 , 2 0 0 6 . [ 4 ] 何斌. V i s u al C 数字图像处理 [ M] . 北京 人 民邮电出版社, 2 0 0 2. [ 5 ] 夏良正. 数字图像处理[ M ] . 修订版. 南京 东南大学出版社, 1 9 9 9 . [ 6 ] 杨淑莹, 边奠英. V c 图像处理程序设计[ M] . 北京 清华大学 出版社 , 2 0 0 3 . [ 7 ] K e rm e t hR. C a s t l e n m n . 数字图像处理[ M] . 北京 电子工业 出版社 , 2 0 0 2. [ 8 ] 李兰友. V i s u al C . N E T图形图像编程[ M ] . 北京 电子工业出 版社 , 2 0 0 2 . [ 9 ] 杨枝灵 , 王丹 . V i s u al C数字图像获取处理及实践应用[ M] . 北 京 人民邮电出版社 , 2 0 0 3 . [ 1 0 1 刑军. 基于 S o b e l 算子数字图像的边缘检测[ J ] . 微机发展, 2 0 0 5 9 4 84 9 . [ 1 1 ] 张建德 , 邵定宏 . 基于 S o b e l 细化算子的螺纹边缘检测 [ J ] . 机械 与电子 , 2 0 o 7 5 7 7 7 8 . [ 1 2 ] 沈峰亭 , 魏红 . 基于改进 S o b e l 算子的螺纹边缘检测 [ J ] . 微计算 机信息 , 2 0 0 8 1 2 6 1 2 6 2 . [ 1 3 ] 刘涛 , 蒋建国 . 基于 V C 6 . 0的灰度位图处理 的实现[ J ] . 计算机工 程 , 2 0 o 2 2 2 7 1 2 7 2 . [ 1 4 ] 李要球, 王锐. 数字测量技术在圆形材料直径测量中的应用[ J ] . 煤矿机械, 2 0 0 6 , 2 7 3 5 2 5 5 2 6 . 作者简介李要球 1 9 7 0 一 , 江苏连云港人, 淮海工学院讲师, 硕士, 现主要从事光电测 试及 自动化的教 学与科 研工作 , 电话 0 5 1 8 8 5 8 9 5 3 6 6 , 电子信箱 l y q 2 6 0 1 l 6 3 . c o m. ~ 1 7 8 一 收稿 日期 2 0 0 8 0 7 0 8