毕业设计(论文)基于VC++的砂轮表面金刚石识别.doc
《毕业设计(论文)基于VC++的砂轮表面金刚石识别.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于VC++的砂轮表面金刚石识别.doc(30页珍藏版)》请在三一办公上搜索。
1、基于VC+的砂轮表面金刚石识别摘要本文提出了一种基于图像边缘轮廓检测的砂轮表面金刚石磨料识别算法。算法程序基于VC+开发,调用OpenCV库进行数字图像处理,并利用MFC库制作了算法展示界面。算法通过对样本图像进行灰度转换、阈值变换、中值滤波、边缘提取、寻找轮廓等步骤,获得图像中金刚石磨料部分的轮廓面积以及区域边界点。算法检测性能良好,程序操作演示界面简洁直观。关键词数字图像处理;轮廓检测;金刚石识别;计算机视觉DiamondrecognitionongrindingwheelsurfacebasedonVisualC+abstractIn this paper, one kind of di
2、amond recognition algorithm based on the edge-detection of diamond wheel is proposed. The algorithm program is based on VC+ development, and calls the OpenCV library to carry on the digital image processing, using the MFC library to build the algorithm presentation interface. By using gray transform
3、ation, threshold transform, median filtering, edge detection and contour search, the Algorithm obtain the diamond parts area and region boundary in the sample image. The results demonstrates the well performing of the algorithm, and the intuition of the interface.Keywords:Digital image processing; C
4、ontour detection; Diamond recognition; Computer vision 目录引言1第一章课题的背景及意义21.1计算机视觉和数字图像处理21.2 课题实践意义3第二章课题软件开发环境介绍52.1 VC+52.2 MFC52.3 OpenCV6第三章主要功能的理论基础及设计实现73.1 灰度转换73.1.1 理论基础73.1.2 程序实现83.2 中值滤波93.2.1 理论基础103.2.2 程序实现103.3 阈值变换123.3.1 理论基础123.3.2 程序实现133.4 边缘提取143.4.1 理论基础153.4.2 程序实现153.5 寻找轮廓与后
5、续操作173.6 软件整体演示20结论25致谢语26参考文献27引言随着科学技术的发展,计算机技术也随着快速发展。图片自动识别处理技术应运而生。图像处理是对图像进行分析、加工、和处理,使其满足视觉、心理以及其他要求的技术。图像处理技术基本可以分成两大类:模拟图像处理和数字图像处理。数字图像处理技术主要包括如下内容:几何处理、算术处理、图像增强、图像复原、图像重建、图像编码、图像识别、图像理解。图像处理是信号处理在图像域上的一个应用。图像处理应用在摄影及印刷,卫星图像处理,医学图像处理,面孔图像处理,显微图像处理以及汽车障碍识别。图像是我们生活中必不可少随处可见的,可以确切的说,图像是我们获取信
6、息的必要而必不可少的途径。图像处理在很多方面例如:国防、医学、交通、地质勘查、地球环境、宇航航天以及民用等方面都有着十分重要的运用。图像在国民经济和科技科研中,是一种反馈指导人们对计划进行修改,达到理想效果,图像技术作为一种关键技术手段,把图像以恰当的方式展现,给人以指导。鉴于这些,参考了一些书籍,在现有的知识基础上,设计了这个程序,本课题选取对砂轮样本图像中金刚石区域部分提取轮廓这一需求作为入手点,研究了相关的视觉算法,编写了包含演示界面的轮廓检测程序。第一章 课题的背景及意义1.1 计算机视觉和数字图像处理 伴随科学技术的发展,社会生产力不断提高,许多领域行业正逐步由传统的人工作坊制作方式
7、转变为大规模的机器流水线自动生产。在流水线的生产过程中,一个重要的环节是让机器设备系统辨识生产加工的原材料,以便后续加工和剔除次品的处理。但与人类的视觉系统和大脑思考方式不同,机器只能依靠摄像头获取产品样本的视频图像数据,而其处理系统也只能按照设定好的程序逻辑模式进行计算分类,不能达到完全模拟人类视觉系统与大脑思考的程度。因此,计算机视觉学科应运而生,得到了研究者广泛的关注,获得了飞速发展。 计算机视觉 ( Computer Vision )主要研究机器如何“看”和“感知”,即如何通过摄像头采集的图像数据,和电脑程序或其他软硬件设备对数据的图形处理,使得系统能够识别、跟踪或测量图像中的目标物体
8、。1 科技工作者们研究计算机视觉的相关理论和技术,试图建立一个能从样本图像数据中获得有用信息的人工智能系统。作为一门研究计算机系统与机器视觉的科学,计算机视觉与数字图像处理这门学科领域存在大量交集。 数字图像处理 ( Digital Image Processing )主要指计算机系统对数字图像进行去噪、增强、还原、分类、提取特征等的方法和技术。2 数字图像处理的发展跟以下三个因素关系密切:其一是计算机技术,计算机软硬件的发展,直接提升了数字图像处理算法软件的计算能力;其二是数学学科发展,尤其是其中的离散数学领域分支,为新算法的创立和完善奠定了理论基础;其三是工业、农牧业、林业、军事、医疗和环
9、境等行业的规模增长,产生了源源不断的需求,进一步刺激数字图像处理相关技术的发展。数字图像处理技术已逐渐深入各行各业之中,为人民群众的日常生活的方方面面提供了便利。1.2 课题实践意义 砂轮是磨削加工中最常见的一种磨具。通过在磨料中加入结合剂,经过压坯、干燥和焙烧等流程,将磨料固定成一定的几何形状(通常为圆形)的多孔体来制成砂轮,其工作表面如图(1-1)所示。图( 1-1 ) 砂轮表面形貌 磨削是一种以磨具作为“刀具”对工件材料进行精密微量切削的工序,以砂轮为例,则主要利用其工作表面上凸出结合剂外的磨料部分进行切削。由于磨料、结合剂搭配组成不一,制造工序不同,生产的砂轮差异很大,其特性主要由磨料
10、、粒度、结合剂、硬度、组织、形状和尺寸等因素决定。3 砂轮种类多样,根据结合剂、磨料和制造工艺的不同,砂轮的特性千差万别,而这种差异会对生产质量和经济效益产生巨大影响。按结合剂分类,有金属、树脂和陶瓷等品种;按所用磨料分类,有刚玉(AL3O2)、碳化硅、金刚石、立方氮化硼(CBN)等品种,其中的金刚石砂轮品种硬度极高。金刚石是一种由碳原子构成的矿物,是碳元素的同素异形体,是目前地球上发现的自然物体中最坚硬的物质。其绝对硬度是刚玉的四倍,石英的8倍。金刚石的外观颜色主要由其所包含的元素杂质和晶体纯净程度决定,通常呈现蓝、绿、黄、褐、乳白、紫和灰色等。在工业生产中采用的一般为人工合成的金刚石。 砂
11、轮机是工厂中常见的一种磨具,其上的砂轮是否安装正确,砂轮质量是否合格,直接对工业生产的安全与否造成重大影响。无论是在砂轮的生产制造过程中,还是在工业生产安全检查中,都必须认真仔细考察砂轮质量,及时排除砂轮次品,保障生产安全。对磨削砂轮的准确认识,是对磨削机理进行研究的重要基础,是对磨削过程进行建模和仿真、优化磨削过程的基本环节。而不同磨粒与结合剂组合、磨粒的大小尺寸、砂轮本身制作工序的差异,都会为砂轮的形貌检测提出不同的要求,需根据实际情况制定检测算法。 本课题针对砂轮工作表面的金刚石磨料检测这一需求展开研究,通过计算机视觉与数字图像处理算法程序的检测,提取金刚石磨料的轮廓,计算轮廓面积,记录
12、金刚石区域的界限面积,从而获得有助于金刚石砂轮生产的磨料信息。课题最终完成的砂轮表面金刚石检测程序,既包含逻辑清晰的核心算法,又具有直观简洁的演示界面。通过对检测算法的研究和程序的编写调试,笔者的编程能力得到了提升,同时对计算机视觉和数字图像处理技术有了初步认识。 本文的总体结构如下:第一章说明了计算机视觉与数字图像处理技术在实际生产生活中的应用背景和本项目课题的实践意义价值;第二章介绍了项目程序的开发环境,简要列举了调用的库函数;第三章分模块详细阐述了检测算法的原理,并展示了各步骤对样本图像的处理结果和最终程序展示界面;最后的结论对整个课题项目进行反思,提出改进点并对未来技术进步作出展望。第
13、二章 课题软件开发环境介绍 数字图像处理算法必须以程序作为依托,本章将主要介绍金刚石检测项目程序的开发环境,为后续章节的算法提供实现基础。2.1 VC+Microsoft Visual C+ ( VC+ )是一款由微软公司推出的,面向对象的可视化集成编程系统,主要用于Win32位环境下的程序开发。4VC+近期的高级版本被整合在Visual Studio ( VS )中。相比VC+,VS功能更为强大丰富,包含了整个软件生命周期中所需要的大部分开发工具,如UML工具、代码管控工具、集成开发环境( IDE )等等。VS是当前应用最为广泛的Windows平台应用程序的集成开发环境。本文后续项目程序的实
14、际开发环境为 Viual Studio 2010 ( VS 2010 )。2.2 MFCMFC是微软公司提供的一个图形化界面语言类库,全称为 Microsoft Foundation Classes。该类采用C+语言中类的形式封装了Windows API,其中包含了大量的Windows句柄和Windows内建控件组件的封装类和方法。5VC+中封装了MFC类,程序员在利用VC+进行MFC编程时,可以直接应用通用框架,无须考虑消息循环等琐碎问题,可以专心于程序代码本身的逻辑。通过MFC类的调用,可以创建类似Windows主题风格的程序演示界面框架,为算代码的处理结果提供了一个直观的展示平台。2.3
15、 OpenCV OpenCV全称为Open Source Computer Vision Library,最早由Intel在1999年建立,是一个开源的跨平台计算机视觉库。6 除了C和C+外,OpenCV还提供了Python、Ruby、Matlab等语言的接口。OpenCV使用的license对非商业和商业的应用都是免费的,加上其开源、不依赖其他外部库的特性,被广泛使用在各类计算机视觉和数字图像处理应用中,常见的应用领域有人机交互、目标识别、分类分割、人脸识别、姿态识别、运动跟踪、人工智能、轨迹分析、机器视觉、结构分析、安全监控等等。OpenCV由C函数和C+类构成,经过恰当的改写可以移植入D
16、SP或单片机系统中。 OpenCV库实现了大量的计算机视觉和数字图像处理算法,包括对视频图像的读取保存操作、颜色通道转换、绘制几何图形、空间平滑滤波、提取图像特征、时域频域空间转换、模式训练分类等等。通过调用其完善的封装类和函数方法,可以极大地方便研究者进行科研实践,又由于其具有开源的特性,使得在原有的视觉算法基础上进行改良成为了可能。一些程序员在github、csdn等IT社区网站主动分享其OpenCV项目的开源代码,在为他人提供借鉴的同时也促进了OpenCV库自身的研究发展。截至2015年5月,OpenCV已更新至3.0版本。通常情况下,OpenCV库的版本会向下兼容,高级版本相对低级版本
17、会保留原有算法结构,同时增加新的类和函数方法。 在实际环境中,本文项目在Visual Studio 2010 ( VS 2010 )编译器上开发,调用了OpenCV 2. 4. 3版本库及封装的MFC库,最后编译完成类Windows主体风格的MFC演示界面程序。第三章 主要功能的理论基础及设计实现 在前面的章节中,对于软件的开发环境我们已经有了概括性的了解。在本章中,笔者将以金刚石检测这个项目为例,详细介绍软件各个模块在数字图像处理中的算法原理以及具体的代码实现。3.1 灰度转换 在对数字图像进行研究时,通常需要对样本图像进行预处理,以便突显其图像特征,方便后续的考察,其中一种最常见的预处理就
18、是灰度转换。3.1.1 理论基础 在计算机系统中,图像文件通常以彩色图像的RGB三通道格式或灰度图像的单通道格式进行存储。在彩色图像中,以矩阵的形式有序存储像素点的信息,而每个像素点的像素值则包含( r, g, b)三个分量,分别代表该像素在红、绿、蓝三个通道中的强度值,取值范围为0, 255区间的整数。例如,我们可以用一个三维矩阵X m, n表示一幅m行n列的彩色图像,其中x j, k = ( r, g, b )则表示第j行第k列坐标的像素值强度为( r, g, b )。灰度图像的存储方式与彩色图像类似,但由于其像素只能表示从黑到白的颜色渐变,存储时每个像素只有一个分量( i ),用以表示该
19、像素点的亮度,取值范围为 0, 255区间的整数,越接近最大值,像素点越亮(呈现白色),反之则越暗(呈现黑色)。同样地,可以用一个一维矩阵X m, n表示一幅m行n列灰度图像,其中x j, k = ( i )表示第j行第k列坐标的像素亮度为( i )。2 在计算机视觉领域中,图像中物体的颜色、亮度信息作为一种最基本的视觉特征,因其直观、便于分析、对比度高易于区分等特性,常被运用于物体的识别、分类算法之中。具体到金刚石检测这个项目中,通过对样本图像的肉眼观察,我们可以发现含有金刚石的矿石部分像素亮度值,显著大于不含金刚石的杂质部分。这提示我们将样本图片由三通道的彩色图像转化为单通道的灰度图像,并
20、通过对像素点亮度值的考察进行后续处理。3.1.2 程序实现 对一张彩色图片,将对应像素点的RGB三通道值转化为亮度I的公式为:I = 0.299 x R + 0.587 x G + 0.114 x B( 3.1 )式( 3.1 )中,R、G、B分别为像素点红、绿、蓝三通道对应的强度值,I为灰度图相应位置像素点的灰度值。对于一张宽width、高height的彩色图像sourceImage,将其转化为灰度图像grayImage的方法即为遍历sourceImage,对图中每个像素点进行式( 3.1 )的转换处理,程序伪代码如下:for ( y = 0 ; y height ; y+ )for( x
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 VC 砂轮 表面 金刚石 识别

链接地址:https://www.31ppt.com/p-2946110.html