手机版

百科游戏 手游攻略

机器人迷宫(机器人是如何走出迷宫的)

百科 2026-02-09 17:35:51 手游攻略 阅读:1040次

大家好,今天来为大家分享机器人迷宫的一些知识点,和机器人是如何走出迷宫的的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!

机器人是如何走出迷宫的

首先,我们要了解,机器人领域的视觉(MachineVision)跟计算机领域(ComputerVision)的视觉有一些不同:机器视觉的目的是给机器人提供操作物体的信息。所以,机器视觉的研究大概有这几块:

物体识别(ObjectRecognition):在图像中检测到物体类型等,这跟CV的研究有很大一部分交叉;

位姿估计(PoseEstimation):计算出物体在摄像机坐标系下的位置和姿态,对于机器人而言,需要抓取东西,不仅要知道这是什么,也需要知道它具体在哪里;

相机标定(CameraCalibration):因为上面做的只是计算了物体在相机坐标系下的坐标,我们还需要确定相机跟机器人的相对位置和姿态,这样才可以将物体位姿转换到机器人位姿。

当然,我这里主要是讲物体定位领域的机器视觉;SLAM等其他领域的就先不讲了。算法肯定也是有的。

由于视觉是机器人感知的一块很重要内容,所以研究也非常多了,我就我了解的一些,按照由简入繁的顺序介绍吧:

1.相机标定

这其实属于比较成熟的领域。由于我们所有物体识别都只是计算物体在相机坐标系下的位姿,但是,机器人操作物体需要知道物体在机器人坐标系下的位姿。所以,我们先需要对相机的位姿进行标定。内参标定就不说了,参照张正友的论文,或者各种标定工具箱;外参标定的话,根据相机安装位置,有两种方式:

EyetoHand:相机与机器人极坐标系固连,不随机械臂运动而运动

EyeinHand:相机固连在机械臂上,随机械臂运动而运动两种方式的求解思路都类似,首先是眼在手外(EyetoHand)

只需在机械臂末端固定一个棋盘格,在相机视野内运动几个姿态。由于相机可以计算出棋盘格相对于相机坐标系的位姿、机器人运动学正解可以计算出机器人底座到末端抓手之间的位姿变化、而末端爪手与棋盘格的位姿相对固定不变。

而对于眼在手上(EyeinHand)的情况,也类似,在地上随便放一个棋盘格(与机器人基座固连),然后让机械臂带着相机走几个位姿,然后也可以形成一个的坐标环。

2平面物体检测

这是目前工业流水线上最常见的场景。目前来看,这一领域对视觉的要求是:快速、精确、稳定。所以,一般是采用最简单的边缘提取+边缘匹配/形状匹配的方法;而且,为了提高稳定性、一般会通过主要打光源、采用反差大的背景等手段,减少系统变量。

目前,很多智能相机(如cognex)都直接内嵌了这些功能;而且,物体一般都是放置在一个平面上,相机只需计算物体的三自由度位姿即可。另外,这种应用场景一般都是用于处理一种特定工件,相当于只有位姿估计,而没有物体识别。当然,工业上追求稳定性无可厚非,但是随着生产自动化的要求越来越高,以及服务类机器人的兴起。对更复杂物体的完整位姿估计也就成了机器视觉的研究热点。

3.有纹理的物体

机器人视觉领域是最早开始研究有纹理的物体的,如饮料瓶、零食盒等表面带有丰富纹理的都属于这一类。当然,这些物体也还是可以用类似边缘提取+模板匹配的方法。但是,实际机器人操作过程中,环境会更加复杂:光照条件不确定(光照)、物体距离相机距离不确定(尺度)、相机看物体的角度不确定(旋转、仿射)、甚至是被其他物体遮挡(遮挡)。

幸好有一位叫做Lowe的大神,提出了一个叫做SIFT(Scale-invariantfeaturetransform)的超强局部特征点:Lowe,DavidG."Distinctiveimagefeaturesfromscale-invariantkeypoints."Internationaljournalofcomputervision60.2(2004):91-110.具体原理可以看上面这篇被引用4万+的论文或各种博客,简单地说,这个方法提取的特征点只跟物体表面的某部分纹理有关,与光照变化、尺度变化、仿射变换、整个物体无关。因此,利用SIFT特征点,可以直接在相机图像中寻找到与数据库中相同的特征点,这样,就可以确定相机中的物体是什么东西(物体识别)。

对于不会变形的物体,特征点在物体坐标系下的位置是固定的。所以,我们在获取若干点对之后,就可以直接求解出相机中物体与数据库中物体之间的单应性矩阵。如果我们用深度相机(如Kinect)或者双目视觉方法,确定出每个特征点的3D位置。那么,直接求解这个PnP问题,就可以计算出物体在当前相机坐标系下的位姿。

4.无纹理的物体

好了,有问题的物体容易解决,那么生活中或者工业里还有很多物体是没有纹理的

我们最容易想到的就是:是否有一种特征点,可以描述物体形状,同时具有跟SIFT相似的不变性?不幸的是,据我了解,目前没有这种特征点。所以,之前一大类方法还是采用基于模板匹配的办法,但是,对匹配的特征进行了专门选择(不只是边缘等简单特征)。

这里,我介绍一个我们实验室之前使用和重现过的算法LineMod:Hinterstoisser,Stefan,etal."Multimodaltemplatesforreal-timedetectionoftexture-lessobjectsinheavilyclutteredscenes."ComputerVision(ICCV),2011IEEEInternationalConferenceon.IEEE,2011.

简单而言,这篇论文同时利用了彩色图像的图像梯度和深度图像的表面法向作为特征,与数据库中的模板进行匹配。由于数据库中的模板是从一个物体的多个视角拍摄后生成的,所以这样匹配得到的物体位姿只能算是初步估计,并不精确。但是,只要有了这个初步估计的物体位姿,我们就可以直接采用ICP算法(Iterativeclosestpoint)匹配物体模型与3D点云,从而得到物体在相机坐标系下的精确位姿。

当然,这个算法在具体实施过程中还是有很多细节的:如何建立模板、颜色梯度的表示等。另外,这种方法无法应对物体被遮挡的情况。(当然,通过降低匹配阈值,可以应对部分遮挡,但是会造成误识别)。针对部分遮挡的情况,我们实验室的张博士去年对LineMod进行了改进,但由于论文尚未发表,所以就先不过多涉及了。

5.深度学习

由于深度学习在计算机视觉领域得到了非常好的效果,我们做机器人的自然也会尝试把DL用到机器人的物体识别中。

首先,对于物体识别,这个就可以照搬DL的研究成果了,各种CNN拿过来用就好了。有没有将深度学习融入机器人领域的尝试?有哪些难点?-知乎这个回答中,我提到2016年的『亚马逊抓取大赛』中,很多队伍都采用了DL作为物体识别算法。然而,在这个比赛中,虽然很多人采用DL进行物体识别,但在物体位姿估计方面都还是使用比较简单、或者传统的算法。似乎并未广泛采用DL。如@周博磊所说,一般是采用semanticsegmentationnetwork在彩色图像上进行物体分割,之后,将分割出的部分点云与物体3D模型进行ICP匹配。

当然,直接用神经网络做位姿估计的工作也是有的,如这篇:Doumanoglou,Andreas,etal."Recovering6dobjectposeandpredictingnext-best-viewinthecrowd."ProceedingsoftheIEEEConferenceonComputerVisionandPatternRecognition.2016.

它的方法大概是这样:对于一个物体,取很多小块RGB-D数据(只关心一个patch,用局部特征可以应对遮挡);每小块有一个坐标(相对于物体坐标系);然后,首先用一个自编码器对数据进行降维;之后,用将降维后的特征用于训练HoughForest。

6.与任务/运动规划结合

这部分也是比较有意思的研究内容,由于机器视觉的目的是给机器人操作物体提供信息,所以,并不限于相机中的物体识别与定位,往往需要跟机器人的其他模块相结合。

我们让机器人从冰箱中拿一瓶『雪碧』,但是这个『雪碧』被『美年达』挡住了。我们人类的做法是这样的:先把『美年达』移开,再去取『雪碧』。所以,对于机器人来说,它需要先通过视觉确定雪碧在『美年达』后面,同时,还需要确定『美年达』这个东西是可以移开的,而不是冰箱门之类固定不可拿开的物体。当然,将视觉跟机器人结合后,会引出其他很多好玩的新东西。由于不是我自己的研究方向,所以也就不再班门弄斧了。

更详细的图文解析可以到机器人家上去看,我这边就不贴出来了,希望对你有用

乐高机器人走迷宫的程序怎么设置

弄个分支判断,上面的等待图标为光电2,下面为4,等到两个光电都看不见黑线的时候,让它只往一个方向拐弯,加上无限循环就行了。

前两行是我很久以前出的了,都过去几周了,你倒是答个话啊!

你倒是快点啊!采纳或者追问都行!要不我太无聊了!

迷宫机器人是什么

迷宫机器人是使用嵌入式微控制器、智能传感器、运动部件组成的智能行走装置。但在比赛形式上与智能鼠有所不同,这项比赛增加了虚拟仿真竞赛部分。比之前比的内容更全面了。

好了,文章到这里就结束啦,如果本次分享的机器人迷宫和机器人是如何走出迷宫的问题对您有所帮助,还望关注下本站哦!

本文链接:https://bk.89qw.com/a-1006737

最近发表
网站分类