:一 ……堡… 望…蕉 UJlAN GOMPUTER 基于Prewitt算子的彩色图像边缘检测方法改进 李海洋,文永革 (绵阳师范学院数学与计算机科学学院四川绵阳621000) 【摘要】:使用灰度图像算法进行彩色图像边缘检测,会造成图像边缘漏检。针对这个问题,本文 在输出融合法基础上,对Prewitt算子进行了改进,提出一种适用于彩色图像的边缘检测方法。实验表 明,改进算法能有效检测彩色图像边缘。 【关键词】:输出融合法;Prewitt算子;彩色图像边缘检测 0引言 示出来,再经过细化连接就得到边缘图像,其具体过 边缘检测是图像处理中最基本的问题,在模式识 程如图1所示。 别、机器视觉、图像分析和理解等领域具有广泛应用。 由于成像过程中的复杂性,图像边缘往往难以检测。 目前主要的边缘检测方法包括一下几类【。】:①经典模 板算子方法,如Robeas算子、Sobel算子、Prewitt算 子、Kirsch算子、拉普拉斯算子;②线性滤波方法:如 Log算子、Canny算子、小波边缘检测方法;③数学形 \滤波、 亚 过梯 原 | / 滑 \增强、 零度 点图 图 像 图 像 图 / / 像或 图像 > lJ定位> 边 缘 图1图像边缘检测步骤 态学方法;④模糊数学方法;⑤分形方法-;⑥松弛迭代 方法等。在灰度图像边缘检测应用方面,上述边缘检 测算法是较为成功的,但对彩色图像的处理却存在问 题。灰度图像的每个像素点值都是标量,像素间运算 1.2 Prewitt算子 Prewitt算子是一种一阶微分算子的边缘检测,利 可采用加减乘除。而彩色图像的每个像素点值都是颜 用图像像素点邻域灰度差在边缘处达到极值进行检 测边缘。它通过对图像进行8个方向的边缘检测,将 色模型中的三维矢量,像素间运算只能进行色差运算 31。其 f即减法运算)。简单地将灰度图像算法应用于彩色图 其中方向响应最大的作为边缘幅度图像的边缘[ 像边缘检测,由于忽略了大量颜色信息,可能会造成 梯度幅值计算方法如图2所示。严重的边缘漏检。 针对以上问题,本文在输出融合法基础上,对 垂直方向 / \ Prewitt算子进行改进,提出了一种有效的、适用于彩 色图像的边缘检测算法。 135。方向 45。方向 1.图像边缘检测与Prewitt算子 1.1图像边缘检测步骤 一\. /。 水平负向 水平正向 般的图像边缘检测算法主要包括以下步骤:图 像滤波、图像增强、边缘检测、边缘定位。原始图像经 过平滑滤波后,得到平滑图像,然后使用增强算法得 到边缘增强图像。此时,图像灰度变化平缓的区域已 经没有了,图像中只剩下了灰度突变的地方,其灰度 值得到了增强[21。经过阈值分割,将此灰度级为256的 边缘增强图像转化为二值图像,将边缘突变明显的显 / \ 225。方向 垂直负向 图2 Prewitt算子8领域梯度幅值计算 315。方向 对图像f(x,y),Prewitt算子的模板定义如下: 基金项目:四川省教育厅自然科学资助项目(12ZB070); ̄)ll省科技厅自然科学资助项目(2012JYZO13) 2013年第5 gY I福建电脑 ・5・ ~一~童=:, 蕈… 一、建一 一…壁 一一…, ~ … ~ 一一 I UJIAN C0MPU-rEF1 r一1 1 门 +:Il一1 —2 1 I 一r1 1 一1] :Prewitt算子。但Prewitt算子检测出的边缘比较粗,在 1 1 lj Il 1—2—1 I 1 1—1j 角点处易产生漏检。并且,由于Prewitt边缘检测算子 是通过8个方向模板对图像进行卷积运算,其运算量 较大,会对边缘检测速度造成影响。 水平正向 水平负向 rl 11— 1 12 1 1 r一1—1—11 +:l一1—1—1j l 1 11 — 12 1 l jl 垂直正向 垂直负向 厂4 :lr 1一1—2 l 1 1 7 I 35=fl『 l一2一l1 1 1] f 一1—1 lj 1—1-IJ 45。方向 135。方向 『1—1—1] r一1—1 1] : :fl 1—2 l 12—1 l jf J 225。方向 3l5。方向 Prewitt算法在计算一个像素点时需要求8个方 向的卷积运算。例如,像素点(i'j)水平正向卷积运算 如公式(1)所示: =— +1f一1,J一1)+/_(f~1, )+f(i一1,j+i)- l厂(f,J一1)-2 f(i, +/(f,j+1)- (1) f(i+l,J一1)+_厂(f+1, )+f(i+l, +1) 水平负向卷积运算时如公式(2)所示: =/l【j一1,J一1)+f(i一1, )一f(i一1, +1)+ f,J一1)一2 v,l( , )一f(i,J+1)+ (2) fQ+ j— +f +、, —f +l,j+ 类似地,当8个方向都完成卷积运算后,将其中 方向响应最大的作为边缘幅度图像的边缘,如公式(3) 所示: P(i,J)=Max(f,+fx,f,+,厂,+, ,, , , , ) … 然后,适当选取阈值T,如果P(i,j)>丁,则认为点 (i,j)是边缘点,P(i,j)为边缘图像。 2.输出融合法 彩色图像边缘检测算法是在灰度图像边缘检测 的基础上发展起来的,在彩色图像边缘检测算法中, 最早出现的就是输出融合方法I4]。其原理如图3所示。 利用输出融合方法检测边缘时,灰度图像边缘检 测算法分别应用于彩色图像的各个颜色分量中,然后 对各个分量的结果进行合并,从而得到最后的边缘。 其中,各颜色分量的梯度和边缘计算可以应用所有灰 度图像边缘检测算子和算法。最后得到的彩图边缘是 对各颜色分量的一个合成输出。本研究的采用的是 ・6・ 福建电脑I 2o13年第5期 彩色图像. ∥ 红色分量 绿色分量 蓝色分量 .1 jl j. 红色梯度 绿色梯度 蓝色梯度 .L Jl J 红色边缘 绿色边缘 蓝色边缘 』jr RGB分量融合 』l 彩图边缘 图3输出融合法原理 3.Prewitt算子改进 针对Prewitt算子缺点,本研究对Prewitt算子进 行了改进。改进方法是将水平正向和水平负向合二为 一,用一个水平方向模板表示;垂直正向和垂直负向 用一个垂直方向模板表示;垂直正向和垂直负向用一 个垂直方向模板表示;45。和225。用一个45。方向模板 用一个135。方向模板表示。改进后, 其梯度幅值计算方法如图4所示。 垂直方向 I I 135。方向 45。方向 \ / 水平方向 / \ / \ _01] 雌 表示;135。和315。