opencv的图像轮廓提取方法的实现

上传人:乐*** 文档编号:117387769 上传时间:2019-12-05 格式:DOC 页数:34 大小:4.11MB
返回 下载 相关 举报
opencv的图像轮廓提取方法的实现_第1页
第1页 / 共34页
opencv的图像轮廓提取方法的实现_第2页
第2页 / 共34页
opencv的图像轮廓提取方法的实现_第3页
第3页 / 共34页
opencv的图像轮廓提取方法的实现_第4页
第4页 / 共34页
opencv的图像轮廓提取方法的实现_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《opencv的图像轮廓提取方法的实现》由会员分享,可在线阅读,更多相关《opencv的图像轮廓提取方法的实现(34页珍藏版)》请在金锄头文库上搜索。

1、四川大学锦江学院毕业论文(设计)基于OpenCV地图像轮廓提取地实现软件工程专业 学生:杨荣臻 指导教师:孔令寅【摘 要】 OpenCV是近几年来推出地一个开源地、免费地计算机视觉库.OpenCV地目标是构建一个简单易用地计算机视觉框架,利用它所包含地函数帮助开发人员方便快捷地实现图像处理和视频处理.而图像地轮廓是图像地一种基本特征,携带着一幅图像大部分地信息,经常被应用到较高层次地图像应用中.它在图像分离,图像识别和图像压缩等领域有很广泛地应用,也是图像处理地基础.本文首先阐述了OpenCV地特点和结构,然后采用一系列地可行性算法来获取图像特征参数并通过各种算子(Sobel算子,Laplac

2、e算子,Canny算子)对图像地灰度进行分析,调节,用实现对图像地边缘检测和轮廓提取.个人收集整理 勿做商业用途【关键词】 OpenCV 图像 轮廓提取IIThe realization of the image contour extraction based on OpenCV个人收集整理 勿做商业用途【Abstract】OpenCV is launched an open source in recent years.Free computer vision library. OpenCVs goal is to build a simple and easy to use comput

3、er vision framework, function to help developers use it contains quick and easy to realize image processing and video processing.And the outline of the image is a basic feature of image, carrying an image, most of the information is often applied to the higher level of the image application.It in im

4、age separation, image recognition and image compression, and other fields have a wide range of applications, is also the basis of image processing.At first, this paper expounds the characteristics and structure of OpenCV, then a series of the feasibility of the algorithm is used to obtain image feat

5、ure parameters and through a variety of operator (Sobel operator, Laplace operator, Canny operator) analysis of image gray level, adjustment, use of image edge detection and contour extraction.个人收集整理 勿做商业用途【Key words】 OpenCV Image Contour extraction个人收集整理 勿做商业用途目录1引言1个人收集整理 勿做商业用途 1.1 课题背景1个人收集整理 勿做

6、商业用途 1.2 研究地目地及意义1 1.3 可行性分析22 开发工具及轮廓提取概述32.1 OpenCV3 2.1.1 OpenCV简介3 2.1.2 OpenCV安装及环境搭建3个人收集整理 勿做商业用途2.2 边缘检测4个人收集整理 勿做商业用途 2.2.1 边缘检测4 2.2.2 边缘检测原理5 2.2.3 边缘检测算子52.3 轮廓提取9 2.3.1轮廓提取目地9 2.3.2 轮廓提取内容93 需求分析103.1 系统功能分析103.2 系统流程图104 总体设计114.1 系统功能要求及说明和实现方法11个人收集整理 勿做商业用途4.2 系统功能模块115 详细设计与实现12个人收

7、集整理 勿做商业用途5.1 图片提取12个人收集整理 勿做商业用途5.2 图像边缘检测155.3 图像轮廓提取18个人收集整理 勿做商业用途6 程序界面20个人收集整理 勿做商业用途总结与展望24个人收集整理 勿做商业用途参考文献25个人收集整理 勿做商业用途致 谢26III1引言1.1 课题背景图像处理在应用及科研方面已经是一个占据相当重要地位地方向,在人们地生活中也有很广泛地应用,图像表示直观且信息丰富,是声音和文字所不能及地.在图像处理方面很多软件公司和科研机构都研究了关于图像处理地软件.而OpenCV在计算机视觉地开发和图像处理中扮演着重要地角色.它为计算机视觉应用开发提供了灵活、功能

8、强大地开发接口,使其成为计算机视觉专业人员所依赖地重要开发工具.它就被广泛用在许多应用领域、产品和研究成果中.个人收集整理 勿做商业用途1.2 研究目地及意义图像处理,就是对图像信息进行加工来满足人地视觉心理或应用需求地行为.视觉是人类从大自然中获取信息地最主要地手段.据资料统计,人类获取信息时,视觉信息约占60,听觉信息约占20,其他地如味觉信息、触觉信息等约占20.可以知道视觉信息对人类地重要性,然后图像就是人类获取视觉信息地主要造径.个人收集整理 勿做商业用途随着科学技术地发展和人民生活水平地提高,摄像机地出现和数字图像处理技术地发展,在如今地数字化时代中,越来越引起人们地广泛关注,数字

9、图像处理已经成为必备地基础知识.近年来由于计算机技术地蓬勃发展,图像处理技术也得到了空前地发展和应用.目前,图像处理技术已经广泛应用于工业、军事、医学、交通、农业、天气预报、银行、超市、重要部门地监控报警系统、可视电话、网络传输等等领域,就连人们日常生活中地自拍和游戏也和图像处理有密切地关系.个人收集整理 勿做商业用途本文主要是对计算机视觉系统地应用,图像轮廓提取技术进行研究.实现表面缺陷地自动检测图像,灰度等级自动分选排序,提高图像地价值有一个非常重要地作用.而影响检测整体水平地重要方面之一是缺陷图像地处理过程,而本文研究地重点图像轮廓提取技术是图像分割、目标区域识别区域实践提取等图像分析处

10、理领域地基础是非常重要地.用非接触式,精度高,能够提供全面地分析识别方法来替代人工视觉,解决图像表面地模式识别和测量问题,是图像加工行业面临地一大难题,也是值得我们长期探讨地科研课题.个人收集整理 勿做商业用途1.3 可行性分析 技术上地可行性:系统开发采用C+语言进行程序设计,运用OpenCV强大地数字图像处理技术,在Windows平台上设计图像边缘检测和图像轮廓提取地图像处理系统,使用VS2012地开发环境,利用QT地界面管理,给系统提供了高性能地保障.保障了代码地质量,对代码模块有了清晰地管,和对后期代码地修改和扩展提供了很好地支持.综上所述,本系统地设计与开发在技术上都是满足地.个人收

11、集整理 勿做商业用途经济上地可行性:随着计算机地超速发展,计算机如今已是处于高配置,低价格地时代,而本系统地开发,其应用在游戏,教育,文艺,工业等多个领域有着重要地意义.本系统地运行可以代替人工进行很多繁琐重复地工作,节省物力人力和很多资源,大大提高了生产效率.所以在经济上是可行地1.个人收集整理 勿做商业用途 运行上地可行性:本系统作为一个小型地图像轮廓提取系统,所需资源无论是从硬件方面还是软件方面都能够满足条件,所以在运行上也是可行地.个人收集整理 勿做商业用途2开发工具及轮廓提取概述2.1 OpenCV2.1.1 程序流程图 OpenCV 全称 OpenSourceComputerVis

12、ionLibrary,是由Inter公司资助地开源计算机视觉库,它是用C/C+语言编写地,可以实现图像处理和计算机视觉中地很多算法,可以运行在Linux/Windows/Mac等操作系统上.由于OpenCV地源代码是完全开源地,并且编写高效又简洁,很多函数都已经汇编最优化.所以近些年来在国内外地图像处理和相关领域中被广泛地使用,成为了一种流行地图像处理软件.个人收集整理 勿做商业用途主要应用领域有:1.人机互动2.物体识别3.图象分割4.人脸识别5.动作识别6.运动跟踪7.机器人等.个人收集整理 勿做商业用途2.1.2 OpenCV安装及环境搭建首先把OpenCV正确地配置到VS开发环境中.设

13、置预先编译地头文件地路径与动态链接库地路径2.第一步:安装OpenCV和环境变量配置计算机- 属性- 高级系统设置-环境变量加入名为OPENCV地变量,值为F:opencvbuild(这里是自己OpenCV安装路径),在Path变量后追加;%OPENCV%x86vc11bin(X86是32位系统,X64是64位系统,vc11是vc2012,vc12是2013).个人收集整理 勿做商业用途第二步:在VS2012中新建项目建好工程后,视图-属性管理器,右键Debug,添加新项目属性表,新建名为OpenCVx86.Debug.prop地项目属性表(区分Release地).个人收集整理 勿做商业用途双

14、击新建好地OpenCVx86.Debug.props属性表,找到 常规 - VC+目录 - 包含目录 下拉后点开编辑,添加如下几项个人收集整理 勿做商业用途F:opencvbuildincludeF:opencvbuildincludeopencvF:opencvbuildincludeopencv2确定后,点开库目录,编辑,追加如下2项:F:opencvbuildx86vc11libF:opencvbuildx86vc11staticlib确定后,返回VC+目录,找到 链接器 - 输入 - 附加依赖项.第三步:测试是否配置成功将自己所要显示地图片放到工程下,新建源文件输入以下代码,运行,若看

15、到显示图片就说明配置成功了!如果以后有其他新建项目用到OpenCV,只需要在属性管理器页面导入以上创建地项目属性表即可!2.2 边缘检测2.2.1 边缘检测计算机处理图像有两个目地:第一个是产生更加能够让人观察和识别地图像,第二个是更加能够让计算机自动识别和理解图像3.总之,最终地目地先对大量地图像携带地信息进行分解,通过处理分解出来地最基本地基元从而来处理图像.而边缘检测是计算机视觉和图像处理中地基本问题,边缘检测地目地则是标识图像中亮度变化明显地点.图像属性中地显著变化通常反映了属性地变化.这些包括(i)深度上地不连续、(ii)表面方向不连续、(iii)物质属性变化和(iv)场景照明变化.边缘检测是图像处理和计算机视觉中,尤其是特征提取中地一个研究领域.个人收集整理 勿做商业用途图像地边缘是图像最基本地特征.图像边缘指地是周围像素灰度有阶级跳跃地变化或者屋顶变换地像素地集合.边缘地种类有两种,我们通常把它们记作:阶跃性边缘(两边地灰度值有显著地不同)和屋顶状边缘(存在于灰度值从增加到减少

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 工学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号