基于Sobel算子的图像边缘检测方法

文档序号:8413199阅读:471来源:国知局
基于Sobel算子的图像边缘检测方法
【技术领域】
[0001] 本发明涉及一种图像边缘检测方法,具体涉及一种基于Sobel算子的图像边缘检 测方法。
【背景技术】
[0002] 图像边缘检测技术主要应用于监控和门禁设施当中,进行道路交通的管制或汽车 门禁的监控。该技术在门禁系统的应用具有较高研宄价值,一方面因为,我国城镇化进程的 日益推进,城镇人口增速明显,城镇居民对居住地的要求有所增加,加上现代居民素质的整 体提高,居民对公共安全的需求意识逐渐增强,对门禁社区的关注度越来越高,使得越来越 多学者投入到相关研宄中来。另一方面,开发商为了迎合大众需求,往往会重金打造一些门 禁社区作为卖点,因而会相应增加门禁系统、安防系统、监控设施的需求,这给门禁系统生 产商带来了更多商机和机遇,许多带有新功能的门禁监控系统层出不穷。
[0003] 此外,图像边缘检测技术是安防系统的重要组成部分,同摄像头采样技术、数模转 换技术、接口技术一样是是安防系统的核心技术之一(居民小区汽车门禁系统示意图如图 1所示),有着深厚的研宄基础,自1965年至今的近50年里,有许多国内外学者对其进行研 宄,并在不同领域取得很多成果。边缘检测算法的种类较多,可分为传统算法和新兴算法。 传统算法有:Roberts算子、Prewitt算子、LOG算子、Iaplacian算子和Canny算子等。传 统算法大都基于数学运算实现,要么抗噪性能差,要么边缘检测的精度不高。新兴的边缘检 测算法的研宄常与其他学科有所交叉,在工程方面有:基于小波分析和小波包的边缘检测 方法、基于模糊理论的边缘检测方法、基于神经网络的分割方法等,在机器视觉和人工智能 等领域有:基于数学形态学的边缘检测方法、自组织聚类法、遗传算法等。
[0004] 由于居民小区汽车门禁系统需要图像处理过程相对快速、准确、可靠性高、易于存 储,虽然上述许多图像边缘检测技术在相应领域都有着广泛应用,其在精度、抗噪能力、应 用条件和硬件成本等方面都存在着不足之处。因此,有必要拿出一种新的图像边缘检测技 术来解决这些问题。

【发明内容】

[0005] 为了解决上述技术问题,本发明提供了一种在精度、抗噪能力、应用条件和硬件成 本这些方面都具有优势的基于Sobel算子的图像边缘检测方法。
[0006] 为了达到上述目的,本发明的技术方案如下:
[0007] 基于Sobel算子的图像边缘检测方法,其采用MyEclpise 7. 0工具和Java语言, 该方法包括以下步骤:
[0008] 1)打开一张图片,并获取图片的宽与高,宽为w,高为h,根据宽与高生成一维数组 pixel [w*h],存放每点像素值;
[0009] 2)对图片进行灰度转换,得到第一灰度值,并存放在一维数组中;
[0010] 3)生成两个二维数组 Matrix [h] [w]和 SobelMatrix [h] [w],Matrix [h] [w]用于 存放第一灰度值;
[0011] 4)利用梯度卷积算子对每点Matrix [i] [j]求梯度幅值,并设为total ;
[0012] 5)判断total是否大于设定值,如大于设定值则进入第6)步骤,否则进入第7)步 骤;
[0013] 6)求得 SobelMatrix [i] [j]的值;
[0014] 7)求得 SobelMatrix [i] [j] = 0 ;
[0015] 8)将S〇belMatrix[h][W]转换成一维数组,得到转换后的第二灰度值并存于 SobelMatrix[h] [w]中;
[0016] 9)完成。
[0017] 本发明通过将图片进行进行两次的图片灰度的转换,分别得到第一灰度值和第 二灰度值,第一次生产一维数组,然后再生产两个二维数组,再通过对梯度幅值的判断,得 到S 〇belMatriX[i] [j]的值,最后得到第二灰度值,然后经优化的图片灰度形式得以实现, 使得本方法相较于现有技术对于图像边缘检测的精度和抗噪能力得以提高,同时仅借助于 MyEclpise 7. 0工具和Java语言即可实现的本方法,在应用条件和硬件成本上相较现有技 术也具有其优势。
[0018] 在上述技术方案的基础上,本发明还可以作如下改进:
[0019] 作为优选的方案,上述的图片通过PixelGrabber类进行像素转换,得到第一灰度 值。
[0020] 采用上述优选的方案,可以提高第一灰度值转换的精度。
[0021] 作为优选的方案,上述的设定值为80。
[0022] 采用上述优选的方案,可以提高本方法的检测精度。
[0023] 作为优选的方案,上述的第6)步骤中,SobelMatrix[i] [j] = 255。
[0024] 采用上述优选的方案,可以进一步地提高本方法的检测精度。
【附图说明】
[0025] 图1为居民小区汽车门禁系统示意图。
[0026] 图2为本发明的基于Sobel算子的图像边缘检测方法的实施流程图。
【具体实施方式】
[0027] 下面结合附图详细说明本发明的优选实施方式。
[0028] 为了达到本发明的目的,如图2所示,在本发明的基于Sobel算子的图像边缘检测 方法的其中一些实施方式中,其采用MyEclpise 7. 0工具和Java语言,该方法包括以下步 骤:
[0029] Sl :打开一张图片,并获取图片的宽与高,宽为w,高为h,根据宽与高生成一维数 组pixels [w*h],存放每点像素值;
[0030] S2 :对图片进行灰度转换,得到第一灰度值,并存放在一维数组中;
[0031] S3 :生成两个二维数组 Matrix [h] [w]和 SobelMatrix [h] [w],Matrix [h] [w]用于 存放第一灰度值;
[0032] S4 :利用梯度卷积算子对每点Matrix [i] [j]求梯度幅值,并设为total ;
[0033] S5 :判断total是否大于设定值,如大于设定值则进入第S6步骤,否则进入第S7 步骤;
[0034] S6 :求得 SobelMatrix [i] [j]的值;
[0035] S7 :求得 SobelMatrix [i] [j] = 0 ;
[0036] S8 :将SobelMatrix[h] [w]转换成一维数组,得到转换后的第二灰度值并存于 SobelMatrix[h] [w]中;
[0037] S9 :完成。
[0038] 本方法通过将图片进行进行两次的图片灰度的转换,分别得到第一灰度值和第 二灰度值,第一次生产一维数组,然后再生产两个二维数组,再通过对梯度幅值的判断,得 到S 〇belMatriX[i] [j]的值,最后得到第二灰度值,然后经优化的图片灰度形式得以实现, 使得本方法相较于现有技术对于图像边缘检测的精度和抗噪能力得以提高,同时仅借助于 MyEclpise 7. 0工具和Java语言即可实现的本方法,在应用条件和硬件成本上相较现有技 术也具有其优势。
[0039] 本方法中所涉及的Sobel算法程序片段如下:
[0040]
【主权项】
1.基于Sobel算子的图像边缘检测方法,其特征在于,采用MyEclpise 7. O工具和 Java语言,所述方法包括以下步骤: 1) 打开一张图片,并获取图片的宽与高,宽为w,高为h,根据所述宽与高生成一维数组 pixels[w*h],存放每点像素值; 2) 对所述图片进行灰度转换,得到第一灰度值,并存放在所述一维数组中; 3) 生成两个二维数组1\^1:1'11[11][¥]和3(^61]\^1:1'11[11][¥],所述]\^1:1'11[11][¥]用于 存放所述第一灰度值; 4) 利用梯度卷积算子对每点Matrix[i] [j]求梯度幅值,并设为total; 5) 判断所述total是否大于设定值,如大于设定值则进入第6)步骤,否则进入第7)步 骤; 6) 求得SobelMatrix[i] [j]的值; 7) 求得SobelMatrix[i] [j] = 0 ; 8) 将所述SobelMatriX[h][W]转换成一维数组,得到转换后的第二灰度值并存于所述 SobelMatrix[h] [w]中; 9) 完成。
2. 根据权利要求1所述的基于Sobel算子的图像边缘检测方法,其特征在于,所述图片 通过PixelGrabber类进行像素转换,得到所述第一灰度值。
3. 根据权利要求1所述的基于Sobel算子的图像边缘检测方法,其特征在于,所述设定 值为80。
4. 根据权利要求3所述的基于Sobel算子的图像边缘检测方法,其特征在于,所述第 6)步骤中,所述SobelMatrix[i] [j] = 255。
【专利摘要】本发明公开了一种基于Sobel算子的图像边缘检测方法,其包括以下步骤:打开一张图片,根据其宽与高生成一维数组pixels[w*h],存放每点像素值;对图片进行灰度转换,得到第一灰度值并存放在一维数组中;生成两个二维数组;利用梯度卷积算子对每点像素值求梯度幅值,并设为total;判断total是否大于设定值;将其中一个二维数组转换成一维数组,得到转换后的第二灰度值并存于该二维数组中。本方法相较于现有技术对于图像边缘检测的精度和抗噪能力得以提高,在应用条件和硬件成本上也具有优势。
【IPC分类】G06T7-00
【公开号】CN104732555
【申请号】CN201510172661
【发明人】王岩, 卢曦, 陆盈
【申请人】南通理工学院
【公开日】2015年6月24日
【申请日】2015年4月13日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1