一种基于自主机器人的多目标精准定位识别方法与流程

文档序号:22086641发布日期:2020-09-01 20:08阅读:297来源:国知局
一种基于自主机器人的多目标精准定位识别方法与流程

本发明属于机器人巡检技术领域,具体涉及一种基于自主机器人的多目标精准定位识别方法。



背景技术:

自主机器人是其本体自带各种必要的传感器、控制器,在运行过程中无外界人为信息输入和控制的条件下,可以独立完成一定的任务的机器人。

随着人工智能技术的逐渐兴起,各地也纷纷开始了自主机器人的研发。通常自主机器人的研发目的都是为了去检测某些设备的状态,或者识别某些设备的读数。自主机器人一般都会在车身上装载激光雷达、imu等导航方式实现自主导航;装载云台、可见光摄相机、红外摄像机以实现设备图像信息的采集,以供后续的图像识别。现有的自主机器人运作的流程一般如下:先由自主导航行驶到设备附近,然后配置并存储好云台的俯仰角、旋转角,相机的焦距信息等,在下一次巡检时读取之前存储好的对应位置的信息,最后采集设备图像,识别设备状态。

但是现有的自主机器人运作流程存在一些问题,一是:在检测过程中,一旦检测目标点过多,需要花费大量时间去配置巡检信息;二是:导航技术会存在一定的误差,也就是说自主机器人在自主巡检到任务点时很可能会偏离原来的位置,这样会导致采集到的图像部分缺失或者完全丢失,最终识别出错,从而导致后续对图像中具体信息的分析出错,导致图像信息的提取失败。



技术实现要素:

本发明的一个目的是解决至少上述问题和/或缺陷,并提供至少后面将说明的优点。

为了实现根据本发明的这些目的和其它优点,提供了一种基于自主机器人的多目标精准定位识别方法,包括以下步骤:

步骤s1、检测前预作业:通过自主机器人在巡检点拍摄基准图像训练目标检测模型;

步骤s2、正式检测:根据定位导航将自主机器人行驶到一个目标检测点,拍摄得到目标检测点的图像a;

步骤s3、将图像a输入到目标检测模型内,得到图像a内包含的待检测目标,包含以下两种情况;

情况一、能够得到图像a中的全部目标:并且全部目标识别成功,则自主机器人据定位导航行驶到下一个目标检测点,重复步骤s2~步骤s3;若部分目标未能识别成功,则调整自主机器人的云台ptz参数,进行图像的平移缩放,再进行检测,直到所有的目标被识别完毕或识别失败,判定检测失败并记录;

情况二、仅能够得到图像a中的部分目标:则调整云台ptz参数,重新拍摄得到包含所有目标检测点的图像b,重复情况一,直到所有的目标被识别完毕。

优选的是,所述步骤s1中的通过基准图像训练目标检测模型的具体步骤为:

步骤s11、将自主机器人行驶到一个巡检点,人工调整云台ptz参数,在此巡检点正对多目标场景拍摄一张图像作为基准图像,并存储此巡检点的云台ptz参数;

步骤s12、以基准图像的左上角作为坐标原点(0,0),建立x-y坐标系,并使用标准软件标注基准图像中所有目标在图像中的位置信息,该位置信息为包围目标的矩形框的左上角坐标on(xn,yn)和矩形框的长度、宽度,并存储到配置文件中;

步骤s13、在基准图像中选择一个特征丰富、易识别且靠近图像中央的目标作为标志目标并得到标志目标的位置信息,该位置信息为包围标志目标的矩形框的左上角坐标o0(x0,y0)和用于计算标志目标面积的矩形框长度、宽度;

步骤s14、通过标志目标的位置信息,计算出标志目标与x-y坐标系的x轴和y轴的距离分别为x0、y0,并将x0、y0作为基准距离;

步骤s15、人工调整云台的ptz参数,并进行图像缩放,并以图像左上角作为坐标原点(0,0),根据各个目标的检测需求,依次采集目标所需检测的细节图像数据,使用标准软件标注并存储所有的细节图像数据中各个目标在图像中的位置,得到数据集文件;

步骤s16、将数据集输入到目标检测框架进行训练,最终得到一个用于检测目标个数和检测目标细节图像数据的目标检测模型。

优选的是,目标检测模型使用的标注软件为vott标注软件,标注完成后,可通过软件导出数据集文件;使用的检测算法为yolov3目标检测算法,目标检测框架为darknet目标检测框架。

优选的是,所述ptz参数包括云台的水平旋转角度、垂直旋转角度和云台相机焦距。

优选的是,在步骤s3中,所述云台ptz参数调整的具体方法包括:

图像a中标志目标的坐标为a(ax,ay),基准图像中的标志目标的坐标为o0(x0,y0),计算图像a中标志目标与基准图像中的标志目标相对于坐标原点的距离,相比较得出图像a中标志目标发生的x轴偏移量dx、y轴偏移量dy,并得到图像缩放比例dz:

dx=|ax-x0|

dy=|ay-y0|

其中,ax、x0分别表示标志目标在图像a和基准图像中的左上角x坐标,ay、y0分别表示标志目标在图像a和基准图像中的左上角y坐标,sa、sb分别表示标志目标在图像a和基准图像中的面积;

云台ptz参数和图像位移缩放之间存在比例关系如下:

θp=dx*fp

θt=dy*ft

α=dz*fz

其中,θp表示水平偏转角度,dx表示图像x轴偏移量;

θt表示垂直偏转角度,dy表示图像y轴偏移量;

α表示相机焦距需调整的倍数,dz表示图像缩放比例;

其中,fp、ft、fz为已知的固定值,在训练目标检测模型的过程中,训练得到,具体步骤包括:

步骤1、在固定点上,正对目标a拍摄一张图像c,以图像c的左上角作为坐标原点(0,0),建立x-y坐标系,并记录目标a的中心点坐标(x1,y1);

步骤2、人工调整ptz参数,使得云台在水平旋转一定的角度θ,此过程中,目标a一直处于视野内,再次记录目标中心点的坐标(x2,y1),由于只存在水平旋转,坐标的y值不变,可计算得出

步骤3、人工调整ptz参数,使得云台在垂直方向上旋转一定的角度θ,此过程中,目标a一直处于视野内,再次记录目标中心点的坐标(x1,y2),由于只存在垂直方向旋转,坐标的x值不变,可计算得出

步骤4、调整云台摄像机的焦距为α倍,记录目标a缩放前后的面积s1和s2,可以计算出

本发明至少包括以下有益效果:

本发明通过对预存多目标的位置,使用目标检测技术结合云台ptz参数和图像位移缩放之间的比例关系对目标进行精确定位检测,可以省略掉云台位置以及摄像机的焦距等信息的预先配置,大大减小了工作的冗杂性,通过一次性识别摄像机所能拍摄的大场景内的所有目标的细节信息,提高自主机器人识别系统的运行效率,方便实现后续图像信息的提取。

本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。

附图说明:

图1为本发明提供的基准图像示意图;

图2为本发明提供的建立坐标系后基准图像示意图;

图3为本发明提供的目标b缩放后示意图;

图4为本发明提供的只包含部分目标的图像a示意图;

图5为本发明提供的只包含部分目标的图像a建立坐标系后示意图;

图6为本发明提供的图像b示意图。

具体实施方式:

下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。

应当理解,本文所使用的诸如“具有”、“包含”以及“包括”术语并不配出一个或多个其它元件或其组合的存在或添加。

实施例1:

如图1-6所示的一种基于自主机器人的多目标精准定位识别方法,包括以下步骤:

步骤s1、检测前预作业:将自主机器人行驶到一个巡检点,人工调整云台ptz参数,其中,ptz参数包括云台的水平旋转角度、垂直旋转角度和云台相机焦距,在此巡检点正对多目标场景拍摄一张图像作为基准图像,如图1所述,并存储此巡检点的云台ptz参数;以基准图像的左上角作为坐标原点(0,0),建立x-y坐标系,并使用vott标注软件标注基准图像中所有目标(目标a、目标b、目标c、目标d、目标e、目标f)在图像中的位置信息,该位置信息为包围目标的矩形框的左上角坐标on(xn,yn)和矩形框的长度、宽度,并存储到配置文件中;在基准图像中选择一个特征丰富、易识别且靠近图像中央的目标作为标志目标(目标a)并得到标志目标的位置信息,如图2所示,该位置信息为包围标志目标的矩形框的左上角坐标o0(x0,y0)和用于计算标志目标面积的矩形框长度、宽度;通过标志目标的位置信息,计算出标志目标与x-y坐标系的x轴和y轴的距离分别为x0、y0,并将x0、y0作为基准距离;人工调整云台的ptz参数,并进行图像缩放,通过多次的训练可以得到,能够保证图像最清晰的缩放比例为六分之一,并以图像左上角作为坐标原点(0,0),根据各个目标的检测需求,依次采集目标所需检测的细节图像数据,使用vott标注软件标注并存储所有的细节图像数据中各个目标在图像中的位置,得到数据集文件;将数据集输入到darknet目标检测框架,配合yolov3目标检测算法进行训练,最终得到一个用于检测目标个数和检测目标细节图像数据的目标检测模型;

在人工调整云台ptz参数的过程中,保持自主机器人位置不变,正对目标a拍摄一张图像c,以图像c的左上角作为坐标原点(0,0),建立x-y坐标系,并记录目标a的中心点坐标(x1,y1);人工调整ptz参数,使得云台在水平旋转一定的角度θ,此过程中,目标a一直处于视野内,再次记录目标中心点的坐标(x2,y1),由于只存在水平旋转,坐标的y值不变,可计算云台水平旋转角度与目标a水平的平移量之间的比例关系:人工调整ptz参数,使得云台在垂直方向上旋转一定的角度θ,此过程中,目标a一直处于视野内,再次记录目标中心点的坐标(x1,y2),由于只存在垂直方向旋转,坐标的x值不变,可计算云台垂直方向旋转角度与目标a垂直方向的平移量之间的比例关系:调整云台摄像机的焦距为α倍,记录目标a缩放前后的面积s1和s2,可以计算出焦距变化时,图像的缩放比例关系:得到的比例关系fp、ft、fz为已知的固定值,用于后续的图像调整;

步骤s2、正式检测:根据定位导航信息将自主机器人行驶到一个目标检测点,此时,自主机器人在目标检测点停车的误差不会太大,读取并调用检测前预作业过程中存储的云台ptz参数,通过自主机器人拍摄得到目标检测点的一张图像a;

步骤s3、将拍摄得到图像a输入到目标检测模型内,得到图像a内包含的待检测目标,包含以下两种情况;

情况一、通过目标检测模型能够得到图像a中的全部目标(目标a、目标b、目标c、目标d、目标e、目标f),且所有(目标a、目标b、目标c、目标d、目标e、目标f)目标均能识别成功,则自主机器人据定位导航行驶到下一个目标检测点,重复步骤s2~步骤s3;若部分目标(目标b)未能识别成功,此时,图像a中目标b的坐标为b(bx,by),基准图像中目标b的坐标为ob(xb,yb),如图3所示,计算图像a中目标b的坐标与基准图像中的目标b相比较所发生的x轴偏移量dx、y轴偏移量dy以及图像缩放比例dz;

其中:

dx=|bx-xb|

dy=|by-yb|

其中,bx、xb分别表示目标b在图像a和基准图像中的左上角x坐标,by、yb分别表示目标b在图像a和基准图像中的左上角y坐标,sa、sb分别表示目标b在图像a和基准图像中的面积。

并且云台ptz参数和图像位移缩放之间存在比例关系如下:

θp1=dx*fp

θt1=dy*ft

α1=dz*fz

其中,θp1表示水平偏转角度,dx表示图像x轴偏移量;θt1表示垂直偏转角度,dy表示图像y轴偏移量;α1表示相机焦距需调整的倍数,dz表示图像缩放比例;

从而调整云台ptz参数,使得云台在水平方向和竖直方向上旋转相应的角度,使未识别到的目标b平移到图像正中,再将图像大小缩放为原始图像的六分之一,使用目标检测模型检测当前的图像,目标b识别成功,则自主机器人据定位导航行驶到下一个目标检测点,直到所有的目标被识别完毕,若多次检测识别,目标仍识别失败,判定检测失败并记录;

情况二、若通过目标检测模型仅能够得到图像a中的部分目标(目标a、目标b、目标d、目标e),如图4所示,此时,建立坐标系,图像a中标志目标(目标a)的坐标为a(ax,ay),如图5所示,基准图像中的标志目标(目标a)的坐标为o0(x0,y0),计算图像a中标志目标(目标a)与基准图像中的标志目标(目标a)相比较所发生的x轴偏移量dx、y轴偏移量dy以及图像缩放比例dz;

其中:

dx=|ax-x0|

dy=|ay-y0|

其中,ax、x0分别表示标志目标在图像a和基准图像中的左上角x坐标,ay、y0分别表示标志目标在图像a和基准图像中的左上角y坐标,sa、sb分别表示标志目标在图像a和基准图像中的面积。

并且云台ptz参数和图像位移缩放之间存在比例关系如下:

θp2=dx*fp

θt2=dy*ft

α2=dz*fz

其中,θp2表示水平偏转角度,dx表示图像x轴偏移量;θt2表示垂直偏转角度,dy表示图像y轴偏移量;α2表示相机焦距需调整的倍数,dz表示图像缩放比例;

调整云台ptz参数,使得云台在水平方向和竖直方向上旋转相应的角度,重新拍摄得到目标检测点的图像b,如图6所示,重复情况一,直到所有的目标被识别完毕。

这里说明的设备数量和处理规模是用来简化本发明的说明的。对本发明的基于自主机器人的多目标精准定位识别方法的应用、修改和变化对本领域的技术人员来说是显而易见的。

尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1