首页> 中国专利> 基于Kinect网络的大规模场景群体用户跟踪系统与方法

基于Kinect网络的大规模场景群体用户跟踪系统与方法

摘要

本发明公开了一种基于Kinect网络的大规模场景群体用户跟踪系统与方法,该系统具有简单、方便、易操作等优点。对于大规模场景的群体互动游戏,根据每个Kinect可视范围的有效区域,将大规模场景划分为若干小区域,通过Kinect捕获的用户深度图像信息,对不同区域的用户进行实时跟踪,并对不同Kinect捕获的多用户数据进行关联,完成对用户的实时跟踪和身份确认。方便、易操作、成本较低等优点。Kinect网络的布置不需要精准的测量,每个Kinect只负责捕获各自有效区域的用户即可。每个Kinect可视区域之间不需要重叠,即最大限度节省用户捕获设备的使用数量。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-11-22

    未缴年费专利权终止 IPC(主分类):A63F13/428 授权公告日:20150902 终止日期:20181209 申请日:20141209

    专利权的终止

  • 2015-09-02

    授权

    授权

  • 2015-04-29

    实质审查的生效 IPC(主分类):A63F13/428 申请日:20141209

    实质审查的生效

  • 2015-04-01

    公开

    公开

说明书

技术领域

本发明涉及一种基于Kinect网络的大规模场景群体用户跟踪系统与方法。

背景技术

随着社会现代化水平的提高,人们对于娱乐文化生活的要求也越来越高,以三维、沉浸感的逼真输出为标志的虚拟现实技术也逐渐被应用到这些领域,基于群体的虚拟现实游戏逐渐受到青睐。2011年10月由Microsoft Game Studios推出的《Kinect运动大会2》,包含了六种全新、支持多人和单人模式的运动,包括网球、高尔夫、美式足球、棒球、滑雪及飞镖。当前比较流行的7D动感影院赢得了追求新鲜感、刺激感的年轻观众的青睐,先进的7D互动技术让好奇的观众感受到了科技带来的影视震撼,多人甚至数十人在屏幕前边看边玩,这种具有互动竞争功能的多人对战/协作娱乐令人沉醉其中,乐在其中。

但是,目前的群体互动虚拟游戏支持的人数较少,对于大规模场景中的群体互动是无效的。基于单摄像机跟踪方法的监控范围有限,而且容易受遮挡等干扰导致跟踪失败。基于多摄像机的跟踪方法不仅可以扩展监控区域,适合大规模场景的跟踪,而且可以提供多个不同的视角以利于解决遮挡问题。因此,本发明利用多摄像机跟踪设计了支持大规模场景的群体用户跟踪方法,利用Kinect作为用户捕获设备,在场景中布置Kinect网络,借助Kinect之间的协同工作,将场景划分为若干个小区域,对不同区域的用户分别进行实时跟踪,然后对不同Kinect捕获的用户数据进行关联,完成对大规模场景中群体用户的实时跟踪和身份确认,为群体互动虚拟游戏提供数据来源。

发明内容

本发明为了解决上述问题,提出了一种基于Kinect网络的大规模场景群体用户跟踪系统与方法,本系统通过对大规模场景的群体互动游戏,根据每个Kinect可视范围的有效区域,将大规模场景划分为若干小区域,通过Kinect捕获的用户深度图像信息,对不同区域的用户进行实时跟踪,并对不同Kinect捕获的多用户数据进行关联,完成对用户的实时跟踪和身份确认。

为了实现上述目的,本发明采用如下技术方案:

一种基于Kinect网络的大规模场景的群体用户跟踪系统,包括Kinect网络布置模块、Kinect校正模块、Kinect通讯模块和群体用户跟踪模块,其中:

所述Kinect网络布置模块,用于将大规模场景覆盖,将场景划分为若干个区域,划分方法是:调整同一高度下的各Kinect的水平方向的位置,使得各个Kinect在地面的矩形捕捉区域拼接为一个无缝的大区域;获取任意区域的用户信息,为群体用户跟踪模块提供输入数据,每个区域由1个Kinect负责,获取该区域的用户深度信息;

所述Kinect校正模块,用于将每个Kinect自身的坐标映射到世界坐标中,对每个Kinect捕获到的用户信息进行坐标转换,完成各个Kinect坐标的校正;

所述Kinect通讯模块,用于将各个Kinect(即客户端)计算得到的用户信息进行融合,集中传送到服务器端,服务器端进行数据关联、用户跟踪;

所述群体用户跟踪模块,包括两部分:基于Kinect客户端的用户跟踪子模块和基于Kinect服务器端的用户跟踪子模块,用于对任意区域的用户进行实时跟踪,并对不同Kinect捕获的多用户数据进行关联,完成对用户的实时跟踪和身份确认。

基于上述系统的跟踪方法,包括以下步骤:

(1)开启Kinect网络布置模块:根据每个Kinect深度图像可视范围的有效区域,将大规模场景划分为若干个小区域,进行空间Kinect布置,得到每个区域的深度图像信息;

(2)开启Kinect校正模块:将每个Kinect自身的坐标映射到世界坐标中,对每个Kinect计算得到的用户位置信息进行坐标转换,转换为大规模场景中的位置坐标;

(3)开启Kinect通讯模块:将上述每个Kinect得到的用户位置信息,通过socket通讯方式传送到服务器;

(4)开启群体用户跟踪模块:首先通过Kinect客户端的用户跟踪子模块得到每个区域内用户的位置信息,然后通过Kinect通讯模块将数据传送到服务器,服务器进行数据关联,完成对任意区域的用户进行实时跟踪。

所述步骤(2)中Kinect校正方法,具体包括以下步骤:

(2-1)标记Kinect有效的可视区域,以Kinect获得的深度图像和彩色图像为参考标准,分别用不同高度的目标物体在Kinect所能的覆盖区域移动,在地面上标定出Kinect的最大可视区域;

(2-2)在场景中Kinect的可视区域内选取多组不同位置的样本点,使样本点均匀的分布在可视区域,并测量出每个样本点在规定的世界坐标系中的实际位置;同时,计算在Kinect深度图像坐标系中相应位置的样本点坐标;

(2-3)利用最小二乘法计算得到各个Kinect对于世界坐标系的变换矩阵。

所述步骤(4)中Kinect客户端的用户跟踪方法,具体包括以下步骤:

(4-1)获取每个Kinect当前帧的深度图像;

(4-2)根据预设深度阈值提取每个Kinect的前景图像,对图像进行二值化处理,将场景中规定深度阈值的部分设置为前景色,其余部分设置为背景色;

(4-3)对图像进行形态学处理,将二值化后的图像进行膨胀处理。

(4-4)采用区域连通算法对多目标进行分割,并计算各个目标的位置信息。

所述步骤(4-4)中,具体包括以下步骤:

(4-4-1)对图像像素进行遍历,找到图像中的前景点并使用链表将这些前景点链接起来;

(4-4-2)对前景点进行BFS广度优先搜索遍历,判断连通块的各个属性,并将连通块划分为用户对象;

(4-4-3)根据(4-4-2)中保存的连通块内点的个数属性信息,对对象的有效性进行判断:如果个数小于预先设定的阈值,则判断该对象为无效对象,将该对象予以销毁并将对象个数减一;如果个数大于等于预先设定的阈值,则判断该对象为有效对象;

(4-4-4)将所获结果(对象个数、对象中心点坐标)保存起来,以便传给服务器端进行集中处理。

所述步骤(4-4-2)中,连通块的属性包括中心点坐标、特征值和连通块内点的个数。

所述步骤(4)中Kinect服务器端的用户跟踪方法,具体包括以下步骤:

(4-a)初始化阶段:对各个Kinect客户端接收到的初始目标进行身份认证,即对不同的用户给予不同的编号信息,并将用户的身份和位置信息保存在R0={x0i,y0i,Id0i|i=1,…,M},其中(x0i,y0i)表示用户i的初始位置信息,Id0i表示用户的初始编号信息,M表示服务器端接收到的用户数目;

(4-b)实时跟踪阶段,对后续从Kinect客户端接收到用户位置信息进行身份确认;将每一时刻接收到的数据保存在R={xi,yi,Idi|i=1,…,N},其中N表示服务端当前接收到的用户数目;xi,yi)表示用户i的位置信息,Idi表示用户的编号信息;令pre_R={pre_xi,pre_yi,pre_Idi|i=1,…,pre_N}初始值为R0,将R与pre_R中的用户进行最近距离匹配,得到当前帧用户的身份信息,并使pre_R=R,记录跟踪时刻上一时刻的用户信息,为实时跟踪匹配提供参考信息。

本发明的有益效果为:

(1)方便、易操作、成本较低;Kinect网络的布置不需要精准的测量,每个Kinect只负责捕获各自有效区域的用户即可;每个Kinect可视区域之间不需要重叠,即最大限度节省用户捕获设备的使用数量;

(2)对于空间中用户的运动限制较少,不需要每个用户完全处于某个Kinect的有效区域中,用户身体的一部分处于Kinect区域中即可;

(3)具有大规模场景动态实时跟踪的能力;对于大规模场景的群体互动,不受参与人数的限制,空间中每个区域用户人数可以是动态变化的;对用户在不同Kinect区域之间状态的转换可以实现实时跟踪和身份确认。

附图说明

图1为Kinect网络布置的示意图;

图2为Kinect客户端的用户跟踪方法流程示意图;

图3为Kinect客户端用户跟踪方法数据结构示意图;

图4为Kinect服务器端的用户跟踪方法示意图;

图5为本发明应用与群体射击类游戏的实例示意图。

具体实施方式:

下面结合附图与实施例对本发明作进一步说明。

如图1所示,根据Kinect在Z轴方向上有效捕捉距离,将Kinect布置在合理的高度(推荐值为3.7m,这时能基本能容纳身高从1m到2m的用户);依据各个Kinect在地面标定的矩形捉区域的相对位置,在同一高度的水平方向上Kinect的位置,使得各个Kinect的矩形捕捉区域纵向对齐和横向对齐,拼接成一个大的无缝矩形场景区域。

如图2所示,Kinect客户端的用户跟踪方法流程主要分为两部分:分别为前期准备阶段和后期跟踪处理阶段。其中前期准备阶段主要是将从Kinect传感器中获取到的深度数据进行二值化、膨胀操作,为后期的跟踪处理做准备;后期处理则是在前期准备的基础上,对数据进行连通块判断,用以判断对象的个数、中心点位置等信息。具体包括如下步骤:

(1)获取当前帧的深度图像。

(2)根据预设深度阈值提取前景图像,对图像进行二值化处理。将每个像素的深度信息与预设深度数据进行判断,满足深度阈值的像素设置为前景点,其余像素点设置为背景点。

(3)对图像进行形态学处理,将二值化后的图像进行膨胀处理,消除图像内较小的洞孔,得到比较光滑、连通性较好的图像。

(4)采用区域连通算法对多目标进行分割,并计算各个目标的位置信息。对每个前景点进行BFS广度优先搜索遍历,计算当前帧对象的个数、对象的中心点坐标、对象的特征值等信息。

(5)将对象的属性信息保存起来,以便传给服务器端进行集中处理;

(6)判断当前程序是否结束运行,如果不是,则跳转到步骤(1)重新获取下一帧的数据信息,否则,程序结束。

所述步骤(4)的关于广度优先搜索的遍历算法,具体如图3所示。

如图3所示,获取到了二值图像以后,首先对图像进行遍历,将获取到的前景点使用链表进行链接;其次对链表进行遍历,倒序输出图像内的连通块(对象)的个数及位置信息;然后将对象内的点的个数与预设阈值进行校对,当点数大于等于预设阈值时,保存对象信息;否则,该对象为无效对象,销毁该对象并将对象个数减一;最后,将该帧的对象信息保存起来用以传送给服务器端进行集中处理。具体包括如下步骤:

(1)遍历二值化数组,并将前景点保存在链表中;

(2)取出链表内head指向元素,并将head指针指向下一个元素;

(3)判断当前所取元素是否为空,如果是,则跳转到步骤(7);

(4)判断该元素是否被二次遍历过,如果是,则跳转到步骤(2);

(5)标记该元素为二次遍历,并将所处连通块内点数加一;

(6)判断其八邻域内点是否被二次遍历过,如果是,则跳转到步骤(2),否则,跳转到步骤(5);

(7)统计该帧内的连通块(对象)数;

(8)图像中的各个对象内的点数是否满足预设点数阈值,如果是,则保存各个对象的属性信息,否则,消除该对象,对象个数减一;

(9)根据该Kinect在场景中的位置对该帧对象位置信息进行转换,并将转换后的位置坐标传到服务器中。

如图4所示,Kinect服务器端的用户跟踪方法主要分为两个步骤:

(1)初始化阶段。对各个Kinect客户端接收到的初始目标进行身份认证,即对不同的用户给予不同的编号信息,并将用户的身份和位置信息保存在R0={x0i,y0i,Id0i|i=1,…,M}。其中,(x0i,y0i)表示用户i的位置信息,Idi表示用户的编号信息,M表示服务器端接收到的用户数目。同时,定义上一时刻用户信息存放数组pre_R={pre_xi,pre_yi,pre_Idi|i=1,…,pre_N},且pre_R=R0。

(2)实时跟踪阶段,对后续从Kinect客户端接收到用户位置信息进行身份确认。具体包括以下步骤:

(2-1)将每一时刻接收到的数据保存在R={xi,yi,Idi|i=1,…,N},其中(xi,yi)表示用户i的位置信息,N表示服务端当前接收到的用户数目,Idi=-1.

(2-2)将当前时刻接收到的用户位置信息R与上一时刻用户信息pre_R中的用户身份进行最近距离匹配,得到当前帧多用户的身份信息,并更新相应的Idi

>Idi=minjDij(j=1,..,pre_N)>

>Dij=(xi-pre_xj)2+(yi-pre_yj)2>

Idi即为用户i与上一时刻最匹配的用户身份信息。

(2-3)更新pre_R,pre_R=R。

(2-4)如果跟踪时刻未结束,则跳至步骤(2),否则结束算法。

如图5所示,是本发明应用于群体互动虚拟射击游戏的一个实例。利用Kinect作为用户捕获设备,借助Kinect之间的协同工作,将场景划分为4个小区域,对不同区域的用户分别进行实时跟踪,然后对不同Kinect捕获的用户数据进行关联,完成对大规模场景中群体用户的实时跟踪和身份确认。

上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号