一种基于人群密度估计的指引机器人方法及系统

文档序号:24892761发布日期:2021-04-30 13:20阅读:107来源:国知局
一种基于人群密度估计的指引机器人方法及系统

本发明涉及机器人技术领域,尤其涉及一种基于人群密度估计的指引机器人方法及系统。



背景技术:

在我们的生活中,服务机器人在服务业以及医疗行业的需求在逐年上涨,这些服务机器人具有解放生产力、发展生产力和满足人们的消费升级需求等巨大应用价值。并且随着人工智能的不断发展,服务机器人也在人工智能技术应用方面取得了巨大的发展,在深度学习,机器视觉,语义分析等,都让服务机器人更加智能化。

但是作为服务机器人,智能引导机器人研究方向仍然侧重于人机交互以及智能避障方面。实际引导机器人所处环境一般为公共室内场所,公共室内场所带来的就是人流量的不确定性,目前我们研究更侧重于与被引导人的交互,而忽略了人流带来的体验影响。



技术实现要素:

本发明提供一种基于人群密度估计的指引机器人方法及系统,以解决现有技术中所存在的一个或多个技术问题,至少提供一种有益的选择或创造条件。

第一方面,本发明实施例提供了一种基于人群密度估计的指引机器人方法,所述方法包括:

处于不同区域的多个摄像头分别获取视频流信息,并将获取的视频流信息发送到中央服务器;

机器人获取输入的目的地信息,并计算机器人位置信息,将所述机器人位置信息和所述目的地信息发送给中央服务器;

中央服务器分别将多个视频流信息输入人群密度估计网络模型,输出二维图组,所述二维图组包括多个基于人群密度估计的热力图,每个热力图与每个视频流信息对应,并将二维图组的每个热力图利用pca降维进行处理得到每个热力图所在区域的密度信息;

中央服务器根据所述机器人信息、目的地信息、预存的地图信息和所述二维图组获取所有可行路径;

中央服务器根据所述密度信息,利用贪心算法对所有可行路径进行遍历求解,得到最优的引导路径,并将所述引导路径发送给机器人;

机器人根据接收的所述引导路径控制机器人的移动。

进一步,所述方法还包括:在机器人的移动过程中,机器人实时获取机器人的当前姿态,利用slam导航算法控制机器人进行移动和避障。

进一步,利用粒子滤波算法计算机器人位置信息。

进一步,将二维图组的每个热力图利用pca降维得到每个热力图所在区域的密度信息包括:

采用pca降维,将每个热力图转化成一维数据,其中所述一维数据包含了热力图信息;

将预设的一维数组与所述一维数据相乘得到相乘后的一维数据,其中预设的一维数组中的数据代表一维数据中的数据的权重;

将所述相乘后的一维数据取平方相加并开根号的形式计算出该区域的平均密度作为密度信息。

进一步,中央服务器根据密度信息,利用贪心算法对所有可行路径进行遍历求解,得到最优的引导路径包括:

根据每个热力图对应的所述密度信息,计算经过每个热力图所在区域的代价时间:

ci=log(hi2+σi2)*pi;

其中,ci为经过第i个热力图所在区域的代价时间,hi代表了第i个热力图对应的密度信息,σi为预先调整的矫正变量,pi为预先设置的定值,1≤i≤n,n为热力图的数量;

计算从第i个热力图所在区域到第j个热力图所在区域的代价时间:

d[i,j]=(ci+cj)/2,i≠j;

d[i,i]=0;

其中,d[i,j]表示第i个热力图所在区域到第j个热力图所在区域的代价时间,cj为经过第j个热力图所在区域的代价时间,1≤j≤n;

获取所有可行路径,根据d[i,j]和贪心算法对所有可行路径进行遍历求解,以最小代价时间的可行路径作为最优的引导路径。

第二方面,本发明实施例还提供了一种基于人群密度估计的指引机器人系统,包括:机器人、多个摄像头、中央服务器;

多个摄像头,位于不同的区域,分别用于获取视频流信息,并将获取的视频流信息发送到中央服务器;

机器人,用于获取输入的目的地信息,并计算机器人位置信息,将所述机器人位置信息和所述目的地信息发送给中央服务器;以及接收中央服务器发送的引导路径,根据所述引导路径控制机器人的移动;

中央服务器,用于分别将多个视频流信息输入人群密度估计网络模型,输出二维图组,所述二维图组包括多个基于人群密度估计的热力图,每个热力图与每个视频流信息对应,并将二维图组中的每个热力图利用pca降维进行处理得到每个热力图所在区域的密度信息,并根据所述机器人信息、目的地信息、预存的地图信息和所述二维图组获取所有可行路径,以及根据所述密度信息,利用贪心算法对所有可行路径进行遍历求解,得到最优的引导路径,并将所述引导路径发送给机器人。

进一步,所述机器人包括:zed摄像头、语音输入模块、触摸屏、处理器、工控机、mcu控制器和激光雷达传感器,处理器分别与zed摄像头、语音输入模块、触摸屏和工控机连接,工控机分别与处理器、mcu控制器和激光雷达传感器连接;

zed摄像头,位于机器人的最上方,用于获取用户的肢体动作图像;

语音输入模块,用于获取语音指令;

触摸屏,用于获取用户的输入;

处理器,用于对用户的肢体动作图像或语音指令或用户的输入进行识别得到控制指令,其中,所述语音指令或用户的输入包括目的地信息;

工控机,用于对获取的激光雷达传感器的信息进行处理,根据所述控制指令和处理后的激光雷达传感器的信息控制slam建图导航框架的运行;

mcu控制器,用于获取处理后的激光雷达传感器的信息,并与预存的地图信息进行匹配,利用粒子滤波算法计算出机器人的位置。

进一步,所述机器人还包括轮式里程计,所述轮式里程计与所述mcu控制器连接,所述mcu控制器,还用于根据处理后的激光雷达传感器的信息和轮式里程计的信息实时获取机器人的当前姿态,利用slam导航算法控制机器人移动和避障。

进一步,所述机器人为全向轮式机器人,包括三轮全向底盘。

进一步,所述激光雷达传感器的型号为rplidara2。

本发明实施例的一种基于人群密度估计的指引机器人方法及系统,至少具有以下有益效果:将人群密度估计网络与指引机器人相结合,设计了一种从全局视角观察的指引机器人引导系统,根据多个摄像头获取的多个视频流信息获得多个热力图,对每个热力图进行处理得到多个区域的密度信息,根据密度信息得到最优的引导路径,保证了行人能够在密集人群的室内公共场景下得到较好的被引领体验,并且,机器人利用slam导航算法能够自动躲避障碍物。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1是本发明实施例提供的一种基于人群密度估计的指引机器人方法的流程图。

图2是本发明实施例提供的一种基于人群密度估计的指引机器人系统的结构示意图。

图3是本发明实施例提供的一种机器人的控制系统的结构示意图。

图4是本发明实施例提供的一种机器人的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

需要说明的是,虽然在系统示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于系统中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

图1是本发明实施例提供的一种基于人群密度估计的指引机器人方法,包括以下步骤:

s11、处于不同区域的多个摄像头分别获取视频流信息,并将获取的视频流信息发送到中央服务器;

s12、机器人获取输入的目的地信息,并计算机器人位置信息,将所述机器人位置信息和所述目的地信息发送给中央服务器;

s13、中央服务器分别将多个视频流信息输入人群密度估计网络模型,输出二维图组,所述二维图组包括多个基于人群密度估计的热力图,每个热力图与每个视频流信息对应,并将二维图组的每个热力图利用pca降维进行处理得到每个热力图所在区域的密度信息;

s14、中央服务器根据所述机器人信息、目的地信息、预存的地图信息和所述二维图组获取所有可行路径;

s15、中央服务器根据所述密度信息,利用贪心算法对所有可行路径进行遍历求解,得到最优的引导路径,并将所述引导路径发送给机器人;

s16、机器人根据接收的所述引导路径控制机器人的移动。

具体地,在室内的各个区域分别设置摄像头,每个摄像头用于捕捉所在区域的视频流信息,并将获取的视频流信息发送给中央服务器。

在中央服务器进行信息处理,能够对接收到的视频流信息进行处理,将信息处理后得到的引导路径发送给机器人,从而避免在机器人处进行大数据处理,减轻机器人的计算负担。

人群密度估计网络模型采用论文中“residualregressionwithsemanticpriorforcrowdcounting,jiawanetal,ieee,2019”中的模型结构,利用了residualregression算法。

一种基于人群密度估计的指引机器人方法还包括:在机器人的移动过程中,机器人实时获取机器人的当前姿态,利用slam导航算法控制机器人进行移动和避障。其中机器人的当前姿态包括机器人的当前位置和方向。机器人可以根据机器人的当前位置和方向,以及引导路径控制机器人在移动过程中进行避障。利用slam导航算法控制机器人进行移动和避障属于本领域的常用技术手段,此处不再累赘。

进一步,步骤s2中计算机器人位置信息为:利用粒子滤波算法计算机器人位置信息。具体为:

s21、在地图上随机生成总数为k的粒子群,并使用矩阵存储粒子信息;

s22、控制机器人按照运动方程移动,到达下一个位置后,对机器人的位置进行测量,得到机器人的位置;

s23、随机生成的粒子伴随机器人的移动而移动,把所有的粒子带入运动方程中,得到粒子的下一个位置,同时计算每个粒子的位置和测量得到的机器人的位置之间的几何距离,按照距离的不同给每个粒子添加一个权重,其中,距离越近,权重越大,得到全部粒子的权重后,将它们进行归一化;

s24、对粒子群进行重采样,重新采样m个粒子组成新的粒子群,其中m小于k,新的粒子群保留权重大的粒子,其中权重大的粒子被反复抽到,权重小的粒子被丢弃;

s25、重复步骤s23-s24,直到粒子收敛,通过收敛的粒子求加权平均值计算机器人位置信息。

进一步,步骤s3中将二维图组的每个热力图利用pca降维进行处理得到每个热力图所在区域的密度信息包括:

s31、采用pca降维,将每个热力图转化成一维数据,其中所述一维数据包含了热力图信息;

s32、将预设的一维数组与所述一维数据相乘得到相乘后的一维数据,其中预设的一维数组中的数据代表一维数据中的数据的权重;

s33、将所述相乘后的一维数据取平方相加并开根号的形式计算出该区域的平均密度作为密度信息。

其中,每个热力图包括长度、宽度和rgb色域,将该热力图转换为一维数据,热力图体现所在区域的人群密度信息,因此,一维数据包含了热力图信息。每个热力图包含有若干个子区域的人群密度信息,若干个子区域构成热力图所在区域,不同子区域的密度信息权重不一样,因此,将预设的一维数组与所述一维数据相乘得到相乘后的一维数据,其中预设的一维数组中的数据代表一维数据中的数据的权重。

进一步,步骤s5中的中央服务器根据所述密度信息,利用贪心算法对所有可行路径进行遍历求解,得到最优的引导路径包括:

s41、根据每个热力图对应的所述密度信息,计算经过每个热力图所在区域的代价时间:

ci=log(hi2+σi2)*pi;

其中,ci为经过第i个热力图所在区域的代价时间,hi代表了第i个热力图对应的密度信息,σi为预先调整的矫正变量,pi为预先设置的定值,1≤i≤n,n为热力图的数量;

s42、计算从第i个热力图所在区域到第j个热力图所在区域的代价时间:

d[i,j]=(ci+cj)/2,i≠j;

d[i,i]=0;

其中,d[i,j]表示第i个热力图所在区域到第j个热力图所在区域的代价时间,cj为经过第j个热力图所在区域的代价时间,1≤j≤n;以第i个热力图所在区域的中心点为起点,以第j个热力图所在区域的中心点为终点作为从第i个热力图所在区域到第j个热力图所在区域的路径;

s43、获取所有可行路径,根据d[i,j]和贪心算法对所有可行路径进行遍历求解,以最小代价时间的可行路径作为最优的引导路径。

由于室内场景中各个摄像头所在区域是有限的,因此,可以确定所有可行路径,利用贪心算法对所有可行路径进行遍历求解,每个可行路径可能包括多个区域,根据d[i,j]可以求出所有路径的代价时间,以最小代价时间的可行路径作为最优的引导路径。

图2是本发明实施例提供的一种基于人群密度估计的指引机器人系统的结构示意图,该系统包括:包括:机器人、多个摄像头、中央服务器;图2中示出的3个摄像头只是举例说明,摄像头的数量可以根据实际场景的大小而设置。

多个摄像头,位于不同的区域,分别用于获取视频流信息,并将获取的视频流信息发送到中央服务器;

机器人,用于获取输入的目的地信息,并计算机器人位置信息,将所述机器人位置信息和所述目的地信息发送给中央服务器;以及接收中央服务器发送的引导路径,根据所述引导路径控制机器人的移动;

中央服务器,用于分别将多个视频流信息输入人群密度估计网络模型,输出二维图组,所述二维图组包括多个基于人群密度估计的热力图,每个热力图与每个视频流信息对应,并将二维图组中的每个热力图利用pca降维进行处理得到每个热力图所在区域的密度信息,并根据所述机器人信息、目的地信息、预存的地图信息和所述二维图组获取所有可行路径,以及根据所述密度信息,利用贪心算法对所有可行路径进行遍历求解,得到最优的引导路径,并将所述引导路径发送给机器人。

图3是本发明实施例提供的一种机器人的控制系统,图4是本发明实施例提供的一种机器人的结构图,如图3和图4所示,机器人的控制系统包括:语音输入模块11、zed摄像头12、触摸屏13、处理器14、工控机15、mcu控制器16和激光雷达传感器17,处理器14分别与zed摄像头12、语音输入模块11、触摸屏13和工控机15连接,工控机15分别与处理器14、mcu控制器16和激光雷达传感器17连接;

zed摄像头12,位于机器人的最上方,用于获取用户的肢体动作图像;

语音输入模块11,用于获取语音指令;

触摸屏13,用于获取用户的输入;

处理器14,用于对用户的肢体动作图像或语音指令或用户的输入进行识别得到控制指令,其中,所述语音指令或用户的输入包括目的地信息;

工控机15,用于对获取的激光雷达传感器17的信息进行处理,根据所述控制指令和处理后的激光雷达传感器的信息控制slam建图导航框架的运行;

mcu控制器16,用于获取处理后的激光雷达传感器的信息,并与预存的地图信息进行匹配,利用粒子滤波算法计算出机器人的位置。

进一步,所述机器人的控制系统还包括轮式里程计18,所述轮式里程计18与所述mcu控制器16连接,所述mcu控制器16,还用于根据处理后的激光雷达传感器的信息和轮式里程计的信息实时获取机器人的当前姿态,利用slam导航算法控制机器人移动和避障。

进一步,所述机器人为全向轮式机器人,包括三轮全向底盘。

进一步,所述激光雷达传感器17的型号为rplidara2。

本发明实施例的一种基于人群密度估计的指引机器人方法及系统,将人群密度估计网络与指引机器人相结合,根据多个摄像头获取的多个视频流信息获得多个热力图,对每个热力图进行处理得到多个区域的密度信息,根据密度信息得到最优的引导路径,保证了行人能够在密集人群的室内公共场景下得到较好的被引领体验,并且,还利用了slam导航算法进行避障,将机器人的slam导航算法以及人群密度估计算法相结合实现对室内指引路线的最优化,引导机器人能够应对大流量公共室内场景,并保证用户的体验的同时能够自动躲避障碍物。

本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

以上是对本发明的较佳实施进行了具体说明,但本发明并不局限于上述实施方式,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变形或替换,这些等同的变形或替换均包含在本发明权利要求所限定的范围内。

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