技术领域
[0001] 本发明涉及移动体、位置推定方法、计算机程序产品、存储介质以及计算机装置。
相关背景技术
[0002] 以往,在对设置在化工厂等室外的构造物(配管、仪表、阀门等)是否有泄漏或异常进行检查时,检查人员巡视构造物设置场所,通过目视进行检查。针对上述检查作业,近年来开发了一种可通过自主移动的移动体进行无人处理的方法。移动体利用方法,在室外环境下使用GNSS(Global Navigation Satell ite System,全球导航微信系统)定位技术,在比较狭窄的室内环境下使用SLAM(Simultaneous Localization and Mapping,即时定位与地图构建)定位技术,自主移动到目的地。
[0003] 目前已经有可供移动体在室内和室外无缝行走的技术。例如专利文献1(日本专利申请公开公报2018‑206004号)公开了一种技术方案,其利用SLAM技术,使用距离传感器的距离测量结果得到的地形数据,预先制作环境地图,在自主移动时通过环境地图和各时刻的距离数据进行地图匹配,实施自我位置推定。
[0004] 但是现有技术中,例如在GNSS定位精度持续下降的环境中制作环境地图时会发生制作的地图出现变形的情况,造成自主移动时移动体的位置及姿势的精度降低。
具体实施方式
[0038] 以下用移动体、以及移动体进行的位置推定方法作为一例实施本发明的方式,参考附图进行说明。
[0039] [第一实施方式]
[0040] <定位技术的补充说明>
[0041] 自主移动通信技术(SLAM)使用的地图,在开放的室外环境下利用GNSS定位技术,在比较狭窄的室内环境中用LiDAR(Light Detection And Ranging,测距传感器)和照相机制作。为了在广阔但GNSS定位精度不高的场所也能高精度推定位置和姿势,可以使用多个传感器进行地图制作、自我位置推定。
[0042] 为了高精度推定位置和姿势,目前已经有使用GNSS、LiDAR以及照相机等多个传感器,有望获得正确的环境地图制作以及自我位置推定的技术方案。这些技术方案多数采用"将整个环境复原成一个二维或三维的地图,在该地图中推定移动体10的位置"的方法。
[0043] 但是,即使使用多个传感器,也依然难以避免发生变形,准确复原环境。很多情况下需要手工修改地图。在存在变形等的不正确的地图上,各传感器的自我位置推定结果有可能产生偏差,导致行驶不稳定。
[0044] GNSS和LiDAR的位置和姿势的推定。如果GNSS的定位精度良好,则把用LiDAR制作的地图上产生的变形补偿为符合GNSS坐标系,就可以制作出正确的地图。但是,随着GNSS定位精度的不断下降,无法良好地补偿由LiDAR制作的地图中产生的变形,这部分地图将变得不准确。
[0045] 进而,假设在自主移动中用LiDAR制作地图的场所,偶然得到了精度良好的GNSS定位,那么,将LiDAR的扫描数据与地图匹配而得到的自我位置推定结果会偏离GNSS定位结果。于是,移动体将这些自我位置推定结果中的某一个或中间结果作为最终推定结果而进行自主移动,可能导致不正确的行驶。或者需要操作者人工矫正地图中的变形部分以配合GNSS坐标,以避免不正确的行驶。
[0046] 对此,本实施方式即使在广阔且GNSS定位精度不高的场所,也可以不通过人工操作来矫正地图,高精度地进行自主移动。由此,不具有专业知识的操作者便能够通过手动操作使移动体沿着曾经过的移动路径自主移动。
[0047] 图1是对比技术中指导行驶和自主移动的概念图。对比技术是通过与本实施方式比较来明确本实施方式的处理的技术。对比技术不是现有技术。指导是指操作者通过手动使移动体10移动,让移动体10记住移动路径9。
[0048] 如图1的(a)所示,首先,作为指导行驶,操作者通过手动使移动体10行驶。移动体10一边制作环境地图,一边记忆移动路径9。接着,如图1的(b)所示,移动体10在记住的移动路径9上自主移动。这样,在对比技术中,虽然移动体10移动通过移动路径9,但指导行驶时并不记忆下述的路线点的局部地图。
[0049] 图2的(a)显示本实施方式中指导行驶时记忆的路线点8。本实施方式的移动体10在指导行驶时生成拓扑地图。拓扑地图是由在移动路径上离散存在的路线点8(后述的节点)和表示路线点8之间相对位置关系的边构成的图表形式的地图表现。各路线点8与由多个传感器独立生成的、以路线点8为原点的多个局部地图91,92相对应。
[0050] 图2的(b)是自主移动时位置和姿势的推定方法的示意图。自主移动时移动体10求出从基于路线点8所对应的局部地图和自主移动时传感器检测的传感器值(传感器的测定值)得到的位置和姿势所推定的、与移动体10的位置和姿势的偏差,并将该偏差作为路线点8的位置及姿势。移动体10在自主移动时将自己的位置作为原点,因此该偏差是自主移动时从移动体10看到的路线点8的位置和姿势。在此的"看到"以移动体10的位置和姿势为基准。
[0051] 移动体10按照GNSS的定位精度和LiDAR的定位精度,对基于GNSS的位置和姿势、以及基于SLAM的位置和姿势进行加权,对偏差量(即,从移动体10看到的路线点8的位置)进行整合。
[0052] 这样,本实施方式的移动体10具有拓扑地图形式的传感器各自独立的局部地图,针对各个局部地图,根据指导行驶时及自主移动时的传感器值,计算各自独立推定的自我位置和自我姿势的位置推定可靠度,进而根据可靠度进行加权,整合为最终的位置和姿势。因此,本实施方式无需为了整合各传感器的位置推定结果而通过人工作业来矫正地图,即使在路线指导阶段中某一个传感器的定位精度下降,也能够实现高精度的自主移动。
[0053] <用语>
[0054] 本文中,指导行驶是指操作者通过控制器手动操作移动体10的行驶,使移动体10在将要自主移动的移动路径上移动,并记忆移动体10在移动路径上移动时的位置和姿势。自主移动是指移动体10在指导行驶中所记忆的移动路径上或沿着移动路径自动移动。
[0055] 外界传感器是指测量移动体10所处环境(即外界)的传感器。外界传感器例如有GNSS天线、LiDAR以及能够获取距离信息的照相机。所谓内界传感器是指测量移动体10的状态(即内界)的传感器。内界传感器例如有速度传感器、加速度传感器、角速度传感器、方位传感器等。
[0056] 节点是指构成移动路径的地点。在本实施方式中用节点或路线点来说明。
[0057] 位置是指用来确定以原点为基准的移动体10的场所的信息,姿势是指用来确定以规定方向为基准的移动体10的朝向的信息。姿势既可以是三维空间中的姿势,也可以是二维空间中的姿势。
[0058] 计算信息是指可用来计算指导行驶时通过的节点与自主移动时通过的地点之间偏差的信息。计算信息随外界传感器而可以有所不同。在GNSS中,计算信息是GNSS坐标系的位置和姿势,而在LiDAR中,计算信息是二维占据网格地图。在本实施方式中,用局部地图这一用语来说明计算信息。
[0059] 局部地图是指不覆盖整个移动路径的移动路径内的至少一部分地图。局部地图可以是以路线点8为原点,外界传感器能够进行环境测量的范围内的地图。
[0060] 整合是指把两个以上的东西合并为一个。
[0061] 以移动体10的位置和姿势为基准的位置和姿势是指相对于移动体10的位置和姿势的相对位置和相对姿势。本实施方式中有时采用从移动体10"看到"之类的表述。
[0062] <系统构成>
[0063] 图3是通信系统的一例整体构成示意图。图3所示的通信系统1是可以由操作者遥控操作在规定地点内移动的移动体10的系统。
[0064] 通信系统1包括位于规定地点的移动体10以及显示装置60。构成通信系统1的移动体10及显示装置60可以通过通信网络100通信。通信网络100包括互联网、移动通信网、LAN(Local Area Network,局域网)等。通信网络100除了有线通信以外,还可以包括基于3Gth(3rd Generation)、4G(4th Generation)、5G(5 Generation)、Wi‑Fi(Wireless Fidelity)(登记商标)、WiMAX(Worldwide Interoperability for Microwave Access,全球微博互操作性)或LTE(Long Term Evolution)等无线通信网络。
[0065] 移动体10是设置在对象地点、且能够在对象地点内自主移动的机器人。自主移动包括模仿学习(机械学习)过去在对象地点内移动通过的路径,并利用模仿学习的结果自主地在对象地点内移动的动作。自主移动也可以是按照预设的移动路径在对象地点内自主移动,或者是使用线追踪等技术在对象地点内自主移动。进而,移动体10还可以通过远处的操作者手动操作而移动。即,移动体10可以一边在自主移动和操作者手动操作之间切换,一边在对象地点内移动。移动体10可以例如一边在对象基地内移动,一边执行检查、维护、搬运或轻体力劳动等规定任务。在此,移动体10是广义的机器人,只要是能够自主移动和通过操作者远程操作移动这两种动作的机器人即可。移动体10还包括通过遥控操作在自动运转和手动操作之间切换而行驶的汽车。进而,移动体10还包括无人机、多轴直升机或无人飞行器等飞行器。
[0066] 移动体10所设置的对象地点例如有事业所、工厂、建筑现场、变电站、农场、田地、农园、耕地或灾害现场等室外的地点,或者是办公室、学校、工厂、仓库、商业设施、医院或护理设施等室内。也就是说,对象地点是有用移动体10取代以往由人工进行的任务的需求的场所。
[0067] 显示装置60是位于与对象地点不同的管理地点、且对移动体10进行规定操作的操作者使用的笔记本PC(Personal Computer,个人计算机)等计算机。操作者在办公室等的管理地点,使用显示在显示装置60上的操作画面,实行对移动体10的移动操作或用于执行规定任务的操作等。例如,操作者一边观看显示装置60上显示的对象地点的图像,一边进行移动体10的远程操作。
[0068] 图3例示了一台移动体10和一台显示装置60通过通信网络100连接,显示装置60可以与被设于一处对象地点的多个移动体10连接,也可以与位于不同对象地点的移动体10连接。图3例示了显示装置60位于与移动体10所在的对象地点不同的远处的管理地点,但显示装置60也可以位于移动体10所在的对象地点内。显示装置60不限于笔记本PC,例如也可以是台式PC、平板终端、智能手机或可穿戴终端等。
[0069] <移动体概述>
[0070] 图4的(a)是本实施方式涉及的移动体10的外观斜视图。移动体10具有履带式行驶体10a、10b及主体50。
[0071] 履带式行驶体10a、10b是作为移动体10的移动设备单元。履带式行驶体10a、10b是使用金属带或橡胶带的履带式行驶体。履带式行驶体与利用机动车那样的轮胎行驶的行驶体相比,地面接触面积更大,在地面恶劣的环境中也能稳定行驶。利用轮胎行驶的行驶体在进行旋转动作时需要回旋空间,对此,具备履带式行驶体的行驶装置能够进行所谓的超接地回旋,因此,即使在有限的空间中也能够顺利进行旋转动作。
[0072] 主体50既是在可行走状态下支撑履带式行驶体10a、10b的支撑体,同时也是控制行驶体10的驱动的控制设备。主体50还搭载供给电力的电池,用于驱动履带式行驶体10a、10b的
[0073] 图4的(b)是本实施方式涉及的移动体10的前视图(P箭头方向视图)。移动体10的主体50具备紧急停止SW143、状态指示灯144、以及盖部146。紧急停止SW143是可供移动体10的周边的人在使移动中的移动体10停止时按动的操作设备。
[0074] 状态指示灯144是用于通知移动体10的状态的通知装置。状态指示灯144在例如电池余量降低等移动体10的状态发生变化时点亮,把移动体10的状态发生变化通知周围的人。状态指示灯144还可以在可能发生异常,例如,在检测到妨碍移动体10的移动的障碍物的存在等的情况下点亮。图4的(b)例示了移动体10具备两个状态指示灯144,但状态指示灯144的数量也可以是1个或三个以上。通知装置除了状态指示灯144,也可以是通过扬声器发出的警告音等通知移动体10的状态的构成。
[0075] 盖部146设置在主体50的上表面,用于密封主体50的内部。盖部146具有通风部35a,通风部35a具有用于主体50内部通风的通风口。
[0076] 两个履带式行驶体10a、10b以移动体10可移动的状态设置在主体50两侧。履带式行驶体的数量不限于两个,也可以是三个以上。例如,移动体10可以设置成三个履带式行驶体平行排列成三列等移动体10可以移动的状态。再如,移动体10也可以是四个履带式行驶体如机动车的轮胎那样前后左右排列。
[0077] 图4的(c)是本实施方式涉及的移动体10的侧视图(Q箭头方向视图)。履带式行驶体10a具有三角形形状。三角形履带式行驶体10a例如在行驶体前后大小受到限制的情况下,由于可以在有限的前后大小内增大地面接触面积,从而提高移动时的稳定性。另一方面,上方(驱动轮一方)比下方(转轮一方)长、即所谓的坦克型的履带,在前后大小受到制约时,整体接地面积变小,变得不稳定。这样,履带式行驶体10a提高比较小型的移动体10的移动性时比较有效。
[0078] 如图4所示,移动体10在主体50的前进方向的前表面上具备水平方向检测用的测距传感器112。水平方向检测用的测距传感器112是LiDAR,本实施方式中是2D扫描用的MEMS(Micro Electro Mechanical Systems)方式LiDAR。激光雷达也可以用于3D扫描。
[0079] 测距传感器112对物体照射激光,根据照射到物体后返回的时间的测定结果,测定到物体的距离及物体存在的方向。
[0080] 加之如图4所示,移动体10在主体50的前进方向的前表面具有斜向检测用的测距传感器113。斜向检测用的测距传感器113是LiDAR,在本实施方式中是2D扫描用的MEMS方式的LiDAR。测距传感器113以一定角度安装在水平下方,相对于水平的移动路面倾斜向下,具有规定的倾斜角度。
[0081] 测距传感器113对物体(路面障碍物)照射激光、根据照射到物体后返回的时间的测定结果,测定到物体的距离以及物体存在的方向。
[0082] 根据履带式行驶体10a、10b的履带宽度、长度、以及要检测的物体的大小、宽度、深度、高度,测距传感器113的设置位置具有最佳值。
[0083] 图4的移动体10是履带行驶方式,除此之外,二足步行型、多足步行型、无人机型、飞行型、水中移动型等移动体10的形状和移动方式不限于图2的方式。
[0084] <硬件构成例>
[0085] 接下来根据图5A和图5B说明本实施方式涉及的移动体10的一例硬件构成。图5A是移动体10的一例硬件结构框图。
[0086] 如图5A所示,本实施方式的移动体10具有CPU(Central Processing Unit,中央处理器)101、存储器102、辅助存储装置103、照相机111、水平方向检测用的测距传感器112、斜向检测用的测距传感器113、卫星定位系统114、IMU(Inert ial Measurement Unit,惯性计测装置)115、蓄电池121、起动SW142、紧急停止SW143、电机驱动器122a、122b、行驶用电机132a、132b、制动驱动器123a、123b、制动用电机133a、133b、以及电源SW141。
[0087] CPU101进行移动体10整体的控制。存储器102是用于CPU101执行移动程序等的一时性存储区域。
[0088] 照相机111具有数码单眼相机、小型数码相机等可以取得平面图像的普通摄影装置,还具有全天球照相机、立体照相机、红外线照相机等可以取得特殊图像的特殊摄影装置。移动体10可以具备多个照相机111,也可以同时具备可以获得平面图像的普通摄影装置和取得特殊图像的特殊摄影装置。水平方向检测用的测距传感器112和斜向检测用的测距传感器113例如是LiDAR。
[0089] 卫星定位系统114具备接收来自卫星的电波的天线,根据接收结果,测定地球上的移动体10的位置。卫星定位系统114又称GNSS。
[0090] IMU115是惯性测位传感器,通过加速度传感器和角速度传感器来推定移动体10的位置和姿势(正交三轴方向的平移运动及旋转运动)。IMU115是一例内界传感器。
[0091] 电池121是用于移动体10移动的电源。起动SW142是用于起动移动体10的开关。紧急停止开关143是用于任意停止移动体10的移动的开关。
[0092] 电机驱动器122a、122b是分别设置在两个履带式行驶体10a、10b上的行驶用电机132a、132b的驱动器。制动驱动器123a、123b是分别设置在两个履带式行驶体10a、10b上的制动用电机133a、133b的驱动器。电源SW141是用于接通或断开移动体10的电源的开关。
[0093] 本实施方式的移动体10中执行的移动程序以可安装形式或可执行形式的文档保存在CD‑ROM、软盘(FD)、CD‑R、DVD(Digital Versati le Disc)等计算机可读的存储介质中来提供。
[0094] 也可以将在本实施方式的移动体10中执行的移动程序保存在与互联网等网络连接的计算机中,经由网络下载提供。本实施方式的移动体10中执行的移动程序还可以经由互联网等网络提供或发布。另外,本实施方式的移动体10中执行的移动程序可以预先组装在ROM等中来提供。
[0095] 显示装置
[0096] 图5B是本实施方式涉及的显示装置60的一例结构框图。如图5B所示,显示装置60由计算机500构成,具备CPU501、ROM502、RAM503、HD504、HDD控制器505、显示器506、外设连接I/F(接口)508、网络I/F509、总线510、键盘511、指示设备512、DVD‑RW驱动器514、介质I/F516。
[0097] 其中,CPU501控制计算机500整体的动作。ROM502保存用于驱动CPU501的IPL等程序。RAM503被用作CPU501的工作区。HD504保存程序等各种数据。HDD控制器505根据CPU501的控制,控制HD504中各种数据的读取或写入。显示器506显示光标、菜单、窗口、文本或图像等各种信息。外设连接I/F508是用于连接各种外部设备的接口。在此的外设例如是USB存储器或打印机。网络I/F509是利用网络进行数据通信的接口。总线510是用于图5B所示的CPU501等各构成元件电连接的地址总线和数据总线等。
[0098] 键盘511是一种具备用于输入文本、数值、或各种指示等的多个键的输入设备。指示设备512是一种进行各种指示的选择和执行、处理对象的选择、光标的移动等的输入设备。DVD‑RW驱动器514控制对作为一例可拆卸记录介质的DVD‑RW513中各种数据的读取或写入。DVD‑RW驱动器514不限于DVD‑RW,也可以是DVD‑R等。介质I/F516控制对闪存等记录介质515中数据的读取或写入(存储)。
[0099] <功能构成>
[0100] 接下来用图6至图9来描述实施方式涉及的通信系统1的功能构成。图6是通信系统1的一例功能结构框图。图6表示图1所示的装置或终端中与后述的处理或动作相关的设备。
[0101] 移动体(控制设备)的功能构成
[0102] 移动体10具有收发部31、判断部32、摄影控制部33、状态检测部34、位置信息取得部35、目的地候补取得部36、路径信息生成部37、路径信息管理部38、移动目的地设定部39、移动控制部40、图像识别处理部41、模式设定部42、自主移动处理部43、手动操作处理部44、任务执行部45、信息生成部46、图像处理部47、学习部48以及存储读取部49。这些部是图5A所示的各构成元件中的某一个按照存储器102上展开的移动程序执行CPU101的命令动作而实现的功能或发挥功能的装置。移动体10具有由图5A所示的存储器102构成的存储部3000。
[0103] 收发部31用于通过通信网络100与其他设备或终端之间进行各种数据或信息的收发。
[0104] 判断部32通过CPU101执行处理来实现,用于进行各种判断。摄影控制部33主要通过CPU101对照相机111执行处理来实现,用于控制对照相机111的摄影处理。
[0105] 状态检测部34主要通过CPU101对照相机111、测距传感器112113执行处理来实现,用于使用各种传感器来检测移动体10或移动体10的周围的状态。状态检测部34例如测定与移动体10周围的物体(障碍物)的距离,作为距离数据输出。状态检测部34还可以使用例如距离数据,采用SLAM(同步定位与地图构建)与环境地图进行对照来取得位置。在此,SLAM是可以同时进行自我位置推定和环境地图制作的技术。进而,状态检测单元34还使用例如IMU115等来检测移动体10的朝向。
[0106] 位置信息取得部35通过CPU101对卫星定位系统114执行处理来实现,用于使用卫星定位系统114取得表示移动体10的当前位置的位置信息。位置信息取得部35例如使用卫星定位系统114,取得表示移动体10的当前位置的纬度及经度的坐标信息。
[0107] 目的地候补取得部36主要通过CPU101的处理来实现,用于取得目的地候补图像,该目的地候补图像表示移动体10的移动目的地候补。具体而言,目的地候补取得部36取得由摄影控制部33拍摄的、表示移动体10所处地点内一部分区域的摄影图像,作为目的地候补图像。
[0108] 路径信息生成部37主要通过CPU101的处理来实现,用于生成表示移动体10的移动路径的路径信息。路径信息生成部37根据移动体10的操作者所选择的目的地候补位置,生成表示从当前位置到最终目的地的路径的路径信息。路径信息的生成方法例如采用用直线连接从当前位置到最终目的地中各路线点8,或者从摄影图像或状态检测部34得到的障碍物的信息,一边回避障碍物一边将移动时间最小化的方法等。
[0109] 路径信息管理部38主要通过CPU101的处理来实现,用于使用路径信息管理DB3002,管理路径信息生成部37生成的路径信息。
[0110] 移动目的地设定部39主要通过CPU101的处理来实现,用于设定移动体10的移动目的地。移动目的地设定部39根据例如由位置信息取得部35取得的移动体10的当前位置及由路径信息生成部37生成的路径信息,从移动体10的操作者选择的目的地候补中设定当前需要前往的目的地为移动目的地。
[0111] 移动控制部40主要通过CPU101对电动机驱动器122a、122b的处理来实现,用于通过驱动行驶用电动机132a、132b来控制移动体10的移动。移动控制部40例如按照来自自主移动处理部43或手动操作处理部44的驱动指令,使移动体10移动。
[0112] 图像识别处理部41主要通过CPU101的处理来实现,用于对摄影控制部33取得的摄影图像进行图像识别处理。图像识别处理部41例如通过图像识别,检测在取得的摄影图像中是否摄入特定被摄体。特定被摄体例如是移动体10的移动路径上或移动路径周边的障碍物、十字路口或L字路等的交叉点、或设置在地点的标识或信号等。
[0113] 模式设定部42主要通过CPU101的处理来实现,用于进行表示使移动体10移动的动作的动作模式的设定,模式设定部42进行使移动体10自主移动的自主移动模式和通过操作者的手动操作使移动体10移动的手动操作模式中的某一个的设定。
[0114] 自主移动处理部43主要通过CPU101的处理来实现,用于控制移动体10的自主移动处理。自主移动处理部43例如向移动控制部40输出移动体10的驱动指令,使移动体10通过由路径信息生成部37生成的路径信息所表示的移动路径。
[0115] 自主移动处理部43具有计算部43a、偏差计算部43b、位置推定部43c、以及整合处理部43d。在自主移动时,计算部43a使用卡尔曼滤波器等现有的方法,根据多个外界传感器和内界传感器的测定值,计算移动体10的位置及姿势。
[0116] 偏差计算部43b用于针对多个外界传感器分别计算局部地图与外界传感器的传感器值的偏差。位置推定部43c用于将求出的偏差推定为从移动体10看到的路线点8的位置及姿势。整合处理部43d用来对多个外界传感器各自推定的路线点8的位置及姿势进行整合。
[0117] 手动操作处理部44主要通过CPU101的处理来实现,用于控制移动体10的手动操作处理。手动操作处理部44例如根据从显示装置60发送来的手动操作指令,向移动控制部40输出移动体10的驱动指令。
[0118] 任务执行部45主要通过CPU101的处理来实现,用于根据来自操作者的要求,执行移动体10的规定任务。在此,由任务执行部45执行的规定任务例如包括用于检查地点内的设备的摄影处理、或使用可动臂的轻体力劳动等。
[0119] 信息生成部46主要通过CPU101的处理来实现,用于使用地图信息管理DB3003,管理表示移动体10设置的对象地点的环境地图的地图信息。信息生成部46例如根据多个外界传感器分别生成多个局部地图,并与外界传感器对应起来管理。
[0120] 图像处理部47主要通过CPU101的处理来实现,用于生成在显示装置60上显示的显示图像。图像处理部47例如通过对由摄影控制部33取得的摄影图像进行处理,生成供显示装置60显示的显示图像。
[0121] 学习部48主要通过CPU101的处理来实现,用于进行用于移动体10的自主移动的移动路径的学习。学习部48例如根据由手动操作处理部44在手动操作模式下进行移动动作时取得的摄影图像以及由状态检测部34的检测数据,进行关于自主移动的移动路径的仿真学习(机械学习)。自主移动处理部43例如根据学习部48的仿真学习结果的学习数据,进行移动体10的自主移动。
[0122] 存储读取部49主要通过CPU101的处理来实现,用于在存储部3000中保存各种数据(或信息),或者从存储部3000读取各种数据(或信息)。
[0123] 目的地候补管理表
[0124] 图7是一例目的地候补管理表的概念图。目的地候补管理表用于管理表示移动体10的目的地候补的目的地候补。存储部3000中构建由如图7所示的目的地候补管理表构成的目的地候补管理DB3001。
[0125] 目的地候补管理表中管理每个用于识别移动体10所设地点的地点ID的用于识别目的地候补的候补ID、表示目的地候补的位置的位置信息以及与摄有作为目的地候补的地点内一部分区域的摄影图像数据相关联的目的地候补数据。其中,位置信息由包含表示地点内的目的地候补位置的纬度及经度的坐标信息来表示。当移动体10是无人机等飞行器时,位置信息中除了表示纬度及经度的坐标信息之外,还包含飞行器的速度、姿势或高度等信息。摄影图像数据表示在地点内目的地候补位置上移动体10所拍摄的图像数据文档。在此,目的地候补是移动体10的一例移动目的地候补。移动体10的移动目的地的候补不仅包括移动体10的目的地候补,
[0126] 路径信息管理表
[0127] 图8是一例路径信息管理表的示意图。路径信息管理表中管理表示移动体10的移动路径的路径信息。存储部3000中构建由如图8所示的路径信息管理表构成的路径信息管理DB3002。
[0128] 路径信息管理表将每个用于识别移动体10设置地点的地点ID的用于识别移动体10的移动路径的路径ID与表示移动体10的移动路径的路径信息关联起来管理。其中,路径信息按照未来的移动目的地的顺序表示移动体10的将要通过的移动路径。路径信息是在移动体10开始移动时由路径信息生成部37生成的。
[0129] 本实施方式中虽然叙述了连接多个目的地的移动路径和通过指导行驶记忆的移动路径,但前者的移动路径的一部分或全部是后者的移动路径,因此说明中不作严格区别。
[0130] 地图信息管理表
[0131] 图9是一例地图信息管理表的示意图。地图信息管理表管理指导行驶时生成的每个节点的局部地图。存储部3000中构建由如图9所示的地图信息管理表构成的地图信息管理DB3003。
[0132] 图9的地图信息管理表中保存由GNSS生成的、以各节点的位置和姿势为原点的第一局部地图,以及由SLAM生成的、以各节点的位置和姿势为原点的第二局部地图。第一局部地图和第二局部地图以适合各自地图的数据形式生成。本实施方式中的"局部地图"是指"可用来计算指导行驶时通过的节点和自主移动时通过的地点之间的偏差的计算信息",局部地图的形式随着不同外界传感器而有所不同。例如,第一局部地图表示GNSS坐标系的位置和姿势,而不是一般的地图。关于具体的局部地图,下文中将参见图18说明。
[0133] 地图信息管理表还可以具有照相机拍摄的局部地图。照相机可以是立体相机,也可以是能够获得距离信息的单眼相机。照相机拍摄的局部地图与用SLAM制作的局部地图具有同样的信息。
[0134] 学习数据管理DB
[0135] 下面说明存储部3000中构筑的学习数据管理DB3004。学习数据管理DB3004管理作为学习部48学习移动体10的自主移动路径学习结果的学习数据。学习数据管理DB3004例如积累从移动体10取得的摄影图像数据及各种检测数据等,同时保存每个地点或每个移动体10的模仿学习(机械学习)结果,即学习数据。移动体10根据学习数据管理DB3004中保存的学习数据进行自主移动。也可以在照相机111如特殊摄影装置或一般摄影装置拍摄的拍摄图像数据中包含用于确定特殊摄影装置或一般摄影装置的拍摄方向等PTZ(Pan‑Ti lt‑Zoom)的参数。包含PTZ的参数的摄影图像数据保存在移动体10的存储部3000(学习数据管理DB3004)中。还可以把PTZ的参数与目的地候补的位置信息关联起来保存在存储部3000中,同时将表示取得目的地候补的摄影图像数据时移动体10的姿势的坐标数据(x,y,θ)保存在存储部3000中。这样,在相对于目的地移动体10的实际停止位置产生偏差时,可以使用PTZ的参数和坐标数据(x,y,θ)来补偿移动体10的姿势。另外,移动体10的自主移动路径(GNSS定位履历)的信息、以及用于在显示装置60上显示的候补目的地的摄影图像信息等一部分信息也可以保存在例如AWS(Amazon Web Services)(商标)等云计算服务中。
[0136] 显示装置的功能构成
[0137] 接下来用图6说明显示装置60的功能构成。显示装置60具有收发部51、受理部52、显示控制部53、判断部54、手动操作指令生成部55、自主移动请求信息生成部56、图像处理部57以及存储读取部59。这些部是图5B所示的各构成元件的某一个根据在RAM503上展开的显示装置用程序,根据来自CPU501的命令动作而实现的功能或功能的装置。显示装置60具有由图5B所示的ROM502、HD504或记录介质521构成的存储部5000。
[0138] 收发部51主要通过CPU501对网络I/F509的处理来实现,用于与其他设备或终端之间进行各种数据或信息的收发。
[0139] 受理部52主要通过CPU501对键盘511或指示设备512的处理来实现,用于从操作者受理各种选择或输入。显示控制部53主要通过CPU501的处理来实现,用于控制显示器506等显示部显示各种画面。判断部54通过CPU501的处理来实现,用于进行各种判断。
[0140] 手动操作指令生成部55主要通过CPU501的处理来实现,用于根据操作者的输入操作,生成用于通过手动操作使移动体10移动的手动操作指令。自主移动请求信息生成部56主要通过CPU501的处理来实现,生成用于要求移动体10自主移动的自主移动请求信息。自主移动请求信息生成部56用于根据例如由操作者选择的目的地候补的信息,发送送往移动体10的自主移动请求信息。
[0141] 图像处理部57主要通过CPU501的处理来实现,用于生成供显示器506等显示部显示的显示图像。图像处理部57通过对例如移动体10取得的摄影图像进行处理,生成使显示装置60显示的显示图像。通信系统1只要具备移动体10所具有的图像处理部47和显示装置60所具有的图像处理部57中的一个功能即可。
[0142] 存储读取部59主要通过CPU501的处理来实现,在存储部5000中保存各种数据(或信息),或者从存储部5000读取各种数据(或信息)。
[0143] <处理或操作>
[0144] 目的地候补登记处理
[0145] 首先用图10至图13说明登记移动体10的目的地候补的处理。图10是一例目的地候补登记处理的的示意图。
[0146] 显示装置60响应操作者的规定输入操作等,开始移动体10的操作(步骤S11)。然后,收发部51向移动体10发送操作开始请求(步骤S12)。移动体10的收发部31接收显示装置60发送的操作开始请求。
[0147] 接着,摄影控制部33开始使用照相机111如特殊摄影装置及一般摄影装置的摄影处理(步骤S13)。摄影控制部33取得由特殊摄影装置及一般摄影装置拍摄的摄影图像数据。在此,通过步骤S13的摄影处理取得的图像是动画。然后,收发部31向显示装置60发送步骤S13中取得的摄影图像数据(步骤S14)。显示装置60的收发部51接收移动体10发送的摄影图像数据。
[0148] 接着,显示装置60的显示控制部53使显示器506等显示部显示步骤S14中接收到的摄影图像数据包含的操作画面200(步骤S15)。图11是一例操作画面的示意图。图11所示的操作画面200是用于操作者遥控操作移动体10的显示画面。
[0149] 操作画面200包括地点显示区域210和地点显示区域230,地点显示区域210上显示在步骤S14中接收的摄影图像数据中由一般摄影装置拍摄的摄影图像(平面图像),地点显示区域230上显示在步骤S14中接收的摄影图像数据中的特殊摄影装置拍摄的摄影图像(特殊图像),特殊图像如上所述,是由特殊摄影装置拍摄的全天球图像、广角图像或半球图像等地点内全方位拍摄的图像。特殊图像也可以是通过将一边转动一般摄影装置一边拍摄的图像通过合成生成为全方位图像的特殊摄影装置所得到的图像。地点显示区域230上表示移动体10存在的移动体表示图像235重叠在特殊图像上显示。操作画面200上显示以纬度(Lat)及经度(Lon)表示的坐标信息,表示移动体10的当前位置的位置信息。当移动体10是无人机等飞行器时,除了纬度及经度的坐标信息之外,操作画面200上还可以显示飞行器的速度、姿势或高度等信息。进而,操作画面200上可以通过互联网等计算机网络实时发送特殊摄影装置及一般摄影装置的摄影图像,作为直播(l ive streaming)视频映像显示。
[0150] 操作画面200包括用于遥控操作移动物体10的操作图标250。操作图标250包括在请求移动体10水平方向(前进、后退、右旋转、左旋转)移动时按动的方向指示按钮。操作者可以一边观看显示在地点显示区域210上的平面图像以及显示在地点显示区域230上的全天球图像等特殊图像,一边选择操作图标250,进行移动体10的遥控操作。在此说明了通过接受操作画面200上显示的操作图标250的选择来遥控操作移动体10移动的例子,但是也可以是通过键盘、或具备游戏手柄的游戏垫等专用控制器等来进行移动体10的移动操作。
[0151] 进而,操作画面200包括目的地候补登记按钮270,可在使用显示在地点显示区域210中的平面图像或显示在地点显示区域230中的特殊图像进行目的地候补登记时按动该按钮。以下举例说明,通过操作者按动目的地候补登记按钮270来利用地点显示区域230上显示的特殊图像进行目的地候补登记。通过操作者按动目的地候补登记按钮270来利用地点显示区域210中显示的平面图像进行目的地登记的处理也与此相同。操作画面200还包括移动体10的目的地设定时按动的目的地设定按钮290。
[0152] 接着,显示装置60使用在步骤S15中显示的操作画面200,执行移动体10的手动操作(步骤S16)。步骤S16的处理的详细内容将在后面叙述。
[0153] 接着,操作者按动操作画面200的目的地候补登记按钮270,受理部52受理对于地点显示区域230上显示的特殊图像中的区域的目的地候补登记(步骤S17)。然后,收发部51向移动体10发送目的地候补登记请求(步骤S18)。该目的地登记请求例如是对地点显示区域230上显示的特殊图像中的区域的摄影请求。移动体10接收显示装置60发送的目的地候补登记请求。
[0154] 接着,移动体10的位置信息取得部35使用卫星定位系统114等,取得表示移动体10的当前位置的位置信息(步骤S19)。具体地说,位置信息取得部35取得包含表示移动体10的当前位置的纬度及经度的坐标信息。移动体10是无人机等飞行器时,除了取得包含纬度及经度的坐标信息之外,位置信息取得部35还取得飞行器的速度、姿势或高度等信息作为位置信息。目的地候补取得部36取得在移动体10的当前位置上由特殊摄影装置拍摄的摄影图像,作为表示目的地候补的目的地候补图像(步骤S20)。在此,目的地候补取得部36取得的作为目的地候补图像的摄影图像是静止图像。
[0155] 然后,存储读取部49将包含步骤S19中取得的位置信息以及在步骤S20中取得的摄影图像的目的地候补数据保存到目的地候补管理DB3001(参见图7)中(步骤S21)。存储读取部49将取得的位置信息和摄影图像登记为目的地候选数据,该目的地候选数据与用于识别目的地候选的候选ID相关联。
[0156] 这样,通信系统1把移动体10拍摄的摄影图像显示到遥控操作移动体10的操作者的显示装置60上,便能够一边实时确认移动体10的周围状况一边遥控操作移动体10。通信系统1能够响应移动体10的手动操作时的操作者的输入操作,预先登记拍摄了移动体10自主移动时成为目的地候补的地点内的区域的摄影图像。
[0157] 手动操作处理
[0158] 接下来利用图12和图13详细描述在步骤S16中对移动体10的手动操作处理。图12是一例移动体的手动操作处理的时序图。
[0159] 首先,显示装置60的受理部52通过操作者的输入操作,受理在步骤S15中显示的操作画面200的操作图标250的选择(步骤S31)。手动操作指令生成部55按照步骤S31中选择的操作图标250的内容,生成手动操作指令(步骤S32)。在图11的例子中,由于操作者处于选择了"前进(↑)」)"的图标状态,因此,手动操作指令生成部55生成用于使移动体10前进的指令。然后,收发部51向移动体10发送步骤S32中生成的手动操作指令(步骤S33)。由此,移动体10接收从显示装置60发送的手动操作指令。当操作者对操作图标250的输入操作中,在移动体10前进的途中操作者选择"后退(↓)」的图标时,也可以将摄影图像切换到移动体10的后方画面,从该时刻起使移动体10后退。从显示装置60向移动体10发送手动操作指令也可以经由例如AWSIoTCore(登记商标)之类的管理云平台。
[0160] 接着,模式设定部42将移动体10的动作模式设为手动操作模式(步骤S34)。然后,手动操作处理部44将基于步骤S33中接收到的手动操作指令的驱动指令输出到移动控制部40。移动控制部40按照手动操作处理部44的驱动指令,执行移动体10的移动处理(步骤S35)。学习部48进行与手动操作处理部44的手动操作相应的移动路径的模仿学习(机械学习)(步骤S36)。学习部48例如根据由手动操作处理部44在手动操作模式下进行移动动作时取得的摄影图像以及由状态检测部34得到的检测数据,进行移动路径的模仿学习。学习部
48既可以是只用手动操作时取得的摄影图像进行移动路径的模仿学习,也可以用摄影图像和状态检测部34的检测数据双方进行移动路径的模仿学习。学习部48的模仿学习中使用的摄影图像还可以是自主移动处理部43在自主移动模式下自主移动时取得的摄影图像。
[0161] 移动路径的学习包括移动体10的位置和姿势。
[0162] 然后,移动体10在移动动作中执行候补目的地的登记处理(步骤S37)。图13是一例按照移动体的移动状态进行目的地候补登记处理的流程图。
[0163] 首先,判断部32判断任务执行部45是否执行了规定任务(步骤S51)。具体地说,任务执行部45例如根据来自操作者的任务执行请求或预设的调度,执行移动体10的规定任务。而后,判断部32判断任务执行部45可否执行规定任务。在此,规定任务包括例如用来检查地点内设备的摄影处理、或者使用可动臂的轻体力劳动等。
[0164] 移动体10例如在地点内移动进入检查对象的区域后,执行确认仪表或阀门等的检查对象的作业。此时,移动体10可以停止移动,为了进行检查图像的取得用的摄影操作等,以该动作为触发进行目的地候补的登记。
[0165] 判断部32判断任务执行部45执行了的规定任务时(步骤S51的是),处理转移到步骤S56。而判断部32在判断任务执行部45没有执行规定任务时(步骤S51的否),处理转移到步骤S52。
[0166] 接着,判断部32判断移动体10的移动动作是否停止(步骤S52)。具体地说,当判断部32检测到移动控制部40停止行驶用电机132a、132b的驱动控制时,判断移动体10的移动动作停止。判断部32判断移动体10的移动动作停止时(步骤S52的"是"),处理转移到步骤S56。而当判断部32判断移动体10的移动动作没有停止(正在移动动作)时(步骤S52的否),处理转移到步骤S53。
[0167] 接着,判断部32判断是否在移动体10的周围检测到交叉点(步骤S53)。具体而言,图像识别处理部41对由照相机111如特殊摄影装置或一般摄影装置取得的摄影图像进行图像识别处理。然后,判断部32判断是否通过图像识别处理部41的处理在摄影图像内检测到交叉点。移动体10例如在交叉点等具有特征的地点,通过取得全方位拍摄的特殊图像,不论移动方向如何,都可以一次性取得从移动路径上不同方向看到的图像。在此,交叉点是由图像识别处理部41检测到的一例特定被摄体。除了是交叉点之外,特定被摄体还可以是移动体10的移动路径上或移动路径周围的障碍物、或设置在地点内的标识或信号等。移动体10在路面上移动时或者无人机等移动体10飞行时等不同的移动体10的种类有不同的特定被摄体,移动体10中预设需要检测的特定被摄体的信息。
[0168] 当判断部32判断在移动体10的周围检测到交叉点时(步骤S53的"是"),处理转移到步骤S56。而当判断部32判断在移动体10的周边未检测到交叉点时(步骤S52的否),处理转移到步骤S54。
[0169] 接着,判断部32判断移动体10的当前位置是否接近登记在目的地候补管理DB3001中的目的地候补(步骤S54)。具体地说,判断部32参考目的地候补管理DB3001中保存的目的地候补的位置信息,判断是否存在与位置信息取得部35取得的移动体10的当前位置接近的目的地候补。在此,是否接近目的地候补的判断,例如根据预设的目的地候补的位置和移动体10的当前位置之差来判断。判断是否接近目的地候补也可以通过对与目的地候补对应的摄影图像(目的地候补图像)和移动体10的当前位置的摄影图像进行图像识别来判断。
[0170] 当判断部32判断移动体10的当前位置接近登记在目的地候补管理DB3001中的目的地候补时(步骤S54的是),处理转移到步骤S56。而当判断部32判断移动体10的当前位置远离登记在目的地候补管理DB3001中的目的地候补时(步骤S54的否),处理转移到步骤S55。
[0171] 接着,判断部32判断显示装置60发送的手动操作指令所表示的方向是否改变(步骤S55)。具体而言,判断部32根据步骤S33中收到的手动操作指令,判断手动操作指令中表示的移动方向有无变化。判断部32在例如手动操作指令表示特征性操作时,也可以判断为移动方向发生变化。特征性操作包括,例如通过在交叉点或转弯等随着移动进行的一定量的转向操作或油门或制动操作等。
[0172] 当判断部32判断从显示装置60发送的手动操作指令所表示的操作方向发生变化时(步骤S55的是),处理转移到步骤S56。而当判断部32判断显示装置60发送的手动操作指令所表示的操作方向没有改变时(步骤S55的否),结束处理。
[0173] 然后,在步骤S56中,位置信息取得部35使用卫星定位系统114等,取得表示移动体10的当前位置的位置信息。目的地候补取得部36取得在移动体10的当前位置由特殊摄影装置拍摄的摄影图像,作为表示移动体10的目的地候补的目的地候补图像(步骤S57)。
[0174] 然后,存储读取部49将包含步骤S56中取得的位置信息及步骤S57中取得的摄影图像在内的目的地候补数据保存到目的地候补管理DB3001(参照图7)中(步骤S58)。存储读取部49将获得的位置信息和摄影图像登记为分别与用于识别目的地候选的候选ID相关联得目的地候选数据。
[0175] 这样,移动体10根据移动体10的移动状态的规定判断基准,使用搭载在移动体10上的摄影装置12,自动地进行移动体10的周围的拍摄,可以预先登记表示移动体10的移动目的地候补的摄影图像。步骤S51~步骤S55所示的判断部32的判断基准不限于此,可以根据移动体10的手动操作内容以及移动体10的周围环境适当设定。判断部32的判断基准包含例如在操作者进行移动体10的目的地选择时,希望操作者识别的移动体10的状态变化、或地点的状况或地点内的环境变化等。
[0176] 目的地设定处理
[0177] 接着用图14至图17,说明使用通过上述处理登记的目的地候补,设定移动体10的目的地的处理。图14是一例移动体目的地设定处理的的时序图。
[0178] 首先,显示装置60的受理部52随着操作者在操作画面200上的输入操作,受理目的地设定按钮290的选择(步骤S71)。
[0179] 接着,收发部51向移动体10发送目的地候补取得请求(步骤S72),请求取得表示目的地候补的数据。该目的地候补取得请求包含用于识别移动体10的设置地点的地点ID。移动体10的收发部31发送显示装置60所发送的目的地候补取得请求。
[0180] 接着,存储读取部49将在步骤S72中收到的目的地取得请求所表示的地点ID作为检索关键字,检索目的地候补管理DB3001(参照图7),由此读取与收到的地点ID相同的地点ID相关联的目的地候补数据(步骤S73)。
[0181] 然后,收发部31向发出请求的显示装置60发送在步骤S73中读取的目的地候补数据(步骤S74)。该目的地候补数据包含在步骤S73中读取的多个候补ID、摄影图像以及位置信息的组。据此,显示装置60的收发部51接收从移动体10发送的目的地候补数据,从而取得目的地候补数据。
[0182] 接着,显示装置60的显示控制部53在显示器506等显示部上显示步骤S74中收到的目的地候补数据中包含的选择画面400(步骤S75)。具体地说,图像处理部57基于收到的目的地候补数据生成选择画面400。然后,显示控制部53显示图像处理部57所生成的选择画面400。选择画面400的生成处理也可以由移动体10的图像处理部47进行。此时,图像处理部47基于在步骤S73中读取的目的地候补数据,生成选择画面400。然后,在步骤S74中,收发部31向显示装置60发送包含由图像处理部47生成的目的地候补数据的选择画面400的画面数据。
[0183] 图15及图16是一例选择画面的示意图。图15及图16所示的选择画面400是可供操作者选择移动体10的移动目的地的显示画面。
[0184] 选择画面400包括图像显示区域410,该图像显示区域上可选择地显示步骤S74中收到的目的地候补数据中包含的多个摄影图像(目的地候补图像)415(415a~417f)。选择画面400还包括选择完毕时按动的OK按钮430、以及在中止选择处理时按动的取消按钮435。操作者使用指示设备512等输入设备,进行图像显示区域410上显示的摄影图像415的选择。
[0185] 显示装置60的受理部52通过操作者选择在图像显示区域410中显示的摄影图像415,接受用于将摄影图像表示的区域设为目的地的目的地候补图像的选择(步骤S76)。图
16所示的选择画面400表示操作者选择了例如摄影图像415a、415b、415c的状态。当选择了显示在图像显示区域410中的摄影图像415时,如图16所示,选择画面400的选择结果显示区域420中显示所选的摄影图像。选择结果显示区域420以操作者选择的顺序(No.1~No.3)表示选择的摄影图像。操作者例如选择摄有表示使移动体10执行规定任务的位置的区域的摄影图像、或摄有表示使移动体10移动到执行规定任务的位置时地点内的交叉点等路径上的分歧点的区域的摄影图像等,作为移动体10的移动目的地。
[0186] 这样,显示装置60用移动体10事先拍摄的表示移动体10的移动目的地候补的摄影图像415(目的地候补图像),选择摄影图像415所表示的区域作为移动体10的移动目的地,由此,相比于以往的方法让操作者指定位置信息或关键字等字符串,能够提高移动体10的移动目的地的选择操作性。
[0187] 接着,接受步骤S76中的目的地候补图像选择,操作者按动OK按钮430后,显示装置60的自主移动要求信息生成部56生成自主移动请求信息(步骤S77)。该自主移动请求信息包括与步骤S76中接受选择的摄影图像415相关联的候补ID、以及表示在步骤S76中接受了选择的顺序的信息。
[0188] 接着,收发部51向移动体10发送步骤S77中生成的自主移动请求信息(步骤S78)。这样,移动体10所具备的收发部31接收从显示装置60发送的自主移动请求信息。
[0189] 然后,移动体10根据步骤S78中收到的自主移动请求信息,开始自主移动处理(步骤S79)。
[0190] 自主移动处理
[0191] 接下来参考图17,详细描述步骤S79的移动体10的自主移动处理。图17是一例移动体的自主移动处理的流程图。
[0192] 首先,移动体10的模式设定部42在步骤S78中收到自主移动请求信息时,将移动体10的动作模式设为自主移动模式(步骤S91)。
[0193] 接着,路径信息生成部37根据步骤S78中收到的自主移动请求信息,生成表示移动体10的自主移动路径的路径信息(步骤S92)。具体地,路径信息生成部37基于所收到的自主移动请求信息表示的候补ID以及通过候补ID确定的摄影图像415的选择顺序,按照操作者选择摄影图像415的顺序,生成使移动体10自主移动到摄影图像415所表示的区域的移动路径。路径信息生成部37不限于摄影图像415的选择顺序,也可以基于目的地候补管理DB3001中保存的摄影图像415的摄影位置的信息,以例如基于所选摄影图像415的移动路径的距离或移动时间变短的方式来生成路径信息。
[0194] 然后,路径信息管理部38将步骤S92中生成的路径信息与在步骤S72中收到的地点ID关联起来保存到路径信息管理DB3002(参见图8)中(步骤S93)。
[0195] 接着,位置信息取得部35取得表示移动体10的当前位置的位置信息(步骤S94)。
[0196] 移动目的地设定部39根据由位置信息取得部35取得的移动体10的当前位置以及在步骤S92中生成的路径信息,设定移动体10的移动目的地(步骤S95)。具体地说,移动目的地设定部39将例如用生成的路径信息所表示的候补ID确定的多个目的地之中、表示接下来需要前往的目的地的位置设定为移动目的地。例如,在从现在开始自主移动时,移动目的地设定部39把用路径信息中所示的最初的候补ID确定的目的地所表示的位置设定为移动目的地。然后,移动目的地设定部39生成从所取得的移动体10的当前位置到所设定的移动目的地的移动路径。移动目的地设定部39的移动路径的生成方法采用了用直线连接当前位置和移动目的地的方法,或者利用由摄影图像或状态检测部34得到的障碍物的信息,一边回避障碍物一边使移动时间最小的方法等。
[0197] 移动目的地设定部39生成移动路径并不限于使用登记在目的地候补管理DB3001中的目的地候补(移动目的地)的位置信息,也可以是通过图像处理部47对摄影装置12拍摄的摄影图像进行图像识别处理,找出作为移动目的地在设定的摄影图像415中被拍摄的位置。
[0198] 然后,移动控制部40使移动体10经过步骤S92中生成的移动路径,向设定的移动目的地移动。在这种情况下,移动控制部40响应自主移动处理部43的驱动指令,使移动体10自主移动(步骤S96)。具体关于自主移动处理部43的自主移动处理将在下文描述。
[0199] 然后,如果移动体10到达最终目的地(步骤S97的是),则移动控制部40结束处理。相反,则移动控制部40反复进行从步骤S94开始的处理,继续自主移动处理,直到移动体10到达最终目的地为止(步骤S97的否)。
[0200] 这样,移动体10能够将操作者选择的摄影图像415中拍摄的位置作为移动体10的目的地的进行自主移动。而且,移动体10在自主移动模式下动作时,可以用生成的路径信息及手动操作模式时学习的学习数据等进行自主移动。
[0201] <偏离基于局部地图的移动路径>
[0202] 接着说明对比指导行驶时与路线点8对应的多个局部地图和外界传感器的传感器值,计算与移动路径的偏差,整合多个外界传感器的偏差的处理。首先说明对拓扑地图。
[0203] 图18是拓扑图的概念图。本实施方式如上所述,移动体10具有N个外界传感器(GNSS、测距传感器(LiDAR)、照相机等)和内界传感器(IMU或编码器等),能够计算移动体10的相对移动量(里程计)。移动体10是使用拓扑地图形式地图的指导反复型的自主移动系统。所谓拓扑地图是指由节点集合V和边缘集合E构成的图表形式的地图。边缘集合E的要素eij被定义在两个节点vi和vj之间,具有vi和vj的相对位置关系(一例相对位置信息)。
[0204] 信息生成部46保存在作为节点集合V的要素的节点vi之中节点vi中使用外界传感器和内界传感器的传感器值生成的局部地图(局部地图)。本实施方式中将"能够计算指导行驶时通过的地点和自主移动时通过的地点之间的偏差(位置和姿势)的信息"表示为"地图"。例如,在给出指导行驶中通过LiDAR制作的二维栅格地图(存在障碍物的栅格中保存1,不存在障碍物的栅格中保存0的H×W的图像)和自主移动时的LiDAR的扫描点云时,可以通过优化计算等,求出从自主移动中的移动体10看到的二维栅格地图的原点(=指导行驶时通过的地点=节点)的位置和姿势。因此,使用LiDAR这种外界传感器时,二维格子地图可以称为"地图"。另一方面,在给出指导行驶中通过GNSS观测到的位置(纬度、经度)、方位角和自主移动中通过GNSS观测到的位置(纬度、经度)、方位角时,由于可以计算从移动体10看到的指导行驶中通过的地点(节点)的位置和姿势,因此在本实施方式中,"指导行驶中通过GNSS观测到的位置(纬度、经度)、方位角"也表现为"地图"。
[0205] 移动体10的自主移动由"路线指导阶段"和"自主移动阶段"两个阶段构成。"路线指导阶段"对应于指导行驶,操作者通过控制器手动操作移动体10,使移动体10行驶在所要自主移动的移动路径上。"自主移动阶段"对应于自主移动,移动体10以追踪"路线指导阶段"中移动的移动路径(在移动路径上或沿着移动路径移动)的方式自主移动。
[0206] 图19是使用外界传感器和局部地图的本实施方式的移动控制框图。图19显示自主移动阶段的移动控制。(1)首先,存储装置中保存在路径指导阶段中用第一外界传感器和第二外界传感器的传感器值分别生成的第一局部地图和第二局部地图。(2)在自主移动阶段,第一外界传感器和第二外界传感器分别检测传感器值。内场传感器也检测传感器值,通过累计第一外界传感器或第二外界传感器的传感器值,求出位置和姿势。(3)移动体10比较第一局部地图和第一外界传感器的传感器值,求出与使用第一外界传感器的移动路径之间的偏差(与节点的偏差)。另外,移动体10比较第二局部地图和第二外界传感器的传感器值,求出与使用第二外界传感器的移动路径之间的偏差(与节点的偏差)。如后述,与节点的偏差表示从移动体10看到的路线点8的位置和姿势。移动体10根据第一局部地图和第一外界传感器求出第一外界传感器的可靠度,根据第二局部地图和第二外界传感器算出第二外界传感器的可靠度。(4)移动体10用可靠度对移动体10检测的位置和姿势进行加权,整合使用了第一外界传感器的位置和姿势、和使用了第二外界传感器的位置和姿势。由于经过整合的位置和姿势偏离移动路径,因此位置和姿势的整合相当于整合与移动路径的偏差。(5)移动体10用多个外界传感器的位置和姿势整合而成的位置和姿势进行控制。
[0207] <路径指导阶段的处理>
[0208] 参考图20、图21详述路线指示阶段。图20是路径指导阶段处理的流程图。该处理在图10的步骤S16中执行。
[0209] 首先,信息生成部46将V、E都设为空集合,对拓扑地图G初始化(S101)。信息生成部k46将第k个外界传感器的传感器值或使用外界传感器生成的局部地图设为m。信息生成部k k
46在路径指导阶段开始时,将最初的节点v0加入V。v0中保存了所有该时刻的m(=:mi)。
[0210] 收发部31接收手动操作移动体10的手动操作指令(S102)。移动控制部40响应手动操作处理部44的驱动指令,执行移动体10的移动处理(S103)。
[0211] 判断部32周期性判断移动体10的动作是否达到阈值,例如移动体10是否移动了一定距离以上或旋转了一定角度以上(S104)。在此,阈值可以根据处理负荷、存储器使用量、位置和路径的精度等合理设定,阈值采用例如一定距离时,为1米到数米。
[0212] 如果在步骤S104中判断为是,则信息生成部46将新节点v1加入V,并将新边缘e0,1加入E(S105)。e0,1中保存内界传感器取得的从v0追加时的相对移动量及相对旋转量。在图2中将该节点vi的位置称为路线点8。信息生成部46将节点的编号i加1(S106),例如在通过操作者的操作,到路径指导阶段结束为止的期间(S107的No),同样地,每当移动体10移动一定距离以上或旋转一定角度以上时,信息生成部46追加节点vi和边缘ei‑1,i。
[0213] 节点集合V、边缘集合E可以表示为G={V,E}V={v0,…,vn}E={e0,1,…,en‑1,n}vi=0 N
{mi,…,mi}ei‑1,i={Δxi‑1,i,Δyi‑1,i,Δθi‑1,i}。
[0214] <自主移动阶段的处理>
[0215] 图21是自主移动阶段处理的流程图。该处理在图14的步骤S79中执行。
[0216] 移动体10在自主移动开始前被放置在移动开始地点。将自主移动阶段中的第k个k外界传感器的传感器值设为s。关于步骤S201~S203、S206的具体的计算方法将在后面叙述。
[0217] S201:偏差计算部43b根据移动体10自主移动时的第k个外界传感器的传感器值skk和移动体10在指导行驶时的某节点vi中保存的第k个局部地图wi,计算从移动体10看到的节点vi的位置和姿势的偏差。从移动体10看到的节点vi的位置和姿势是以移动体10的位置和姿势为原点的节点vi的位置和姿势,因此,以移动体10的位置和姿势为基准的节点vi的位置和姿势便成为节点vi的位置和姿势的偏差。位置推定部43c将求出的上述偏差推定为以k k k k
移动体10的位置和姿势为基准的节点vi的位置和姿势x^i ={x^i ,y^i,θ^i}。在此,"^"是帽子,但是由于字体的限制,不是显示在x、y、θ的正上方而是显示在右上方。将进行该运算k k k
的运算设备设为F,用"运算设备Fk:(sk,wi)→x^i"表示。另一方面,由于局部地图mi和第kk k
个外界传感器的传感器值s的精度不明,因此如下所述,根据可靠度对x^i进行整合。
[0218] S202:整合处理部43d计算相对于运算设备Fk的推定可靠度bik。进行该运算的运算k k设备为Bk,用"运算设备Bk:(sk,mi)→bi"表示。
[0219] S203:整合处理部43d根据可靠性对由各外界传感器推定的节点vi的位置和姿势k 0 N 0xi 进行加权,整合。设进行该运算的运算设备为I,用"运算设备I:(x^i ,…,x^i,bi ,…,N k k
bi)→x^i"表示。节点vi的位置和姿势xi是移动体10的位置和姿势与局部地图mi的原点(节k
点)的偏差,因此节点vi的位置和姿势xi的整合包含偏差的整合。
[0220] S204:自主移动处理部43根据节点vi的位置和姿势xi与各边缘中保存的节点间(结节点间)的相对位置{Δxj‑1,i,Δyj‑1,j,Δθj‑1,j},计算移动体坐标系中受到指导的移动路径(即各节点vj的位置和姿势)。设进行该运算的运算设备为T,用"运算设备T:x^i,e0,1,…,en‑1,n)→(x^0,…,x^n)"表示。求出的移动路径成为通过以节点vi的位置和姿势为原点的节点vi以后的节点的移动路径。这样,每当移动体10通过节点vi时,就可以重新计算节点vi以后节点vi的偏移受到控制的移动路径。因此,移动体10能够在与被指导的移动路径偏差小的移动路径上移动。
[0221] S205:计算部43a将经过整合的节点vi的位置和姿势作为原点,累计了内界传感器k的传感器值的位置和姿势、以及基于多个外界传感器的传感器值s的位置和姿势适用于卡尔曼滤波器等,求出位置和姿势。自主移动处理部43根据移动体10的当前位置和姿势,使移动体10以步骤S204中求出的移动体坐标系中受到指导的移动路径(x^0,…,x^n)上移动的方式移动。
[0222] S206:自主移动处理部43根据移动体10的位置和姿势相对于受到指导的移动路径(x^0,…,x^n)中的节点vi的位置和姿势x^i是否接近阈值以内,判断位置姿势推定对象的节点编号i是否前进到下一个。设进行该判断的判断设备设为J,用"判断设备J:(x^i,(x^0,…,x^n))→0(不将i前进到下一个)或1(i前进到下一个)"来表示。
[0223] S207:移动控制部40设自主移动开始时设为i=0,将i加1。
[0224] S208:移动控制部40反复进行图21的处理,直到i大于节点数n。节点数n是到最终目的地为止被保存的节点数。
[0225] 通过图21的步骤S201~S204求出移动体坐标系中的指导移动路径。移动体10按照指导的移动路径移动(S205)。然后,移动体10反复进行步骤S201~S205的计算,同时根据步骤S206的结果设i←i+1。通过重复该过程,移动体10可以沿着指示的移动路径移动。
[0226] 使用GNSS和2D‑LiDAR时的处理示例
[0227] 以下描述自主移动阶段中步骤S201至S203以及S206的具体示例。
[0228] 设mi0为根据GNSS定位履历和内界传感器的里程测量所推定的GNSS坐标系统上的1
位置和姿势以及定位状态(良好/恶劣),mi是从2D‑LiDAR的扫描点云的履历和内界传感器
0
的里程测量生成的移动体坐标系的2次元占有格子地图。另一方面,设s 是根据GNSS定位履
1
历和内界传感器的里程测量所推定的GNSS坐标系统上的位置和姿势以及定位状态,s 是
2D‑LiDAR的扫描点云。
[0229] S201:F0通过比较mi0及s0具有的GNSS定位结果的位置和姿势,计算从移动体10看0 0
到的节点vi的位置和姿势x^i 。设mi为节点vi的GNSS坐标系统的位置和姿势(xi,GNSS,yi,GNSS,
0
θi,GNSS),s 为自主移动时的移动体10的GNSS坐标系统的位置和姿势(xGNSS,yGNSS,θGNSS)。此时,从移动体10看到的节点vi的位置和姿势的处理可以通过式(1)、式(2)求出。用式(1)和式(2)的演算相当于F0。
[0230]
[0231] 从式(1)和式(2)可知,从移动体10看到的节点vi的位置和姿势是相对于GNSS坐标系统中节点vi的位置和姿势(xi,GNSS,yi,GNSS,θi,GNSS)的GNSS坐标系统中移动体10的位置和姿势的偏差(一例第一位置及姿势)。
[0232] 接下来,F1通过mi1具有的二维占有格子地图和s1具有的2D‑LiDAR的扫描点云的匹1 1
配计算,计算从移动体10看到的节点vi的位置和姿势x^i (一例第二位置及姿势)。设mi为以
1
节点vi为原点的二维占有格子地图,s 为自主移动时的移动体10的LiDAR扫描点云{(xj,yj)j=1,……,N}(N是扫描点数)。此时,自主移动处理部43在xy平面内移动二维占有格子地图时,找出将与扫描点云的各点的位置对应的格子的值(有障碍物的格子中有1)全部相加的
1
值成为最大(即扫描点云与地图匹配)的移动方法。这样,就可以求出从移动体10看到的mi的原点(即二维占有格子地图上的节点vi的位置和姿势)。这一系列的处理相当于F1。
[0233] 图22是二维占有格子地图和2D‑LiDAR的扫描点云的匹配计算的示意图。图22的(a)显示匹配前的二维占有格子地图93和2D‑LiDAR的扫描点云94。在二维占有格子地图93中存在障碍物的格子用斜线表示。2D‑LiDAR的扫描点云94显示障碍物的方向和距离。
[0234] 图22的(b)是为了使存在障碍物的格子和2D‑LiDAR的扫描点云94最佳匹配而移动二维占有格子地图93的状态。移动二维占有格子地图93时,二维占有格子地图93的x、y方向的移动量和旋转量偏离。在图22的(b)的状态下,移动体10应该存在于二维占有格子地图93的原点70(=节点vi),因此二维占有格子地图93的x、y方向的移动量和旋转量是从移动体1
10看到的节点vi的位置和姿势x^i。
[0235] S202:b0仅在mi0和s0所具有的GNSS定位状态均为"良好"时为1,否则为0。b1在mi1具1
有的二维占有格子地图中的障碍物数量足够多,并且s 具有的扫描点云94的扫描点数足够多的情况下为1,否则为0。b0、b1不限于1或0,也可以取与局部地图及传感器值的精度相应的
0 0 0
值。例如,设分别在N个阶段评价mi 及s 所具有的GNSS测位状态,合计为s ,分别在N个阶段评价二维占有格子地图上的障碍物数量和扫描点云94的扫描点数,合计为b1。
[0236] S203:如果bi0或bi 1不为0,则I(x^i0,x^i1,bi0,bi1)=(bi0x^i0+bi1x^i1)/(bi0+bi1)。
[0237] 在bi0=bi1=0的情况下,将根据上次的节点vi的位置和姿势的推定结果和内界传感器的里程测量推定的位置和姿势作为推定结果(航位推测)。
[0238] S206:对于在步骤S203中整合的x^i={x^i,y^i,θ^i},如果与√(x^i2+y^i2)的差大于阈值则为0,小于阈值则为1。x^i、y^i是计算部43a求出的移动体10的当前位置。
[0239] 使用GNSS和3D‑LiDAR时的处理示例
[0240] 接下来用图21的流程图,说明处理"3D‑LiDAR"而不是"2D‑LiDAR"的扫描点云的情况。下面说明与"2D‑LiDAR"不同之处,即自主移动阶段中的步骤S201~S203以及S206的详细示例。
[0241] 设mi0为根据GNSS定位履历和内界传感器的里程测量推定的位置和姿势以及定位1
状态(良好/恶劣),设mi是从3D‑LiDAR的扫描点云的履历和内界传感器的里程测量生成的
0
移动体坐标系统的三维点云地图。另一方面,s 是根据GNSS定位履历和内界传感器的里程
1
测量推定的位置和姿势以及定位状态,s是3D‑LiDAR的扫描点云。
[0242] S201:F0通过比较mi0及s0具有的GNSS定位结果的位置和姿势,计算从移动体10看0 0
到的节点vi的位置和姿势x^i 。mi 为节点vi的GNSS坐标系统的位置和姿势(xi,GNSS,yi,GNSS,
0
θi,GNSS),s 为自主移动时移动体10的GNSS坐标系统的位置和姿势(xGNSS,yGNSS,θGNSS)。此时,从移动体10看到的节点vi的位置和姿势的计算处理通过上述的式(1)、式(2)求出。根据式(1)、式(2)的演算相当于F0。
[0243] 从式(1)、式(2)可知,从移动体10看到的节点vi的位置和姿势是GNSS坐标系统中移动体10的位置和姿势相对于GNSS坐标系统中节点vi的位置和姿势(xi,GNSS,yi,GNSS,θi,GNSS)的偏差(一例第一位置和姿势)。
[0244] 接着,F1通过mi1所具有的三维点云地图和s1所具有的3D‑LiDAR的扫描点云的匹配1 1
计算,计算从移动体10看到的节点vi的位置和姿势x^i (一例第二位置及姿势)。设mi是以节
1
点vi为原点的三维点云地图,s 是自主移动时移动体10的3D‑LiDAR扫描点云{(xj,yj)j=
1,……,N}(N是扫描点数)。此时,自主移动处理部43通过NDT匹配(参见非专利文献1:
P.Biber&W.Strasser(2003),https://ieeexplore.ieee.org/document/1249285)等,找出在移动三维点云地图时使与扫描点云的误差成为最小的移动方法。这样,就可以求出从移动体10看到的mi 1的原点(即二维占有格子地图上的节点vi的位置和姿势)。这一系列的处理相当于F1。
[0245] S202:b0仅在mi0和s0所具有的GNSS定位状态均为"良好"时为1,否则为0。b1在mi1所具有的3次元点云地图上3D‑LiDAR的视野内障碍物数量足够多时为1,不是时为0。但是,在计算障碍物数量时自主移动处理部43进行以下的处理。
[0246] 图23是基于障碍物数量的b0的评价的流程图。如图23所示,自主移动处理部43在自主移动开始时进行前处理,读入点云地图(步骤S1),并去除点云地图读入时的地面点云(步骤S2)、进而变换到二维占有格子地图(步骤S3)。地面除去例如如下实施。用内界传感器检测移动体10的倾斜,定义地面平面。计算该地面平面到点云地图上各点的距离,将阈值以内的点判断为地面,去除该点。
[0247] 自主移动处理部43在自主移动中,计算从移动体10看到的上述二维占有格子地图上的相对位置和姿势(步骤S4)。自主移动处理部43根据占有网格的数量计算3D‑LiDAR视野内的障碍物数量(步骤S5)。自主移动处理部43用上述二维占有格子地图的外周长度对障碍物数量进行标准化处理(步骤S6)。自主移动处理部43用经过标准化处理的障碍物数量评价b0(步骤S7)。b0在标准化障碍数量>阈值时为1,相反时为0。障碍物数量标准化处理是为了消除对点云地图范围(大小)的依赖。b0、b1不限于1或0,也可以取与局部地图及传感器值的精0 0
度相应的值。例如,用N个等级分别评价mi 和s所具有的GNSS定位状态,合计为b0,用N个等级分别评价三维点云地图上的障碍物数量和扫描点云94的扫描点数,合计为b 1。
[0248] S203:如果bi0或bi1不是0,则设I(x^i0,x^i1,bi0,bi1)=(bi0x^i0+bi1x^i1)/(bi0+bi1)。
[0249] 当bi0=bi1=0时,将根据上次的节点bi0的位置和姿势的推定结果和内界传感器的里程测量所推定的位置和姿势作为推定结果(航程推算)。
[0250] S206:对于在步骤S203中整合的x^i={x^i,y^i,θ^i},如果比与√(x^i2+y^i2)的差大于阈值则为0,小则为1。x^i、y^i是计算部43a求出的移动体10的当前位置。
[0251] <主要效果>
[0252] 本实施方式的移动体10具有拓扑地图形式的传感器各自独立的局部地图,对于各自独立推定的自己位置和姿势,根据指导行驶时及自主移动时的传感器值,计算位置推定的可靠度,根据可靠度进行加权,整合成最终的位置和姿势。因此,无需为了使各传感器的位置推定结果匹配而通过手动操作来修改地图,即使在路径指导阶段中某一个传感器的定位精度降低,也能够进行高精度的自主移动。
[0253] 利用3D‑LiDAR的可靠度计算有以下两个优点。
[0254] ·由于对地图匹配的可靠度(=移动体10周围的障碍物数量)的计算不是使用实时点云,而是使用地图点云,因此可以事先实施可靠度计算的前处理。换言之,实时的计算负荷小。
[0255] ·观察实时点云进行可靠度计算时,由于一时性通过移动体10周边的障碍物(车辆、人等),使得可靠度上升,可能会采用错误的位置推定结果,但使用地图点云时不用担心这种问题。
[0256] [第二实施方式]
[0257] 在本实施方式中说明显示装置60为HMD(头戴式显示器)时的实施方式。HMD是将一种具有类似护目镜形状的两个显示器分别安装在头部,大部分覆盖双眼。HMD通过在左右眼前显示视差像来实现立体显示。并不一定可以立体显示。HMD除了单纯地立体显示影像的类型之外,还有被称为VR护目镜(Virtual Real ity)、AR护目镜(Augmented Real ity)、MR护目镜(Mixed Real ity)的类型。VR护目镜可以显示人工的虚拟世界。AR护目镜可以立体地读取现实世界,并显示出与现实世界重叠的假想信息。MR护目镜是AR护目镜的扩展,可将实际不存在的东西立体地叠加在现实世界中。本实施方式为了让操作者通过HMD阅览移动体10拍摄的图像数据,可以考虑使用单纯的HMD或AR护目镜。
[0258] 图24是显示装置60为HMD时的显示装置60的一例硬件框图。如图24所示,作为HMD的显示装置60具有计算机的结构。显示装置60具备CPU201、ROM202、RAM203、外设连接I/F205、显示器207、操作部208、介质I/F209、总线211、扬声器212、电子罗盘218、陀螺传感器219、加速度传感器220。
[0259] 其中,CPU201控制HMD整体的动作。ROM202保存用于驱动CPU201的IPL等程序。RAM203被用作CPU201的工作区。
[0260] 外设连接I/F205是用于连接各种外部设备的接口。此时的外部设备是通信管理服务器3、带麦克风的耳机6等。
[0261] 显示器207是一种显示各种图像的液晶或有机EL(Electro Luminescence)等显示部。
[0262] 操作部208是输入设备,用于进行各种操作按钮、电源开关、物理按钮、检测操作者的视线并进行操作的视线操作电路等的各种指示的选择和执行、处理对象的选择、光标的移动等。
[0263] 介质I/F209控制闪存等记录介质209m中数据的读出或写入(保存)。记录介质209m包括DVD和Blu‑rayDisc(注册商标)等。
[0264] 扬声器212是将电信号变换为物理振动,产生音乐或声音等声音的电路。电子罗盘218根据地球的磁力算出HMD的方位,并输出方位信息。陀螺传感器219是检测伴随HMD移动的角度变化(滚转角、俯仰角、偏转角)的传感器。
[0265] 加速度传感器220是检测三轴方向的加速度的传感器。总线211是用于电连接CPU201等的各构成要素的地址总线和数据总线等。
[0266] 本实施方式的显示装置60由于能够根据陀螺传感器219的信号检测显示装置60的姿势,因此能够确定操作者所看的方向。照相机111能够拍摄全天球图像、广角图像或半球图像等,所以显示装置60能够使HMD的显示器207显示操作者所看的方向。因此,与使用鼠标等的指示设备512操作显示在地点显示区域210上的区域相比,更容易看到各种方向。
[0267] 另外,通过状态检测部34确定操作者在HMD上观察任意方向时的移动体10的位置。因此,显示装置60能够使位于从移动体10的位置操作者所看的方向上的建筑物等的注释重叠在从移动体10发送的图像数据上进行显示。在这种情况下,系统管理员等利用移动体10制作的环境地图,设置与建筑物有关的注释。
[0268] 图25显示作为HMD的显示装置60所显示的一例图像数据。图25的图像数据中显示了移动体10的当前位置601以及图像数据中拍摄的名称为"实验楼"的建筑物602。移动体10从显示装置60接收操作者所看的方向,用环境地图从移动体10的位置确定位于操作者所看的方向的建筑物。摄影控制部33将当前位置和建筑物名称等重叠到摄影的图像数据上,收发部31将图像数据送往显示装置60。除了建筑物名称602以外,还可以将过去发生的事故内容、需要注意观察的现象等作为注释显示。因此操作者便于掌握自己正在看哪个方向以及正在看什么等。
[0269] <主要效果>
[0270] 本实施方式的移动体10除了第一实施方式或第二实施方式的效果之外,通过用HMD构成显示装置60,操作者容易看到移动体10拍摄的图像数据。
[0271] <其他应用例>
[0272] 以上用实施例说明了用于实施本发明的最佳方式,但本发明并不受这些实施例的限制,在不脱离本发明的宗旨的范围内,可以进行各种变形及置换。
[0273] 例如,本实施方式主要整合了用两个外界传感器得到的两个位置和姿势,但是也可以整合用散个以上的外界传感器得到的三个以上的位置和姿势。
[0274] 本实施方式的技术不仅在广阔且GNSS定位精度未必高的场所有效,也可以良好地适用于狭小的室内环境或GNSS定位精度高的场所等。
[0275] 作为一例外界传感器,也可以使用基于UWB(Ultra‑Wideband)的位置信息。在UWB方式中,在移动体10上安装通信标签,在移动环境中以30m~40m的间隔设置传感器。通过两个以上的传感器接收通信标签发出的电波,就能确定通信标签的位置。
[0276] 图6等是为了便于理解移动体10、显示装置60的处理,按照主要功能进行分割的例子。本发明对处理单位的分割方式和名称不做限制。移动体10、显示装置60的处理也可以根据处理内容分割成更多的处理单位。也可以分割成一个处理单位包含更多的处理。
[0277] 上述说明的实施方式的各功能可以通过一个或多个处理电路来实现。本文中的"处理电路"包括如通过电路安装的处理器那样,通过软件进行编程以执行各功能的处理器、以及被设计成执行上述各功能的ASIC(Appl ication Specific Integrated Circuit,专用集成电路)、DSP(digital signal processor,数字信号处理器)、FPGA(field programmable gate array,现场可编程逻辑门阵列)、现有的电路模块等器件。
[0278] 本发明的实施方式对计算机的能力和功能性带来了很大的改进。这些改进使操作者能够利用提供与在信息处理装置中保存和呈现信息的方式表格更有效和更牢固交互的计算机。另外,本发明的实施通方式过使用更高效、强大和牢固的用户界面提供更好的用户体验。这样的用户界面可以提供更好的人机交互。
[0279] <备注>
[0280] [1]一种移动体,可以进行指导行驶和自主移动,所述指导行驶是指所述移动体记忆在按照操作者手动操作移动通过移动路径时的位置和姿势,所述自主行驶是以所记忆的所述姿势移动通过所记忆的所述位置,其特征在于,具有:
[0281] 信息生成部,用于将所述移动路径上的各个节点与多个外界传感器相对应,生成用来计算所述指导行驶时通过的节点和所述自主移动时通过的地点之间的偏差的计算信息;
[0282] 偏差计算部,用于对各个所述外界传感器,根据所述计算信息和所述自主移动时所述外界传感器的传感器值,计算所述偏差;
[0283] 位置推定部,用于对各个所述外界传感器,将求出的所述偏差推定为以所述移动体的位置和姿势为基准的所述移动路径上各节点的位置及姿势;
[0284] 整合处理部,用于整合对各个所述外界传感器所推定的所述移动路径上各个节点的位置及姿势;以及,
[0285] 自主移动处理部,用于根据经过所述整合处理部整合的所述移动路径上各个节点的位置及姿势,自主移动通过所述移动路径。
[0286] [2]根据[1]所述的移动体,其特征在于,
[0287] 具有一个以上内界传感器,用于检测移动量和移动方向,
[0288] 所述信息生成部还使用所述内界传感器的传感器值生成所述计算信息,
[0289] 在所述移动体进行手动移动的指导行驶时,所述信息生成部对于所述移动路径上的每个所述节点,将由多个所述外界传感器分别和所述内界传感器得到的所述计算信息与所述外界传感器对应起来保存到存储部中。
[0290] [3]根据[1]或[2]所述的移动体,其特征在于,
[0291] 所述整合处理部根据所述计算信息所具有的可靠性和自主移动时所述外界传感器的传感器值的可靠性,对以针对各个所述外界传感器所推定的所述移动体的位置和姿势为基准的所述节点的位置和姿势进行加权,整合针对各个所述外界传感器推定的所述节点的位置和姿势。
[0292] [4]根据[1]~[3]中任意一项所述的移动体,其特征在于,
[0293] 具有自主移动处理部,用于在所述整合处理部整合了自主移动时任意所述节点上针对各个所述外界传感器所推定的所述节点的位置及姿势的情况下,根据经过整合的所述节点的位置和姿势、以及所述计算信息中包含的节点间的相对位置信息,计算任意所述节点之后的所述节点的位置及姿势,计算以任意所述节点的所述移动体的位置及姿势为原点的所述移动路径。
[0294] [5]根据[1]~[4]中任意一项所述的移动体,多个所述外界传感器是GNSS、2D‑LiDAR以及可以获得距离信息的照相机之中的两个以上。
[0295] [6]根据[5]所述的移动体,其特征在于,
[0296] 当第一外界传感器是GNSS时,所述计算信息为GNSS坐标系统的位置和姿势,当第二外界传感器是2D‑LiDAR时,所述计算信息为二维占有格子地图,
[0297] 所述位置推定部针对所述第一外界传感器,将相对于所述计算信息中包含的所述GNSS坐标系统的位置和姿势的自主移动时的传感器值,即GNSS坐标系统的位置和姿势的偏差,推定为以所述移动体的位置和姿势为基准的所述节点的第一位置及姿势,针对所述第二外界传感器,比较所述二维占有格子地图和自主移动时的传感器值即扫描点云,将相对于所述二维占有格子地图原点的所述移动体的位置和姿势的偏差,推定为以所述移动体的位置和姿势为基准的所述节点的第二位置及姿势,
[0298] 所述整合处理部对所述第一位置及姿势和第二位置及姿势进行整合。
[0299] [7]根据[1]~[4]中任意一项所述的移动体,其特征在于,多个所述外界传感器是GNSS、3D‑LiDAR、以及能够获得距离信息的照相机之中两个以上。
[0300] [8]根据[7]所述的移动体,其特征在于,
[0301] 当第一外界传感器是GNSS时,所述计算信息是GNSS坐标系的位置和姿势,当第二外界传感器是3D‑LiDAR时,所述计算信息是三维点云地图,
[0302] 所述位置推定部针对所述第一外界传感器,将相对于所述计算信息包含中的所述GNSS坐标系统的位置和姿势的自主移动时的传感器值,即GNSS坐标系统的位置和姿势的偏差,推定为以所述移动体的位置和姿势为基准的所述节点的第一位置及姿势,针对所述第二外界传感器,比较所述三维点云地图与自主移动时的传感器值即扫描点云,将相对于所述三维点云地图原点的所述移动体的位置和姿势的偏差,推定为以所述移动体的位置和姿势为基准的所述节点的第二位置和姿势,
[0303] 所述整合处理部对所述第一位置和姿势和第二位置和姿势进行整合。