使用RGB | 您所在的位置:网站首页 › 跟踪器机器怎么使用的 › 使用RGB |
Control Design for Robotic Human-Following and Obstacle Avoidance Using an RGB-D Camera
摘要1、 介绍2、系统总体架构3、算法介绍3.1 用户识别和定位3.2 使用EKF跟踪用户3.3 目标检测3.4 人类目标跟随与避障
4. 试验结果4.1 Human-Following控制4.2避障时跟随人
5. 结论和未来的工作
摘要
机器人跟随人的任务要求移动机器人检测并跟踪选定的目标人,并与目标保持适当的距离。在实际应用中,机器人必须在考虑意外障碍物的情况下不断地估计目标位置,以保持跟随人控制的稳定。本文提出将目标跟随控制与避障相结合,使机器人在避障的同时跟随目标。在本设计中,利用RGB-D摄像机获取障碍物和人体特征。深层神经网络(DNN)模型用于在环境中检测和识别用户。将改进的人工势场算法应用于机器人运动规划中,将目标人的位置信息和障碍物信息结合起来。在移动机器人上的实际实验验证了该方法的有效性。在室内环境中,机器人可以在躲避障碍物的同时稳定跟随用户。 1、 介绍各种各样的机器人正在出现,在日常生活中提供各种服务。在许多应用程序场景中,例如在机场或购物中心中,移动机器人需要跟随用户[1]与用户进行交互。跟随人是移动服务机器人的一个有用功能。人体检测和人体跟踪控制的方法有很多种。机器人跟踪的主要挑战是如何在复杂环境下稳定地跟踪所选择的目标。移动机器人在跟随人的过程中遇到静态或动态障碍,需要在有效跟踪用户的同时避开障碍物。 保持被跟踪者在机器人的视场(FOV)内是很重要的。通过记录历史信息来估计可能的位置,机器人可以检索目标并继续跟随用户。对于人体检测,设计师经常采用基于特征分析[2]-[4]和骨架检测策略[5]。考虑到环境因素的影响,采用超声波传感器、二维激光雷达、RGB摄像机、RGB- d摄像机等多种环境传感器进行人体检测。超声波传感器相对便宜,但它很容易受到干扰,角度分辨率差。Afghani等人[6]利用超声波传感器检测环境障碍物信息,然后对红外传感器的感知范围进行分割,判断是避开障碍物还是跟踪目标。Song等[7]使用二维激光雷达检测人体腿部特征和环境信息,计算出避障所需的角速度,然后使用共享控制结合以下运动命令。相机可以提供彩色图像,充分代表对象的特征。RGB- D相机可以提供RGB图像和深度图像。但是相机很容易受到环境光照条件的影响。Yun et al. [8]利用RGB摄像机检测目标,利用二维激光雷达检测环境障碍物,然后利用势场法(PFM)计算出最合适的路径方向。Lee等人[9]使用RGB-D摄像机对用户进行检测和识别,并通过轨迹预测和反射控制生成平滑安全的路径。 本文利用RGB-D摄像机将目标信息与环境障碍物信息相结合,设计了一种鲁棒的人类目标跟随避障系统。该系统能够在复杂环境中避开障碍物,同时稳定有效地跟踪人类目标。 2、系统总体架构图1显示了所提出的的人类目标跟踪系统。一个RGB-D摄像头被安装在机器人的前面,用来检测用户和环境中的障碍物。提出的系统结构由三个部分组成。第一部分是用户跟踪模块。第二部分是障碍物检测模块。第三部分是带避障的人体跟随运动规划与控制。这种设计的优点是提供了机器人能够在避开障碍物的同时持续跟随用户。用户跟踪模块采用[10]中的用户识别和定位算法。在本设计中,训练了两种深度学习模型用于人类分类和识别。首先采用Inception[11]作为检测器,采用three-stream暹罗架构进行具体的人员识别。这些模型允许机器人实时识别预先注册的用户。通过深度信息得到用户相对于机器人的位置。基于先前获得的用户位置和里程计信息进一步采用扩展卡尔曼滤波器(EKF)进行鲁棒跟踪。 我们采用[10]和开源[12]的Re-ID方法来构建机器人的人体识别功能。通过深度神经网络,为图像中选定的人物生成一个边界框。将边界框图像与预注册的用户图像进行相似度评分。如图2所示,将检测到的图中绿色标记的边界框作为区分用户的依据。目标位置
P
u
v
=
[
u
t
,
v
t
,
1
]
T
\bold{P}_{uv}=[u_t,v_t,1]^T
Puv=[ut,vt,1]T推导如下: 如图3所示。通过针孔相机模型将像素坐标转换为三维坐标。目标点在三维空间中的坐标 P = [ x , y , z ] T \bold{P}=[x,y,z]^T P=[x,y,z]T通过 P u v \bold{P}_{uv} Puv计算得到: P = z K − 1 P u v (3) \bold P=z\bold K^{-1} \bold{P}_{uv}\tag{3} P=zK−1Puv(3) K ∈ R 3 × 3 \bold K \in R^{3\times3} K∈R3×3是相机的内参矩阵。由于摄像机是固定在机器人上的,所以这里不需要考虑外部参数。摄像机坐标是主坐标。 3.2 使用EKF跟踪用户为了持续跟踪用户,我们记录下机器人在每一时刻的位置信息,以估计下一时刻的信息。机器人与用户两个连续瞬间的关系如图4所示。在机器人坐标系中,定义机器人在第k时刻的位置为
r
k
=
[
x
r
,
y
r
,
1
,
1
]
T
\bold{r}_k=[x_r,y_r,1,1]^T
rk=[xr,yr,1,1]T,从
r
k
\bold{r}_k
rk到
r
k
+
1
\bold{r}_{k+1}
rk+1的传递矩阵为
W
k
∈
R
4
×
4
\bold W_k \in R^{4\times4}
Wk∈R4×4 h ^ k + 1 = h k + 1 W k − 1 (11) \bold{\hat{h}}_{k+1} = \bold h_{k+1} \bold W_k^{-1}\tag{11} h^k+1=hk+1Wk−1(11) 利用上述预测模型,我们可以利用EKF估计目标位置。根据第k时刻人在机器人坐标中的位置和速度,定义状态
x
k
x_k
xk为 如果机器人想要避开障碍物,机器人需要知道环境信息。通过深度相机,我们得到了一个深度图像与相机的FOV大小。为了方便运动规划,我们将3 d信息转化为一个二维S = (d,ϕ)的信息,这通过ROS自带函数可以实现[11]。原理如图5所示。公式如下 当机器人跟随用户时,用户路径附近可能会出现障碍物。为了实时躲避障碍物并保持跟踪,机器人需要进行相应的处理。为此,我们选择APF算法作为基础[15]。与势函数对应的引力和斥力函数可以表示为:
为了验证所提出的方法,我们使用一个实验室移动机器人进行了两个实验。机器人前端安装了一个RGB-D摄像头,用于人跟随和避障。几个有趣的实验结果表明,机器人可以连续跟踪用户,同时避免意外障碍。 4.1 Human-Following控制本实验的目的是验证Human-Following行为的有效性。实验场地为约6m x 2.4m的矩形区域。在一个走廊。用户走在走廊里,机器人跟在后面。通过在移动机器人上实现的激光雷达SLAM记录轨迹。 如图6 (a) - ©所示,机器人通过预先注册的用户数据识别相机FOV中的特定用户。机器人注视着相似性得分最高的那个人,开始跟着他走。如图6 (d) - (f)所示,机器人基于用户信息稳定跟随用户。在图6 (g)中,用户两侧出现了两个来自不同方向的行人。如图6 (h)-(i)所示,机器人利用用户的历史信息通过EKF预测下一时刻的距离和角度,然后选择最接近预测结果的人跟随。从图中可以看出,机器人的运动完全依赖于用户。图7描绘了记录的机器人轨迹以及用户与机器人之间的关系。红色实线是机器人的轨迹。红色的三角形是记录下来的机器人姿势,黄色的笑脸是用户。蓝色的菱形和绿色的椭圆形表示行人的轨迹。 这个实验的目的是为了验证机器人在避开意想不到的障碍物时是否会继续跟随用户。在实验中,用户在环境中行走,机器人在后面跟着。有其他行人靠近用户,但机器人受到其他人的影响,一直跟随同一个人。当用户通过障碍物时,机器人会避开障碍物并返回继续有效地跟随用户。 实验结果如图8所示。 本文提出了一种基于RGB-D摄像机的人体跟踪和避障运动控制系统。使用RGB-D摄像机通过深度神经网络来对用户进行检测,利用深度图像估计用户位置和环境障碍。EKF用于预测用户的位置,防止用户在多人同时出现时离开机器人的FOV。通过设计的权重参数,将避障与人类目标跟随相结合,实现环境中的跟踪行为。实验结果表明,该机器人能够在复杂环境下稳定地跟随用户。然而,在公共区域,可能同时有多个人,用户的检测将变得更加具有挑战性。在未来,我们将加强人体检测,以实现更可靠的人体跟踪。 |
CopyRight 2018-2019 实验室设备网 版权所有 |