当前位置:论文写作 > 毕业论文范文 > 文章内容

计算机视觉和自动车床本科毕业论文范文 关于计算机视觉和自动车床在职研究生论文范文2万字有关写作资料

主题:计算机视觉和自动车床 下载地址:论文doc下载 原创作者:原创作者未知 评分:9.0分 更新时间: 2024-03-21

计算机视觉和自动车床论文范文

《基于计算机视觉的车床零件自动检测》

本文是计算机视觉和自动车床类学术论文怎么写和计算机视觉相关在职研究生论文范文.

摘 要:为了提高生产效率,使学生了解计算机视觉,跟上人工智能的时展步伐,文中设计实现一种基于计算机视觉的车床零件自动检测.车床零件自动检测涉及的主要算法包括图像特征点检测算法FAST,ORB;特征点描述算法BRIEF,ORB;特征点匹配算法BruteForceMatcher等.具体实现包括OpenCV,OpenCVSharp视觉库,Visual Studio中使用NuGet库程序包管理器安装OpenCVSharp视觉库,以及C#程序的具体实现等.实践表明,结合校办工厂、车床零件加工课程,一方面提升了生产效率,另一方让学生了解了计算机视觉原理,掌握了计算机视觉初步开发.

关键词:图像特征点;特征点描述;特征点匹配;OpenCVSharp;NuGet;ORB

中图分类号:TP391.4文献标识码:A文章编号:2095-1302(2020)02-00-03

0 引 言

我校属于中等职业技术学校,下设校办车间,承接车床零件批量生产,主要是为了培养学生的職业技能.为了提升生产效率,同时让学生了解计算机视觉,跟上人工智能的时展方向,实现了基于计算机视觉的车床零件自动检测.本文基于2019年中等职业学校教学能力比赛的“滑动轴承零件的批量生产”项目,该项目获得省一等奖.

1 实现原理

1.1 计算机图像的存储与处理

计算机中的图像实质上就是一个二维数字矩阵,如图1所示.该矩阵的行数就是图像的垂直像素数,列数就是图像的水平像素数,矩阵中的一个数字就代表图像对应位置的一个像素.对计算机图像的处理实际上就是对矩阵的运算.

使用数码相机或手机拍摄的图像一般是彩像,1个像素用3个字节表示,分别代表红(r)、绿(g)、蓝(b)三色的值.在提取图像特征点之前要将彩像装换成灰度图像,灰度图像1个像素用1个字节表示[1],其值为0.299r+0.587g+0.114b.

1.2 图像特征点提取

车床零件自动检测实际就是目标零件图像与模板零件图像的匹配,图像匹配之前首先需要提取图像特征点.本文使用2011年由Ethan Rublee等人提出的ORB(Oriented FAST and Rotated BRIEF)算法[2].ORB提取特征点算法是2006年

由Edward Rosten和Tom Drummond 提出的FAST(Features from Accelerated Segment Test)算法的改进版本[3].

FAST算法定义特征点为:如果某个像素点和它周围邻域足够多的像素点处于不同区域,那么这个像素点就是特征点.对于灰度图像,如果该点的灰度值与其周围足够多的像素点的灰度值不同,那么这个像素点就是一个特征点[4].算法计算步骤如下.

(1)从图片中选取一个坐标点,获取该点的像素值,并判定该点是否为特征点.

(2)选取以坐标点为圆心,半径等于3的Bresenham圆(一个计算圆的轨迹的离散算法,得到整数级的圆的轨迹点),这个圆上有16个点,如图2所示.

(3)选取一个阈值,假设为t,并假设这16个点中,有n个连续的像素点,他们的亮度值与中心点的像素值的差大于或者小于t,那么这个点就是一个特征点.n的取值一般取值12或者9,实验证明9可以取得更好的效果.

FAST算法的优点是计算速度快,缺点是当图片中的噪点较多时,会产生较多的错误特征点,健壮性并不好,而且FAST特征点没有方向信息,这样就会失去旋转不变性.ORB提取特征点算法就是对FAST算法进行改进,首先它使用Harris角点和尺度金字塔变换算法选取最好的特征点,然后使用中心与角度计算算法使其具有旋转不变性[5].

1.3 图像特征点描述

图像的特征点被提取之后需要要对特征点进行描述,以便匹配.ORB特征点描述算法是2010年由Michael Calonder等人提出的BRIEF(Binary Robust Independent Elementary Features)算法的改进版本[6].

BRIEF是一种对已检测到的特征点进行描述的算法,它是一种二进制编码的描述子,在图像匹配时使用BRIEF能极大的提升匹配速度[7].算法计算步骤如下:

(1)以特征点P为中心,取一个S×S大小的邻域(一般S等于31),并做高斯平滑;

(2)在这个邻域内以同样的标准选取N对点(一般N等于256),对于每一对点比较它们灰度值的大小,如果前者小于后者赋值1,否则赋值0;

(3)最后把步骤(2)得到的N个二进制码串组成一个N维向量即可.

BRIEF算法的优点是计算速度快,耗费内存少,缺点是对噪声敏感和不具备旋转不变性.ORB算法中使用像素块灰度和比较取代像素点灰度比较解决噪声敏感问题,另外ORB算法根据角度参数提取BRIEF描述子以及贪心算法解决旋转不变性问题[5].

1.4 图像特征点描述匹配

生成目标图像和模板图像的特征点描述后,就需要进行特征点描述匹配.本文使用BruteForceMatcher算法,该算法对两帧图像中每一个特征点与所有的特征点测量描述子的距离,然后排序,取距离最小的一个作为匹配点.描述子距离使用汉明算法,表明了两个特征之间的相似程度.两个等长字符串之间的汉明距离是两个字符串对应位置的不同字符的个数[8].例如,1011101 与 1001001 之间的汉明距离是2.

2 程序实现

2.1 安装OpenCVSharp

系统使用OpenCVSharp实现.OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux,Windows和Mac OS操作系统上.OpenCV于1999年由Intel建立,如今由Willow Garage提供支持.它轻量级而且高效,实现了图像处理和计算机视觉方面的很多通用算法.

OpenCVSharp是OpenCV的C#版本,它的特点有:

(1)直接封装了OpenCV方法,降低了学习的难度;

(2)大部分继承了IDisposable接口,方便使用using语句;

(3)可以直接调用原始风格的OpenCV方法;

(4)可以将图像对象直接转换成GDI使用的Bitmap.

OpenCVSharp的是https://github.com/shimat/opencvsharp.OpenCVSharp在VS中的环境配置是使用NuGet(库程序包管理器).Nuget是.NET中开源包管理工具,可以让开发人员简单地合并第三方的组件库,能更方便地把一些DLL和文件添加到项目中,而不需要从文件中复制.当需要分享开发的工具或是库,需要建立一个Nuget package,然后把这个package放到Nuget的站点.如果想要使用别人已经开发好的工具或是库,只需要从站点获得这个package,并且安装到自己的Visual Studio项目或是解决方案里.

本文使用Visual Studio 2019平台开发,如图3所示.通过【工具】【NuGet包管理器】【管理解决方案的NuGet程序包】菜单项,打开NuGet管理界面,如图4所示.在搜索框中输入“OpenCVSharp”,选择搜索结果中的“OpenCvSharp3-AnyCPU”,在右侧NuGet包信息界面中勾选当前解决方案,点击“安装”按钮即可[9].

2.2 实现代码

程序实现代码及注释如下所示:

3 结 语

本文结合校办工厂,模具课程实现了基于计算机视觉的车床零件自动检测程序,提升了车间自动化程度,同时让学生了解了计算机视觉原理,并能初步进行开发.起初学生觉得计算机视觉与自己无关,是遥不可及,神秘莫测的,只有大学生、研究生才能胜任.现在学生们觉得计算机視觉变得容易理解,并可以自己动手实现,增强了学生的自信心,专业技能以及解决问题的能力.

图5 图像匹配效果图

参 考 文 献

[1]杨薇.基于VC++的彩像转灰度图像[J]. 保山学院学报,2014,33(2):30-32.

[2]佚名.ORB算法介绍[EB/OL]. [2018-02-13]. https://docs.opencv.org/3.4.1/d1/d89/tutorial_py_orb.html.

[3]佚名. FAST算法介绍[EB/OL]. [2018-02-13]. https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_feature2d/py_fast/py_fast.html.

[4]高晶,陈莉,兰小艳,等.基于FAST特征点提取的图像拼接算法[J]. 西北大学学报(自然科学版),2016,46(3):9-11.

[5]陈玉. 一种改进的ORB算法在图像匹配中的应用[J]. 微型机与应用,2017,36(16):37-40.

[6]佚名. BRIEF算法介绍[EB/OL]. [2018-02-18]. https://docs.opencv. org/3.0-beta/doc/py_tutorials/py_feature2d/py_brief/py_brief.html.

[7]杜辉.基于改进BRIEF算法的物流编码识别技术[J]. 物流技术,2015(7):261-264.

[8]林崧,刘晓芬,姚志强.一种基于汉明码的数字水印算法[J]. 福建师范大学学报(自然科学版),2004(4):24-27.

[9]佚名.安装管理开源包[EB/OL]. [2018-05-12]. https://docs.microsoft.com/en-us/nuget/consume-packages/install-use-packages-visual-studio.

[10]廖春萍.基于OpenCV的人脸识别系统[J].东莞理工学院学报,2017,24(3):33-38.

本文总结,此文是一篇适合不知如何写计算机视觉方面的计算机视觉和自动车床专业大学硕士和本科毕业论文以及关于计算机视觉和自动车床论文开题报告范文和相关职称论文写作参考文献资料.

计算机视觉和自动车床引用文献:

[1] 计算机视觉和自动车床本科毕业论文范文 关于计算机视觉和自动车床在职研究生论文范文2万字
[2] 计算机视觉论文范文 关于计算机视觉类论文范文素材2万字
[3] 计算机视觉和电脑学士学位论文范文 关于计算机视觉和电脑相关在职毕业论文范文5000字
《计算机视觉和自动车床本科毕业论文范文 关于计算机视觉和自动车床在职研究生论文范文2万字》word下载【免费】
计算机视觉和自动车床相关论文范文资料