- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于移动平台上图像边缘检测系统设计与实现
基于移动平台上图像边缘检测系统设计与实现
摘要:针对嵌入式系统中图像边缘检测问题,提出了在嵌入式Android平台下利用OpenCV处理库实现图像边缘检测的方法,为后续的数字图像处理奠定了重要的基石。在详细阐述Canny边缘检测原理的基础上,通过Canny算法实现了对SD卡中图像的边缘特征的提取、显示与存储。实验结果表明,该系统在嵌入式平台下对数字图像边缘检测的提取,具有测量精度高、处理速度快等特点,能够满足在特定场合下对数字图像处理的要求。
关 键 词:边缘检测;嵌入式系统;Android;OpenCV
中图分类号:S611 文献标识码:A 文章编号:
0引言
图像的边缘是图像识别与分析的重要环节,通过边缘提取可以大幅度地剔除无关信息,保留图像的重要属性。在机器视觉处理领域,传统计算机因体积大、环境适用性差等缺点,在隧道、矿井等条件下难以应用。基于Android系统的嵌入式平台,凭借其开源、便携等特点,逐步成为众多嵌入式应用开发平台中的佼佼者。本文将嵌入式Android系统与机器视觉处理库OpenCV相结合,采用Canny边缘检测算法实现了对图像边缘的提取,完成了在移动设备上处理边缘图像的要求,弥补了传统计算机在实际工业环境中的缺陷,进一步拓宽了机器视觉处理技术的应用范围,具有深刻的研究意义和广泛的应用价值。
1Canny边缘检测算法原理
1.1Canny边缘检测算法准则
1986年John Canny经过对以往边缘检测算子的思考和研究,他提出了著名的Canny三准则,并将其作为边缘算子性能优劣的重要指标。
(1)良好的信噪比。即不漏检真实边缘,不误检虚假边缘,使输出的信噪比最大。
(2)精确定位性能。即检测到的边缘点与实际边缘点位置最近。
(3)唯一性。即实际边缘点和检测边缘点一一对应。
1.2Canny边缘检测步骤
(1)图像的平滑
Canny边缘检测器是高斯函数的一阶导数,是对信噪比与定位之间最优化的逼近算子。采用范函求导方法推导出高斯函数的一阶导数即为最优边缘检测算子的最佳近似。由于卷积运算可交换结合Canny方法,故采用二维高斯函数对图像进行平滑:
(1.2.1)
式中,为控制平滑程度的高斯滤波器参数。较小的滤波器定位精度高,但信燥比低;较大,则反之。Canny边缘检测算子将原始图像f(x, y)与平滑滤波脉冲响应的一阶微分进行卷积运算,则平滑后的图像
(1.2.2)
(2)计算图像梯度的幅值和方向
根据式(1.2.1)、(1.2.2)对计算图像梯度,其中梯度的幅值
(1.2.3)
(3)非极大值抑制
使用一个3×3邻域作用在幅值阵列M[i,j]的所有点,将每一个点邻域的中心像素M[i,j]与沿着梯度线的两个元素进行比较,此过程可以把M[i ,j]宽屋脊带细化成一个像素点,保留幅度值局部变化最大的点,从而确定图像边缘。即
(1.2.5)
(4)阈值化
常用双阈值t1和t2=2t1对图像N[i,j]阈值化处理,目的是去除图像中假边缘。将图像N[i,j]中低于某一阈值的所有值赋值零,得到两个边缘图像T1[i,j]和T2[i,j]。在T2[i,j]中把边缘连接成轮廓,当到达轮廓端点时,在T1[i,j]的8邻点位置寻找可以连接到轮廓上的边缘。即不断的在T1[i,j]中收集边缘,直到T2[i,j]中的所有间隙完成轮廓连接。
2系统的设计与实现
2.1硬件平台与软件环境的搭建
硬件平台选用以S3C6410处理器为核心OK6410开发板,板载128MB的DDR和256MB的Nand Flash及SD卡座;软件安装Android 2.3.4系统;移植OpenCV for Android 2.4.1机器视觉库。
2.2边缘检测系统设计流程
本系统处理过程如图1所示。首先调用加载SD卡中的图像文件,运用图像缓存机制完成在IplImage数据空间载入Bitmap数据。图像预处理以便达到边缘信息的提取标准,如色彩转换技术实现IplImage双通道RGB转换至单通道灰度图像;使用“双边滤波”的平滑处理方法有效减少图像中的噪声及失真;多次形态转换分割出独立的图像元素以及在图像中相连接相邻的元素,以便图像边缘的提取。其次采用Canny算法对图像边缘提取,其中下限阈值控制边缘连接,上限阈值控制强边缘的初始分割。当图像中某一个像素的梯度大于上限阈值,则被认为是边缘像素;低于下限阈值,则被抛弃;介于二者之间且其连接像素大于上限阈值时才会被接受。最后将已处理IplImage数据传递至Bitmap空间完成显示与保存。
3运行结果
实际测试结果表明,该系统实
文档评论(0)