A可儿她姑
首先,我们要了解,机器人领域的视觉(Machine Vision)跟计算机领域(Computer Vision)的视觉有一些不同:机器视觉的目的是给机器人提供操作物体的信息。所以,机器视觉的研究大概有这几块:
物体识别(Object Recognition):在图像中检测到物体类型等,这跟 CV 的研究有很大一部分交叉;
位姿估计(Pose Estimation):计算出物体在摄像机坐标系下的位置和姿态,对于机器人而言,需要抓取东西,不仅要知道这是什么,也需要知道它具体在哪里;
相机标定(Camera Calibration):因为上面做的只是计算了物体在相机坐标系下的坐标,我们还需要确定相机跟机器人的相对位置和姿态,这样才可以将物体位姿转换到机器人位姿。
当然,我这里主要是在物体抓取领域的机器视觉;SLAM 等其他领域的就先不讲了。
由于视觉是机器人感知的一块很重要内容,所以研究也非常多了,我就我了解的一些,按照由简入繁的顺序介绍吧:
0. 相机标定
这其实属于比较成熟的领域。由于我们所有物体识别都只是计算物体在相机坐标系下的位姿,但是,机器人操作物体需要知道物体在机器人坐标系下的位姿。所以,我们先需要对相机的位姿进行标定。 内参标定就不说了,参照张正友的论文,或者各种标定工具箱; 外参标定的话,根据相机安装位置,有两种方式:
Eye to Hand:相机与机器人极坐标系固连,不随机械臂运动而运动
Eye in Hand:相机固连在机械臂上,随机械臂运动而运动 两种方式的求解思路都类似,首先是眼在手外(Eye to Hand)
只需在机械臂末端固定一个棋盘格,在相机视野内运动几个姿态。由于相机可以计算出棋盘格相对于相机坐标系的位姿 、机器人运动学正解可以计算出机器人底座到末端抓手之间的位姿变化 、而末端爪手与棋盘格的位姿相对固定不变。 这样,我们就可以得到一个坐标系环
而对于眼在手上(Eye in Hand)的情况,也类似,在地上随便放一个棋盘格(与机器人基座固连),然后让机械臂带着相机走几个位姿,然后也可以形成一个 的坐标环
这是目前工业流水线上最常见的场景。目前来看,这一领域对视觉的要求是:快速、精确、稳定。所以,一般是采用最简单的边缘提取+边缘匹配/形状匹配的方法;而且,为了提高稳定性、一般会通过主要打光源、采用反差大的背景等手段,减少系统变量。
目前,很多智能相机(如 cognex)都直接内嵌了这些功能;而且,物体一般都是放置在一个平面上,相机只需计算物体的 三自由度位姿即可。 另外,这种应用场景一般都是用于处理一种特定工件,相当于只有位姿估计,而没有物体识别。 当然,工业上追求稳定性无可厚非,但是随着生产自动化的要求越来越高,以及服务类机器人的兴起。对更复杂物体的完整位姿 估计也就成了机器视觉的研究热点。
2. 有纹理的物体
机器人视觉领域是最早开始研究有纹理的物体的,如饮料瓶、零食盒等表面带有丰富纹理的都属于这一类。 当然,这些物体也还是可以用类似边缘提取+模板匹配的方法。但是,实际机器人操作过程中,环境会更加复杂:光照条件不确定(光照)、物体距离相机距离不确定(尺度)、相机看物体的角度不确定(旋转、仿射)、甚至是被其他物体遮挡(遮挡)。
幸好有一位叫做 Lowe 的大神,提出了一个叫做 SIFT (Scale-invariant feature transform)的超强局部特征点: Lowe, David G. "Distinctive image features from scale-invariant keypoints."International journal of computer vision 60.2 (2004): 91-110. 具体原理可以看上面这篇被引用 4万+ 的论文或各种博客,简单地说,这个方法提取的特征点只跟物体表面的某部分纹理有关,与光照变化、尺度变化、仿射变换、整个物体无关。 因此,利用 SIFT 特征点,可以直接在相机图像中寻找到与数据库中相同的特征点,这样,就可以确定相机中的物体是什么东西(物体识别)。
对于不会变形的物体,特征点在物体坐标系下的位置是固定的。所以,我们在获取若干点对之后,就可以直接求解出相机中物体与数据库中物体之间的单应性矩阵。 如果我们用深度相机(如Kinect)或者双目视觉方法,确定出每个特征点的 3D 位置。那么,直接求解这个 PnP 问题,就可以计算出物体在当前相机坐标系下的位姿。
↑ 这里就放一个实验室之前毕业师兄的成果 当然,实际操作过程中还是有很多细节工作才可以让它真正可用的,如:先利用点云分割和欧氏距离去除背景的影响、选用特征比较稳定的物体(有时候 SIFT 也会变化)、利用贝叶斯方法加速匹配等。 而且,除了 SIFT 之外,后来又出了一大堆类似的特征点,如 SURF、ORB 等。
3. 无纹理的物体
好了,有问题的物体容易解决,那么生活中或者工业里还有很多物体是没有纹理的:
我们最容易想到的就是:是否有一种特征点,可以描述物体形状,同时具有跟 SIFT 相似的不变性? 不幸的是,据我了解,目前没有这种特征点。 所以,之前一大类方法还是采用基于模板匹配的办法,但是,对匹配的特征进行了专门选择(不只是边缘等简单特征)。
这里,我介绍一个我们实验室之前使用和重现过的算法 LineMod: Hinterstoisser, Stefan, et al. "Multimodal templates for real-time detection of texture-less objects in heavily cluttered scenes." Computer Vision (ICCV), 2011 IEEE International Conference on. IEEE, 2011.
简单而言,这篇论文同时利用了彩色图像的图像梯度和深度图像的表面法向作为特征,与数据库中的模板进行匹配。 由于数据库中的模板是从一个物体的多个视角拍摄后生成的,所以这样匹配得到的物体位姿只能算是初步估计,并不精确。 但是,只要有了这个初步估计的物体位姿,我们就可以直接采用 ICP 算法(Iterative closest point)匹配物体模型与 3D 点云,从而得到物体在相机坐标系下的精确位姿。
当然,这个算法在具体实施过程中还是有很多细节的:如何建立模板、颜色梯度的表示等。另外,这种方法无法应对物体被遮挡的情况。(当然,通过降低匹配阈值,可以应对部分遮挡,但是会造成误识别)。 针对部分遮挡的情况,我们实验室的张博士去年对 LineMod 进行了改进,但由于论文尚未发表,所以就先不过多涉及了。
4. 深度学习
由于深度学习在计算机视觉领域得到了非常好的效果,我们做机器人的自然也会尝试把 DL 用到机器人的物体识别中。
首先,对于物体识别,这个就可以照搬 DL 的研究成果了,各种 CNN 拿过来用就好了。有没有将深度学习融入机器人领域的尝试?有哪些难点? - 知乎 这个回答中,我提到 2016 年的『亚马逊抓取大赛』中,很多队伍都采用了 DL 作为物体识别算法。 然而, 在这个比赛中,虽然很多人采用 DL 进行物体识别,但在物体位姿估计方面都还是使用比较简单、或者传统的算法。似乎并未广泛采用 DL。 如 @周博磊 所说,一般是采用 semantic segmentation network 在彩色图像上进行物体分割,之后,将分割出的部分点云与物体 3D 模型进行 ICP 匹配。
当然,直接用神经网络做位姿估计的工作也是有的,如这篇: Doumanoglou, Andreas, et al. "Recovering 6d object pose and predicting next-best-view in the crowd." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016.
它的方法大概是这样:对于一个物体,取很多小块 RGB-D 数据(只关心一个patch,用局部特征可以应对遮挡);每小块有一个坐标(相对于物体坐标系);然后,首先用一个自编码器对数据进行降维;之后,用将降维后的特征用于训练Hough Forest。
5. 与任务/运动规划结合
这部分也是比较有意思的研究内容,由于机器视觉的目的是给机器人操作物体提供信息,所以,并不限于相机中的物体识别与定位,往往需要跟机器人的其他模块相结合。
我们让机器人从冰箱中拿一瓶『雪碧』,但是这个 『雪碧』 被『美年达』挡住了。 我们人类的做法是这样的:先把 『美年达』 移开,再去取 『雪碧』 。 所以,对于机器人来说,它需要先通过视觉确定雪碧在『美年达』后面,同时,还需要确定『美年达』这个东西是可以移开的,而不是冰箱门之类固定不可拿开的物体。 当然,将视觉跟机器人结合后,会引出其他很多好玩的新东西。由于不是我自己的研究方向,所以也就不再班门弄斧了。
机器人家上有关于这个很详细的图文讲解,你可以看下,希望对你有用
哒Q小巧
视觉注意在机器人上的应用主要是目标定位、目标识别以及目标跟踪等。视觉注意一般分为自上而下的视觉注意和自上而下的视觉注意;对于在机器人上的应用主要是自上而下(目标驱动)和自下而上(早期视觉特征)在什么时间以什么方式如何很好的结合。
不合理存在
机器人实验教学论文
1改革措施与实践结果
1.1实验平台的建设
为了强化学生在机器人方面的实践环节,首先需要构建机器人实验平台。让学生在课堂教学中了解机器人的基本组成、工作原理等,而学生的综合分析能力和解决问题的能力只能通过实践才能得到锻炼及提升。学生通过课堂教学了解机器人的基本组成、工作原理等,通过实践锻炼提高综合分析能力和解决问题的能力。依托西安交通大学机械基础实验教学中心的资源,将现有的实验教学机器人资源进行整合,构建机器人实验教学平台,包括:开放源代码的固高等国产机器人;具有示教手持盒的日本生产的商业机器人MOTOMAN-SK16、川崎RS10N等工业机器人;进行二次开发、能够组合使用的博时机器人。在机器人实验教学中,为学生的实践环节提供了足够的教学资源。
1.2改革实验教学体系,丰富实验层次
目前的实验教学体系多数为实验教师针对某一点进行实验教学。但是机器人本身具有实践性强、学科融合范围广的特点,机器人实验已经不能仅仅依靠单独的一个实验进行支撑,需要与机械结构、轨迹规划、系统控制、传感器等技术进行融合。目前开展的机器人实验往往着重于某一方面,不同的教师由于个人研究方向不同,或者专业限制,往往开展实验项目侧重自己的方向。但在本科教学中,还需要注重学生知识面的扩展,学生应全面地了解各个方面,开拓学生的眼界,因此机器人实验应增加“广度”。系统级的机器人实验是一种全新的实验形式,它将机械结构分析、建模、传感器技术、机械控制等多学科融合。在实验项目实施中,学生以团队形式进行实验,分工明确,为学生应用多种学科知识提供了平台,培养了学生创新和团队协作能力。在结构部分,小型的博时串联机器人拆装与建模分析、慧鱼模型搭建机器人;在机器人结构实验方面,以六自由度模块化可拆装串联机器人为平台,学生可自由搭建2~6自由度五种组合方式机器人系统。该机器人各关节内部结构多样化,采用了同步齿形带传动、谐波减速传动、行星减速传动、锥齿轮传动、蜗轮蜗杆传动等多种传动方式。每一模块均为透明封装,可直观看到内部传动结构及运动形式,并可将其拆装至螺钉级。通过机器人本体装拆实验可以提高学生对机构中各种传动原理的直观认识,锻炼学生的装配能力,并以此了解零件加工工艺与特点,增强学生对机构运动形式实践的动手操作能力。慧鱼模型是一套由机械构件、传感器、控制部件组成的机电产品。在控制部分,现有的实验仪器分为商业机器人及科教公司研发机器人。商业机器人技术成熟,使用可靠,但控制源代码不开放;科教公司研发机器人源代码开放,但设备使用可靠性较差,因此实验内容需要对两种实验设备进行调整,克服两类实验设备各自的缺点,让两者互补,形成对学生的全面培养。学生在对已有的机械工业中常见机器人使用后,工业中的手持器可供学生直接操作,将教学理论与工业实践并重,学生可以直接通过控制使用了解机器人的基本轨迹规划等,将注意力集中到机器人实验的主要问题中。科教公司研发的机器人源代码开放,学生在学有余力的情况下,能够进行二次开发,将机器人控制技术与传感器技术等相结合,提高学生兴趣,培养学生的创新能力。
1.3教学方法的改革,提高学生兴趣
机器人广泛应用在各个工业领域,实验教学与其中机械部件包括连杆、齿轮、马达、涡轮等,一般工程机械制造所需要的零部件在模型中都能找到,模型中的零件可以在短时间内插装和拆卸,为学生想象力插上了翅膀,在对实际机器人拆装后,组建属于自己的机器人,提高学生兴趣,增强学生对于传动知识的理解。工程应用是互相联系,密不可分的。以实验室中固高柔性制造系统为例,机器人在中间起到了仓储、上下料作用,完全实现了自动化控制,因此在机器人实验的开发中应联系工程背景,提高学生兴趣。实验体系包括常见的机器人运动学实验、动力学分析实验、轨迹规划实验,并且需要让学生明白机器各个部分的组成,因此在实验授课时,控制类教师与机械设计类教师应联合开发机器人实验,使学生将课程中学习的知识运用到实验中,加强理论与实践的结合。在学生使用中,学生可以先从柔性制造系统进行认知机器人广泛应用在各大工业领域,然后进行机器人的拆装,了解机器人的各个组成部分,随后进行自己控制机器人的运动轨迹,对运动轨迹进行规划。在学生全面了解机器人知识后,在综合实验中,学生可以选择偏结构方面的实验,如用慧鱼模型搭建机器人;也可选择偏控制方面实验,如机器人的视觉系统的开发;也可将二者结合,设计出新的机器人结构、系统等。这是一个从认知到实践的过程,符合人的一般认知规律。机器人学科具有更新快的特点,作为教师在教学时不仅需要给学生技术指导,更应该着重培养学生对机器人技术发展趋势的了解,培养学生的创新意识,让学生尽可能参与实验的各个环节,增加学生的主观能动性,包括实验问题的提出、实验机器人的.确定、实验程序(路线)的设计以及分析总结等。只有在实验过程中,学生团队精神、创新能力、动手能力等素质才能得到培养。
1.4考评方法的改革,突出培养学生能力
目前对学生的考核较为单一,仅是考核学生最终的实验结果,不仅不能督促学生对实验结果等进行合理分析,而且对于学生在实验中的操作也忽略了,这对于机器人实验考评而言是不合理的,机器人实验作为一门实践性很强的课程,没有一个唯一确定的答案。机器人结构分析实验可以培养学生空间想象的能力,关注细节的能力,机器人轨迹规划则涉及到数学在实际生活中应用的能力,而软件编程涉及规划能力。它反映了学生的空间想象和规划能力,对新事物的敏感度、以及完成任务的执行力。因此改革学生的实验考评体系非常必要。合理的考评方式不仅能使学生掌握机器人的相关知识,而且能对学生在后期机器人研究中起到一个引导作用。目前机器人实验教学的成绩评定中遇到的突出问题,即做为项目存在的机器人实验在学生评价体系中不应该规定学生的研究范围,而应该对学生综合能力进行考察,这就需要一个多元化和标准化的考核方式。在机器人实验中,学生以小组为单位,互相配合实验,在考核过程中,学生在实验中的过程考评应该占到非常重要的地位。为了避免教师的主观影响,学生应该进行互评,将学生互相之间的评价纳入考核方法。
2结语
经过机器人实验教学改革,学生普遍反应良好,增加了学生的动手实践能力。机器人实验教学改革是一个需要长期积累、不断深化的过程,需要在不断探索中提高总体教学质量,在实际教学中需要重视实践性环节,注重激发学生的学习主动性,培养学生的研究开发兴趣和科学创新精神,激励创新思维,培养学生解决实际问题的能力和创新设计能力。
我的论文,基于STM32的多关节机器人设计,图文详细,绝对满足你的需求 网页链接
随着科技的进步,智能机器人的性能不断地完善,因此也被越来越多的应用于军事、排险、农业、救援、海洋开发等方面。这是我为大家整理的关于机器人的科技论文,供大家参考!
在国外,机器视觉的应用普及主要体现在半导体及电子行业,其中大概40%-50%都集中在半导体行业。具体如PCB印刷电路:各类生产印刷电路板组装技术、设备;单、双面
机器人实验教学论文 1改革措施与实践结果 1.1实验平台的建设 为了强化学生在机器人方面的实践环节,首先需要构建机器人实验平台。让学生在课堂教学中了解机器人的基
机器人是由计算机控制的通过编程具有可以变更的多功能的自动机械,下面是我整理的机器人技术论文,希望你能从中得到感悟! 刍议智能机器人及其关键技术 【摘 要】文章介