基于视觉识别的机械手运动仿真——视觉识别毕业论文
2021-04-05 14:52:08
摘 要
在基于视觉识别的运动仿真中,需要用到视觉识别技术去分辨正在测试的物体,去测量尺寸大小,方向位置等以便机械手在运动仿真时能够准确进行运动以达到运动目的,本篇将选取五种类型不同的物体在不同尺寸,不同方向时的图像来进行视觉识别,以完成上述任务。首先是对得到的图像进行前期处理,包括去噪,边缘检测,锐化等,然后再对处理后的图像中区分并分离参考物的轮廓和被测物的轮廓,然后对该两种外部轮廓提取,对参考物的轮廓进行初步检测,本文在前期类型筛选时通过对训练集进行KNN机器学习算法,而特征的选择有两种方案,该两种方案分别是图像不变矩特征与傅里叶描述子特征,本文会比较两种特征在本案例的正确率选择合适的特征,或者结合两个特征。检测大致类型后,再根据其相应类型对其方向,大小,位置等信息进行计算,可能还会对某些中心对称类型进行区分,区分其是否是翻转后的物体,本方法是用OpenCV python下进行编程,来选取合适的算法,而环境是在类似工业夹取时的工作环境下,所以选择在SolidWorks的环境下进行拍照来模拟现实环境。
关键词:OpenCV;python;机器学习;KNN;视觉识别
Abstract
In visual motion-based motion simulation, visual recognition technology is needed to distinguish the object being tested, to measure the size, direction position, etc. so that the robot can accurately perform motion during motion simulation to achieve the purpose of motion. The images of different types of objects in different sizes and different directions are visually recognized to accomplish the above tasks. The first is to perform pre-processing on the obtained image, including denoising, edge detection, sharpening, etc., and then distinguish and separate the contour of the reference object and the contour of the measured object from the processed image, and then the two external contours. Extraction, preliminary detection of the contour of the reference object. In the early type screening, the KNN machine learning algorithm is applied to the training set, and the feature selection has two schemes. The two schemes are the image invariant moment feature and the Fourier descriptor characteristics, this article will compare the two features in the case of the correct rate to select the appropriate features, or combine the two features. After detecting the approximate type, it calculates the direction, size, position and other information according to its corresponding type. It may also distinguish some central symmetric types to distinguish whether it is a flipped object. This method uses OpenCV python. Programming is done to select the appropriate algorithm, and the environment is in a working environment similar to industrial picking, so choose to take photos in the SolidWorks environment to simulate the real environment.
Key Words:OpenCV;python,;machine learning,;KNN; visual recognition
目录
第1章 绪论 1
1.1机器视觉发展简史 1
1.2 机器视觉研究现状 1
1.2.1机器视觉国外研究现状 1
1.2.1机器视觉国内研究现状 2
1.3毕设的目的及意义 2
第2章 系统需求分析与架构设计 4
2.1 架构设计 4
2.2 系统需求分析 5
第3章 目标提取 1
3.1模拟环境 1
3.2图像处理 2
3.2.1图像滤波 2
3.2.2边缘检测 3
3.2.3 自适应阈值处理 8
3.3目标提取总结 9
第4章 类别识别 12
4.1图像矩 12
4.1.1图像几何矩简介 12
4.1.2图像几何矩计算公式 13
4.2图像傅里叶描述子 14
4.2.1图像傅里叶变换简述 14
4.2.2图像傅里叶描述子的简介 14
4.2.3计算傅里叶描述子过程 14
4.3 机器学习KNN算法 16
4.3.1 KNN算法介绍 16
4.3.2 hu矩运用到KNN 16
4.3.3 归一化傅里叶描述子运用到KNN 17
4.4 综合利用 18
第5章 尺寸位置方向识别 19
5.1 0.0类的分析 19
5.2 1.0与2.0类的分析 19
5.2.1 1.0与2.0类的位置计算 19
5.2.2 1.0与2.0类的方向识别 20
5.2.3 1.0与2.0类的镜像识别 21
5.2.4 1.0与2.0类的尺寸计算 23
5.3 3.0类 25
5.3.1 3.1与3.3类的精确分辨 26
5.3.2 3.0类的位置与尺寸计算 26
5.4 4.0类 27
5.4.1 4.2与4.3类的精确分辨 28
5.4.2 4.2与4.3类尺寸与位置计算 28
5.4.3 4.1类的尺寸方向计算 28
5.5 各类的高度计算 31
5.6 计算时的误差问题 32
第6章 毕业设计总结 33
参考文献 35
致谢 36
第1章 绪论
1.1机器视觉发展简史
在20 世纪50 年代主要运用在二维图像分析和识别上的统计模式识别便是机器视觉的前期雏形,当时,机器视觉借由工业自动化技术的发展使得自己不断完善,并与机器学习相辅相成。其技术探索本质上是在美国学者L.R. Roberts提出了关于理解多面体组成的“积木世界”的研究之后才开始的。70 年代中期,“机器视觉”(Machine Vision)课程在70 年代中期获得了进入顶级学府麻省理工的机会,并在其课程的基础上,David Marr 教授于1977 年提出了计算机视觉(computational vision)理论——也就是著名的Marr视觉理论,该理论与先前的“积木世界”分析方法不同。 90年代,得到发展机会的机器视觉理论体系开始在工业领域崭露头角,而且还获得了不错的成果。于此同时,机器视觉理论也在多视几何领域方面快速发展。
1.2国内外发展研究现状:
所谓机器识别是指用计算机来实现人的视觉功能。机器人视是指将计算机视觉技术结合机电一体化等技术一同应用于机器人技术中,相当于给了机器人一双或多双“眼睛”,来让机器人通过自己的视觉系统来进行对环境及工作的适应以达到生产或者运输等目的,前期的视觉技术是通过相机等传感器来或得目标图像,然后对感兴趣区域及ROX区域进行特征匹配等处理,并以获得的信息来建立合适的坐标系,计算出需要的参数后,反馈给机器人或者机械手来进行正确的运动,以达到目的。基于视觉识别的机械手也是属于机器人视觉的一种
1.2 机器视觉研究现状
1.2.1机器视觉国外研究现状
当今智能化与数字化作为先进的制造技术与机电一体化技术的主流方向,而作为其组件之一的上下料机器手必然也要向该方向看齐,而在国外真正意义上具有机器视觉系统的机器人或者机械手的公司主要包括瑞典ABB-Robotics和日本的FANUC等。
目前,在欧美、日本等发达国家发展的相对较快的机器视觉技术体系逐渐与其相关领域开始接轨,并且随着应用数量的提升直接促使其应用发展日渐成熟,例如电子行业、建筑行业,半导体行业和机械行业等都对该技术进行完善与大规模运用,而且这些行业也间接让机器视觉技术变得越发受人重视,使得该技术体系进入良性发展循环。在国外,机器视觉技术已经可以被清楚地分为三个部分:底层开发部分、二次开发部分、最终使用部分[1]。底层开发部分是指开发通用机器视觉系统。二次开发部分是专门使用通用机器视觉系统,为最终需求方搞二次开发,开发各种专用的系统。最终使用部分的用户是真正将机器视觉系统应用到各个领域中的人,他们使用已经开发成型的机器视觉系统,并且负责对系统进行测试评估[2]。
到了21世纪,在国外机器视觉技术已经大规模地应用于多个领域。按照应用的领域与技术的特点进行划分,机器视觉进一步可以被分为工业视觉、计算机视觉这两大基础类,倘若按照应用领域又可以划分为智能制造和智能生活两类,比如工业探伤、跟踪报警、自动焊接、医学诊断、移动机器人、模拟战场、指纹识别、医疗、智能家居、无人机与无人驾驶、等等[2]。
1.2.1机器视觉国内研究现状
在国内上世纪八十年代时,便兴起了科技单位与学术单位联合研发工业机器人的热潮,虽然获得了不少研究成果,但相对于国外研究还是相形见绌,而视觉方面的机器人成果就更少了。
本世纪初,机器视觉与其技术的概念才被引进到中国,但是在之后的很长一段时间内,还处于推广普及期的机器视觉技术和国外先进的机器视觉技术相比差距比较大,这是由于国内软硬件的组态集成开发能力弱,间接导致开发成本升高、然后直接造成效率降低。虽然国内机器视觉技术与国外存在较大差距,但是在相机、视觉软件、光源等机器视觉产品的研发方面还是取得了一些让人满意的成果[3]。近年来国内一些相关大专院校、研究所和企业在机器视觉技术领域进行了积极而又广泛的合作,并进行深入的探索和大胆的尝试,逐渐将机器视觉等技术运用到工业生产中,其中大多集中在半导体、电子制造、制药、印刷等行业,汽车制造、包装乃至新能源行业的一些场合也有机器识别技术的身影,并且在该方面热度也逐渐开始升温[4]。目前国内将机器视觉技术应用到钢板加工检测、水火弯板加工检测等尝试还很少,主要集中在对钢板质量缺陷的检测[5]。
1.3毕设的目的及意义
将视觉系统应用到工业上下料机械手当中去,使得机器手具有人眼的功能,能够对不同形状、尺寸的产品或者原料进行区分并按获得的坐标、尺寸、像素等参数进行相对应的夹持、运输、分拣等操作,保证了生成过程中上下料机械手工作的准确性和柔性,提高效率,减少成本,这样也使得基于机器识别的机械手能够适应生产种类或者运输种类繁多的作业,对于使用传统机械手的话,所有的摆放位置跟方向必须得严格控制,而且对于同一类别要求大,倘若是不同类别,则容易出现错误,本毕业设计就是从机器识别算法出发,识别某些不同类别,识别某一范围的位置,识别其形状方向等。
第2章 系统需求分析与架构设计
2.1 架构设计
V
边缘处理