Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
CN107577451A - More Kinect human skeletons coordinate transformation methods and processing equipment, readable storage medium storing program for executing - Google Patents
[go: Go Back, main page]

CN107577451A - More Kinect human skeletons coordinate transformation methods and processing equipment, readable storage medium storing program for executing - Google Patents

More Kinect human skeletons coordinate transformation methods and processing equipment, readable storage medium storing program for executing Download PDF

Info

Publication number
CN107577451A
CN107577451A CN201710657342.4A CN201710657342A CN107577451A CN 107577451 A CN107577451 A CN 107577451A CN 201710657342 A CN201710657342 A CN 201710657342A CN 107577451 A CN107577451 A CN 107577451A
Authority
CN
China
Prior art keywords
skeleton
terminal device
coordinate system
coordinate
human
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201710657342.4A
Other languages
Chinese (zh)
Other versions
CN107577451B (en
Inventor
车武军
田建曌
谷卓
徐波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Automation of Chinese Academy of Science
Original Assignee
Institute of Automation of Chinese Academy of Science
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Automation of Chinese Academy of Science filed Critical Institute of Automation of Chinese Academy of Science
Priority to CN201710657342.4A priority Critical patent/CN107577451B/en
Publication of CN107577451A publication Critical patent/CN107577451A/en
Application granted granted Critical
Publication of CN107577451B publication Critical patent/CN107577451B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Processing (AREA)

Abstract

本发明涉及计算机图形视觉领域,提出一种多Kinect人体骨架坐标变换方法,旨在解决人体追踪环境中多个Kinect之间坐标变换的问题。该方法包括:接收各终端设备所发送的同一人体的多帧骨架数据,确定各终端设备的人体骨架的加权平均骨架数据;计算各终端设备数据的可信度,确定可信度最高的终端设备为参考终端设备、参考终端设备的坐标系为参考坐标系;根据人体骨架在参考坐标系下的坐标和在非参考坐标系下的坐标确定参考坐标系与非参考坐标系之间的欧拉角和平移变量;根据欧拉角和平移变量确定参考坐标系与非参考坐标系之间的变换矩阵;利用上述变换矩阵将各终端设备的骨架数据转换到参考坐标系下。该方法实现了对多Kinect的人体骨架之间的坐标连续稳定的变换。

The invention relates to the field of computer graphics vision, and proposes a multi-Kinect human body skeleton coordinate transformation method, aiming at solving the problem of coordinate transformation between multiple Kinects in a human body tracking environment. The method includes: receiving multi-frame skeleton data of the same human body sent by each terminal device, determining the weighted average skeleton data of the human body skeleton of each terminal device; calculating the credibility of the data of each terminal device, and determining the terminal device with the highest credibility It is the reference terminal equipment, and the coordinate system of the reference terminal equipment is the reference coordinate system; determine the Euler angle between the reference coordinate system and the non-reference coordinate system according to the coordinates of the human skeleton in the reference coordinate system and the coordinates in the non-reference coordinate system and translation variables; determine the transformation matrix between the reference coordinate system and the non-reference coordinate system according to the Euler angle and the translation variable; use the above transformation matrix to transform the skeleton data of each terminal device into the reference coordinate system. This method realizes the continuous and stable transformation of the coordinates between multiple Kinect human skeletons.

Description

多Kinect人体骨架坐标变换方法及处理设备、可读存储介质Multi-Kinect human skeleton coordinate transformation method, processing equipment, and readable storage medium

技术领域technical field

本发明涉及计算机图形视觉领域,具体涉及计算机图形处理领域,特别涉及一种多Kinect人体骨架坐标变换方法及处理设备、存储介质。The invention relates to the field of computer graphics vision, in particular to the field of computer graphics processing, in particular to a multi-Kinect human skeleton coordinate transformation method, processing equipment, and storage media.

背景技术Background technique

随着计算机图形视觉技术的发展以及人机交互技术的发展,及时地将检测或监控到的物体或人物的姿势或动作正确完整地显示出来,变得越来越重要。基于微软Kinect传感器能够实时获取人体的图像信息,捕捉分析人体动作信息,以及根据所获取的人体动作信息控制相关设备或控制机器人的行动等。With the development of computer graphics and vision technology and the development of human-computer interaction technology, it is becoming more and more important to display the detected or monitored object or person's posture or action in a timely and correct manner. Based on the Microsoft Kinect sensor, it can obtain the image information of the human body in real time, capture and analyze the human body motion information, and control related equipment or control the action of the robot according to the obtained human body motion information.

由于kinect捕捉范围与角度的限制,单台kinect捕捉信息由于物体自身及物体之间的遮挡关系,造成深度及可视化信息的缺失而大大降低捕捉的精度与效果。使用多台Kinect组成的动作捕捉系统,可以提供一个更大的视野范围,当人体在一个Kinect的视野范围内因为遮挡而消失时,系统仍然可以通过其他Kinect继续捕捉人体的运动。因此,需要将多台kinect捕捉的人体的骨架数据变换到统一的坐标系,但将不同坐标系下的数据转换到同一坐标系下,由于捕捉骨架数据的Kinect放置的位置、角度不同,可能出现转换同一参考坐标系下的数据误差大、使用不便的问题。Due to the limitation of kinect capture range and angle, a single kinect captures information due to the occlusion relationship between the object itself and objects, resulting in the lack of depth and visualization information, which greatly reduces the accuracy and effect of capture. A motion capture system composed of multiple Kinects can provide a larger field of view. When the human body disappears due to occlusion within the field of view of one Kinect, the system can still continue to capture the movement of the human body through other Kinects. Therefore, it is necessary to transform the skeleton data of the human body captured by multiple kinects into a unified coordinate system, but to convert the data in different coordinate systems into the same coordinate system, due to the different positions and angles of the Kinects that capture the skeleton data, there may be The problem of large error and inconvenient use when converting data in the same reference coordinate system.

目前,针对多Kinect传感器坐标转换的应用有Wei Tao等人提出的KSCC校准算法,用于校准在远程训练系统中的任意位置的使用者。该方法首先需要收集远程使用者的初始位置数据,并利用初始数据计算使用者的初始中心位置坐标和使用者与Kinect的初始角度,之后通过一个四元旋转矩阵所有的骨架都会被变换到一个统一的世界坐标系。但是,当前的多台Kinect组成的动作捕捉系统存在所捕捉的人体误差较大、Kinect传感器只能水平的放置、当人体转身后无法正常使用等问题。At present, the KSCC calibration algorithm proposed by Wei Tao et al. is used for the calibration of users at any position in the remote training system for the application of multi-Kinect sensor coordinate transformation. This method first needs to collect the initial position data of the remote user, and use the initial data to calculate the initial center position coordinates of the user and the initial angle between the user and Kinect, and then all skeletons will be transformed to a unified world coordinate system. However, the current motion capture system composed of multiple Kinects has problems such as large errors in captured human bodies, Kinect sensors can only be placed horizontally, and cannot be used normally when the human body is turned around.

发明内容Contents of the invention

为了解决现有技术中的上述问题,即为了解决设置于不同位置的多个Kinect传感器之间的坐标转换所造成的误差较大、Kinect传感器只能水平的放置、当人体转身后无法正常使用等问题,本发明采用以下技术方案以解决上述问题:In order to solve the above-mentioned problems in the prior art, that is, in order to solve the large error caused by the coordinate conversion between a plurality of Kinect sensors arranged in different positions, the Kinect sensor can only be placed horizontally, and cannot be used normally when the human body turns around, etc. Problem, the present invention adopts following technical scheme to solve the above-mentioned problem:

第一方面,本申请提供了一种多Kinect人体骨架坐标变换方法,该方法包括:获取多个终端设备所捕获的骨架数据;利用训练好的坐标变换矩阵,转换上述骨架数据,其中,训练上述变换矩阵包括:接收多个终端设备所发送的同一人体的多帧骨架数据,根据上述骨架数据确定各上述终端设备的骨架数据的加权平均骨架数据;根据各终端设备所捕获的骨架数据计算各上述终端设备的的可信度,从上述终端设备中确定出可信度最高的终端设备为参考终端设备,确定上述参考终端设备的坐标系为参考坐标系,除上述参考终端设备外的启停指定设备确定费参考终端设备,上述非参考终端设备的坐标系为非参考坐标系;根据上述加权平均骨架数据对应的人体骨架在上述参考坐标系下的坐标和在上述非参考坐标系下的坐标之间的差值计算参考坐标系与上述非参考坐标系之间的欧拉角和平移变量;以上述参考坐标系的坐标轴与上述非参考坐标系的坐标轴之间的上述欧拉角构成旋转矩阵,以上述参考坐标系的坐标轴与上述非参考坐标系的坐标轴之间的上述平移变量构成平移矩阵,将上述旋转矩阵和平移矩阵的乘积作为上述参考坐标系与上述非参坐标系之间的变换矩阵。In the first aspect, the present application provides a multi-Kinect human body skeleton coordinate transformation method, the method comprising: obtaining skeleton data captured by multiple terminal devices; using a trained coordinate transformation matrix to convert the above skeleton data, wherein, training the above The transformation matrix includes: receiving multi-frame skeleton data of the same human body sent by multiple terminal devices, determining the weighted average skeleton data of the skeleton data of each of the above-mentioned terminal devices according to the above-mentioned skeleton data; The reliability of the terminal equipment, determine the terminal equipment with the highest reliability from the above-mentioned terminal equipment as the reference terminal equipment, determine the coordinate system of the above-mentioned reference terminal equipment as the reference coordinate system, and the start-stop designation except the above-mentioned reference terminal equipment The equipment determination fee refers to the terminal equipment, and the coordinate system of the above-mentioned non-reference terminal equipment is a non-reference coordinate system; according to the coordinates of the human skeleton corresponding to the above-mentioned weighted average skeleton data in the above-mentioned reference coordinate system and the coordinates in the above-mentioned non-reference coordinate system Calculate the Euler angle and translation variable between the reference coordinate system and the above-mentioned non-reference coordinate system by the difference between them; the above-mentioned Euler angle between the coordinate axes of the above-mentioned reference coordinate system and the above-mentioned non-reference coordinate system constitutes the rotation Matrix, the above-mentioned translation variable between the coordinate axes of the above-mentioned reference coordinate system and the above-mentioned non-reference coordinate system constitutes a translation matrix, and the product of the above-mentioned rotation matrix and translation matrix is used as the difference between the above-mentioned reference coordinate system and the above-mentioned non-parametric coordinate system transformation matrix between them.

在一些示例中,上述骨架数据包括组成人体骨架的各关节点坐标和上述关节点坐标的可信度。In some examples, the above-mentioned skeleton data includes the coordinates of each joint point constituting the human skeleton and the reliability of the above-mentioned joint point coordinates.

在一些示例中,上述根据上述骨架数据确定各上述终端设备的骨架数据的加权平均骨架数据,包括:通过多个终端设备分别采集人体骨架的多帧骨架数据;根据所获取的各终端设备的每帧上述骨架数据的关节点坐标和上述关节点坐标的可信度,以上述关节点坐标的可信度为上述关节点坐标的权重,计算上述终端设备所检测的人体骨架的各关节点的关节点加权平均值;以各上述关节点加权平均值为各上述关节点的关节点数据所确定出的人体骨架数据为上述终端设备所检测的人体骨架的加权平均骨架数据。In some examples, the above-mentioned determination of the weighted average skeleton data of the skeleton data of each of the above-mentioned terminal devices according to the above-mentioned skeleton data includes: separately collecting multiple frames of skeleton data of the human body skeleton through multiple terminal devices; Frame the joint point coordinates of the above-mentioned skeleton data and the reliability of the above-mentioned joint point coordinates, take the above-mentioned joint point coordinates as the weight of the above-mentioned joint point coordinates, and calculate the joints of each joint point of the human skeleton detected by the above-mentioned terminal equipment Point weighted average; the human skeleton data determined by taking the weighted average of each joint point as the joint point data of each joint point is the weighted average skeleton data of the human skeleton detected by the terminal device.

在一些示例中,上述根据各终端设备所捕获的骨架数据,计算各上述终端设备的可信度,包括:获取各终端设备所采集的多帧骨架数据的各关节点的可信度;计算每个上述终端设备所采集的骨架数据的各关节点的可信度的平均值;加和操作上述终端设备所采集的构成人体骨架的全部关节点的每个关节点的可信度的平均值;确定上述加和操作结果为上述终端设备可信度。In some examples, the calculation of the credibility of each terminal device based on the skeleton data captured by each terminal device includes: obtaining the credibility of each joint point of the multi-frame skeleton data collected by each terminal device; calculating each The average value of the credibility of each joint point of the skeleton data collected by the above-mentioned terminal equipment; the average value of the credibility of each joint point of all the joint points that constitute the human skeleton collected by the operation of the above-mentioned terminal equipment; The result of the summing operation is determined as the reliability of the terminal device.

在一些示例中,上述根据上述加权平均骨架数据对应的人体骨架在上述参考坐标系下的坐标和在上述非参考坐标系下的坐标之间的差值,计算参考坐标系与各非坐标系之间的欧拉角和平移变量,包括:计算上述参考终端设备所采集的上述人体骨架的加权平均骨架数据与上述非参考终端设备所采集的上述人体骨架的加权平均骨架数据的差值;以上述差值为上述人体骨架的差值骨架数据;计算上述差值骨架数据在上述参考坐标系下的坐标与上述参考坐标系各参考轴夹角为欧拉角;计算上述差值骨架数据在上述参考坐标系下的坐标与上述参考坐标系的各参考轴的距离为平移变量。In some examples, according to the difference between the coordinates of the human skeleton corresponding to the weighted average skeleton data in the above-mentioned reference coordinate system and the coordinates in the above-mentioned non-reference coordinate system, calculate the difference between the reference coordinate system and each non-coordinate system Euler angles and translation variables between, including: calculating the difference between the weighted average skeleton data of the above-mentioned human skeleton collected by the above-mentioned reference terminal device and the weighted average skeleton data of the above-mentioned human skeleton collected by the above-mentioned non-reference terminal device; The difference is the difference skeleton data of the above-mentioned human skeleton; the angle between the coordinates of the above-mentioned difference skeleton data in the above-mentioned reference coordinate system and the reference axes of the above-mentioned reference coordinate system is Euler angle; the calculation of the above-mentioned difference skeleton data in the above-mentioned reference The distances between the coordinates in the coordinate system and the reference axes of the above-mentioned reference coordinate system are translation variables.

在一些示例中,上述根据上述欧拉角和平移变量确定参考坐标系与各上述非参考终端设备的坐标系之间的变换矩阵,包括:根据上述欧拉角和平移变量分别确定出旋转变换矩阵和平移矩阵;确定上述旋转变换矩阵和上述平移矩阵的乘积为变换矩阵。In some examples, the determination of the transformation matrix between the reference coordinate system and the coordinate system of each of the above-mentioned non-reference terminal devices according to the above-mentioned Euler angles and translation variables includes: respectively determining the rotation transformation matrix according to the above-mentioned Euler angles and translation variables and a translation matrix; determine the product of the above-mentioned rotation transformation matrix and the above-mentioned translation matrix as a transformation matrix.

在一些示例中,上述根据上述欧拉角和平移变量确定参考坐标系与各上述非参考终端设备的坐标系之间的变换矩阵,包括:根据上述欧拉角确定上述参考坐标系的三个轴xyz的欧拉角θx、θy、θz,得到旋转变换矩阵为Rix,θy,θz)=Rizz)·Riyy)·Rixx);根据上述平移变量确定上述参考坐标系的三个轴的变量x、y、z,可以得出平移矩阵Ti(x,y,z);以上述旋转变换矩阵和上述平移矩阵的乘积为变换矩阵MiIn some examples, the above-mentioned determination of the transformation matrix between the reference coordinate system and the coordinate systems of each of the above-mentioned non-reference terminal devices according to the above-mentioned Euler angles and translation variables includes: determining the three axes of the above-mentioned reference coordinate system according to the above-mentioned Euler angles Euler angles θ x , θ y , θ z of xyz, and the rotation transformation matrix obtained is R ix , θ y , θ z )=R izz )·R iyy )·R ixx ); Determine the variables x, y, and z of the three axes of the above-mentioned reference coordinate system according to the above-mentioned translation variable, and can draw the translation matrix T i (x, y, z); with the product of the above-mentioned rotation transformation matrix and the above-mentioned translation matrix is the transformation matrix M i .

在一些示例中,上述方法还包括:在计算出加权平均骨架后,判断上述人体骨架为正面或反面;若判断结果为反面时,将上述人体骨架两侧的关节点坐标进行左右互换。In some examples, the above method further includes: after calculating the weighted average skeleton, judging whether the above-mentioned human skeleton is front or back; if the judging result is negative, exchanging left and right coordinates of joint points on both sides of the above-mentioned human skeleton.

第二方面,本申请提供了一种多Kinect人体骨架坐标变换处理设备,该设备包括:一个或多个处理器,适于执行各条程序;存储装置,用于存储一个或多个程序,上述程序适于由处理器加载并执行以实现上述第一方面任一示例所述的多Kinect人体骨架坐标变换方法。In a second aspect, the application provides a multi-Kinect human skeleton coordinate transformation processing device, which includes: one or more processors, adapted to execute various programs; storage means, used to store one or more programs, the above-mentioned The program is adapted to be loaded and executed by the processor to implement the multi-Kinect human skeleton coordinate transformation method described in any example of the first aspect above.

第三方面,本申请提供了一种可读存储介质,该可读存储介质存储有计算机程序,该程序被处理器执行时实现上述第一方面中的任一示例所述多Kinect人体骨架坐标变换方法。In a third aspect, the present application provides a readable storage medium, the readable storage medium stores a computer program, and when the program is executed by a processor, it realizes the multi-Kinect human skeleton coordinate transformation described in any example in the above-mentioned first aspect method.

本申请提供的Kinect人体骨架坐标变换方法和处理设备,通过所接收到的多帧骨架数据中确定出可信度最高的终端设备,指定可信度最高的终端设备的坐标系为参考坐标系,比较骨架数据在参考坐标系下的坐标和在非参考终端的坐标下的坐标之差值,确定出参考坐标系与非参考终端设备的坐标系之间的欧拉角和平移变量,进而确定出变换矩阵,利用该变换矩阵,实现各非参考终端的坐标系与参考坐标系之间的坐标变换。The Kinect human skeleton coordinate transformation method and processing equipment provided by this application determine the terminal device with the highest reliability from the received multi-frame skeleton data, and designate the coordinate system of the terminal device with the highest reliability as the reference coordinate system, Compare the difference between the coordinates of the skeleton data in the reference coordinate system and the coordinates of the non-reference terminal, determine the Euler angle and translation variable between the reference coordinate system and the coordinate system of the non-reference terminal device, and then determine A transformation matrix is used to implement coordinate transformation between the coordinate system of each non-reference terminal and the reference coordinate system.

附图说明Description of drawings

图1是本申请可以应用于其中的示例性系统架构图;FIG. 1 is an exemplary system architecture diagram to which the present application can be applied;

图2是根据本申请的多Kinect人体骨架坐标变换方法的一个实施例的流程图;Fig. 2 is the flow chart of an embodiment according to the many Kinect human skeleton coordinate transformation methods of the present application;

图3是根据本申请的多Kinect人体骨架坐标变换方法的另一实施例的流程图;Fig. 3 is the flow chart of another embodiment according to the multi-Kinect human skeleton coordinate transformation method of the present application;

图4是在两个不同位置的终端设备捕捉的同一人体的骨架数据的图像;Figure 4 is an image of the skeleton data of the same human body captured by terminal devices at two different positions;

图5是经转换矩阵转换到参考坐标系下的给同一人体骨架的骨架数据所显示的图像。Fig. 5 is an image displayed by the skeleton data of the same human skeleton transformed into the reference coordinate system through the transformation matrix.

具体实施方式detailed description

下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。Preferred embodiments of the present invention are described below with reference to the accompanying drawings. Those skilled in the art should understand that these embodiments are only used to explain the technical principles of the present invention, and are not intended to limit the protection scope of the present invention.

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。It should be noted that, in the case of no conflict, the embodiments in the present application and the features in the embodiments can be combined with each other. The present application will be described in detail below with reference to the accompanying drawings and embodiments.

图1示出了可以应用本申请的多Kinect人体骨架坐标变换方法或多Kinect人体骨架坐标变换处理设备的实施例的示例性系统架构。FIG. 1 shows an exemplary system architecture of an embodiment in which the multi-Kinect human skeleton coordinate transformation method or the multi-Kinect human skeleton coordinate transformation processing device of the present application can be applied.

如图1所示,系统架构可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。As shown in FIG. 1 , the system architecture may include terminal devices 101 , 102 , 103 , a network 104 and a server 105 . The network 104 is used as a medium for providing communication links between the terminal devices 101 , 102 , 103 and the server 105 . Network 104 may include various connection types, such as wires, wireless communication links, or fiber optic cables, among others.

终端设备101、102、103可以通过网络104与服务器105之间进行信息交互,以接收或发送信息等。终端设备101、102、103之间可以通过网络104进行信息交互。The terminal devices 101, 102, and 103 may perform information interaction with the server 105 through the network 104, so as to receive or send information and the like. The terminal devices 101 , 102 , and 103 can exchange information through the network 104 .

终端设备101、102、103可以是具有显示屏并支持网络通信的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。需要说明的是,终端设备中包括用于影像辨识、语音识别的传感器,如,Kinect 2.0传感器,其中,Kinect 2.0传感器是由微软在2014年发布的体感周边外设3D体感摄影机。The terminal devices 101, 102, 103 may be various electronic devices with display screens and supporting network communication, including but not limited to smart phones, tablet computers, laptop computers, desktop computers and so on. It should be noted that the terminal device includes sensors for image recognition and voice recognition, such as Kinect 2.0 sensor, wherein the Kinect 2.0 sensor is a 3D somatosensory peripheral peripheral camera released by Microsoft in 2014.

服务器105可以是提供各种服务的处理器或服务器,例如对终端设备101、102、103所发送或提供的信息进行数据分析,实现不同终端设备的图像之间坐标变换的图像处理服务器,上述图像处理服务器可以对接收到的信息进行分析等处理,生成处理结果(例如,对各终端设备所获取的人体骨架的各坐标变换到参考坐标系下,将在参考坐标系下的骨架数据显示)在用户界面显示。需要说明的是,本申请中,服务器105可以是单独设置的服务器,也可以是从终端设备101、102、103中选取或指定其中的一个终端设备作为服务器。Server 105 may be a processor or server that provides various services, such as an image processing server that performs data analysis on information sent or provided by terminal devices 101, 102, 103, and realizes coordinate transformation between images of different terminal devices. The processing server can analyze and process the received information, and generate processing results (for example, transform each coordinate of the human skeleton obtained by each terminal device into the reference coordinate system, and display the skeleton data in the reference coordinate system) in the The user interface is displayed. It should be noted that, in this application, the server 105 may be a separately set server, or may be selected from the terminal devices 101, 102, 103 or designated as a server.

需要说明的是,本申请实施例所提供的多Kinect人体骨架坐标变换方法一般由服务器105执行,相应地,多Kinect人体骨架坐标变换处理设备一般设置于服务器105中。It should be noted that the multi-Kinect human skeleton coordinate transformation method provided in the embodiment of the present application is generally executed by the server 105 , and correspondingly, the multi-Kinect human skeleton coordinate transformation processing device is generally set in the server 105 .

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。It should be understood that the numbers of terminal devices, networks and servers in Fig. 1 are only illustrative. According to the implementation needs, there can be any number of terminal devices, networks and servers.

继续参考图2,图2示出了根据本申请的多Kinect人体骨架坐标变换方法的一个实施例的流程。该多Kinect人体骨架坐标变换方法,包括以下步骤:Continuing to refer to FIG. 2 , FIG. 2 shows the flow of an embodiment of the multi-Kinect human skeleton coordinate transformation method according to the present application. This multi-Kinect human skeleton coordinate transformation method comprises the following steps:

步骤201,接收多个终端设备所捕获的骨架数据。Step 201, receiving skeleton data captured by multiple terminal devices.

在本实施例中,多Kinect人体骨架坐标变换方法运行于其上的电子设备(例如图1所示的服务器)可以通过有线连接方式或者无线连接方式从终端设备接收终端设备发送的人体的骨架数据。其中,终端设备可以通过与其连接的Kinect传感器获得人体的骨架数据,并将所获得骨架数据发送到服务器。上述骨架数据是指Kinect传感器所检测到的人体的图像数据,上述Kinect传感器根据所检测到每帧图像数据映射到该Kinect传感器坐标系下时的数据。In this embodiment, the electronic device on which the multi-Kinect human body skeleton coordinate transformation method runs (such as the server shown in Figure 1) can receive the skeleton data of the human body sent by the terminal device from the terminal device through a wired connection or a wireless connection. . Wherein, the terminal device can obtain the skeleton data of the human body through the Kinect sensor connected thereto, and send the obtained skeleton data to the server. The above-mentioned skeleton data refers to the image data of the human body detected by the Kinect sensor, and the data when the above-mentioned Kinect sensor is mapped to the coordinate system of the Kinect sensor according to each frame of image data detected.

步骤202,利用训练好的坐标变换矩阵,转换上述骨架数据。Step 202, using the trained coordinate transformation matrix to transform the above skeleton data.

在本实施例中,利用训练好的坐标变化矩阵,将上述各终端设备所捕获的骨架数据转换到同一参考坐标系下的坐标数据,以便在不同的终端对人体或人体的动作进行追踪。保持上述各终端设备的位置和角度不变,上述终端设备所捕获的任意图像数据(追踪区域内一个或多个人物的人体骨架的骨架数据)都可以转换到参考坐标系下。通过各终端设备与参考终端设备之间的变换矩阵将上述各终端设备所捕获的人体骨架的骨架数据转换到参考坐标系下的坐标。In this embodiment, the trained coordinate change matrix is used to convert the skeleton data captured by each terminal device into coordinate data in the same reference coordinate system, so as to track the human body or the movement of the human body at different terminals. Keeping the positions and angles of the above-mentioned terminal devices unchanged, any image data captured by the above-mentioned terminal devices (skeleton data of human skeletons of one or more people in the tracking area) can be transformed into the reference coordinate system. Through the transformation matrix between each terminal device and the reference terminal device, the skeleton data of the human skeleton captured by the above-mentioned terminal devices are transformed into coordinates in the reference coordinate system.

其中,上述训练坐标变换矩阵的步骤包括:Wherein, the above steps of training the coordinate transformation matrix include:

子步骤2021,接收多个终端设备所发送的同一人体的多帧骨架数据,根据上述骨架数据确定各上述终端设备的骨架数据的加权平均骨架数据。Sub-step 2021, receiving multiple frames of skeleton data of the same human body sent by multiple terminal devices, and determining the weighted average skeleton data of the skeleton data of each of the above-mentioned terminal devices according to the above-mentioned skeleton data.

在本子步骤中,服务器从多个终端设备接收同一个人体的骨架数据。上述骨架数据是指Kinect传感器所检测到的人体的图像数据,上述Kinect传感器根据所检测到每帧图像数据映射到该Kinect传感器坐标系下时的数据,通过对数据的加权运算,确定出上述各个终端设备所捕获的人体骨架的骨架数的加权平均值。上述骨架数据可以是所检测到每帧图像数据映射到该Kinect传感器坐标系下时,表述上述人体骨架的躯干和各关节点在该Kinect传感器坐标系下的坐标数据。In this sub-step, the server receives the skeleton data of the same human body from multiple terminal devices. The above-mentioned skeleton data refers to the image data of the human body detected by the Kinect sensor, and the above-mentioned Kinect sensor determines the above-mentioned each frame of image data according to the detected data when each frame of image data is mapped to the Kinect sensor coordinate system by weighting the data. The weighted average of the number of skeletons of human skeletons captured by the terminal device. The above-mentioned skeleton data may be coordinate data representing the torso of the above-mentioned human skeleton and each joint point in the Kinect sensor coordinate system when each frame of detected image data is mapped to the Kinect sensor coordinate system.

在本实施例的一些可选的实现方式中,上述骨架数据包括组成人体骨架的各关节点坐标和上述关节点坐标的可信度。上述骨架数据中包括上述人体骨架的关节点坐标及上述关节点的追踪状态,状态分别为追踪到的、推测的、未追踪到的,为上述三个状态的关节点分配依次降低的可信度。在一些具体的示例中,上述终端设备可以将上述表述上述人体骨架的躯干和各关节点的数据的骨架数据进行预先的处理,将其转换为在该终端设备的坐标系下的坐标。In some optional implementation manners of this embodiment, the above-mentioned skeleton data includes the coordinates of each joint point composing the human skeleton and the credibility of the above-mentioned joint point coordinates. The above-mentioned skeleton data includes the coordinates of the joint points of the above-mentioned human skeleton and the tracking states of the above-mentioned joint points. The states are respectively tracked, estimated, and untracked, and the joint points in the above three states are allocated with decreasing degrees of reliability. . In some specific examples, the terminal device may pre-process the skeleton data representing the torso and joint points of the human skeleton, and convert it into coordinates in the coordinate system of the terminal device.

作为示例,上述每个终端设备连接一台Kinect传感器,上述服务器可以是单独设置的计算机,或者,任何一个上述终端设备的计算机都可以作为服务器。可以采用TCP/IP协议在上述服务器与上述终端设备之间,或多台上述终端设备之间通信。上述Kinect传感器速采集的每一帧数据中可以使用BodyFrame类包装人体的骨架信息,Body类中封装了目标人体的25个骨架关节点坐标及上述骨架关节点的追踪状态,状态分别为追踪到的、推测的、未追踪到的,系统为三个状态的关节点分配依次降低的可信度。例如,可以为追踪到的关节点赋可信度为0.95,可以为推测到的关节点赋可信度为0.70,可以为未追踪到的关节点赋可信度为0.15。每个Kinect传感器最多能同时识别六个人体目标,所以每个BodyFrame中最多可以包含六个Body类型的对象。As an example, each of the above-mentioned terminal devices is connected to a Kinect sensor, and the above-mentioned server may be a computer provided separately, or any computer of the above-mentioned terminal devices may serve as the server. The TCP/IP protocol can be used to communicate between the above-mentioned server and the above-mentioned terminal equipment, or between multiple above-mentioned terminal equipment. Each frame of data collected by the above-mentioned Kinect sensor can use the BodyFrame class to package the skeleton information of the human body. The Body class encapsulates the coordinates of the 25 skeleton joint points of the target human body and the tracking status of the above-mentioned skeleton joint points. , speculative, and untracked, the system assigns successively decreasing credibility to the joint points of the three states. For example, the tracked joint points can be assigned a reliability of 0.95, the estimated joint points can be assigned a reliability of 0.70, and the untracked joint points can be assigned a reliability of 0.15. Each Kinect sensor can recognize up to six human targets at the same time, so each BodyFrame can contain up to six Body type objects.

需要说明的是,上述子步骤中各Kinect传感器在采集同一人体骨架或同一人体的多帧骨架数据时,上述人体骨架或人体保持静止不动。It should be noted that, in the above sub-steps, when each Kinect sensor collects the same human skeleton or multiple frames of skeleton data of the same human body, the human skeleton or human body remains still.

在本实施例的一些可选的实现方式中,上述根据上述骨架数据确定各上述终端设备发送的骨架数据的加权平均骨架数据,包括:通过多个终端设备分别采集人体骨架的多帧骨架数据;根据所获取的各终端设备的每帧上述骨架数据的关节点坐标和上述关节点坐标的可信度,以上述关节点坐标的可信度为上述关节点坐标的权重,计算上述终端设备所检测的人体骨架的各关节点的关节点加权平均值;以关节点加权平均值为上述各关节点的关节点数据,以人体骨架所包括的全部关节点数据为终端设备所检测的人体骨架的加权平均骨架数据。这里,上述每台终端设备从收到第1帧数据开始累积N帧的骨架数,在一些具体示例中,N为20至30,对于第i台终端设备的Kinect所捕捉的目标人物的人体骨架的第j个关节点在N帧骨架数据中坐标的加权和Sij为:In some optional implementation manners of this embodiment, the determination of the weighted average skeleton data of the skeleton data sent by each of the above-mentioned terminal devices according to the above-mentioned skeleton data includes: collecting multi-frame skeleton data of the human skeleton through multiple terminal devices; According to the obtained joint point coordinates of each frame of the above-mentioned skeleton data of each terminal device and the reliability of the above-mentioned joint point coordinates, the reliability of the above-mentioned joint point coordinates is used as the weight of the above-mentioned joint point coordinates to calculate the detection of the above-mentioned terminal equipment. The joint point weighted average value of each joint point of the human skeleton; the joint point data of the above joint points is the joint point weighted average value, and all the joint point data included in the human body skeleton are used as the weight of the human body skeleton detected by the terminal device Average skeleton data. Here, each of the above-mentioned terminal devices accumulates the number of skeletons of N frames from the receipt of the first frame of data. In some specific examples, N is 20 to 30. For the human skeleton of the target person captured by the Kinect of the i-th terminal device The weighted sum S ij of the coordinates of the jth joint point in the N frames of skeleton data is:

其中,f指骨架数据的帧数,wfj是在第f帧骨架数据中第j个关节点的可信度,vfj(x,y,z)是f帧骨架数据中第j个关节点的坐标。Among them, f refers to the number of frames of the skeleton data, w fj is the credibility of the jth joint point in the f-th frame of the skeleton data, and v fj (x, y, z) is the j-th joint point in the f-frame skeleton data coordinate of.

对应于加权平均骨架数据的人体骨架的第j个关节点的坐标为:The coordinates of the jth joint point of the human skeleton corresponding to the weighted average skeleton data for:

上述人体骨架的第j个关节点的权重为:The weight of the jth joint point of the above human skeleton for:

上述终端设备的Kinect所获取的目标人物的多帧骨架数据所对应的加权平均骨架数据为:The weighted average skeleton data corresponding to the multi-frame skeleton data of the target person obtained by the Kinect of the above-mentioned terminal device is:

其中,i为第i台终端设备的加权平均骨架数据,人体骨架的关节点数为j,j可取25。Wherein, i is the weighted average skeleton data of the i-th terminal device, and the number of joint points of the human skeleton is j, and j can be 25.

子步骤2022,根据各终端设备所捕获的骨架数据计算各上述终端设备的骨架数据的可信度,从上述终端设备中确定出可信度最高的终端设备为参考终端设备,确定上述参考终端设备的坐标系为参考坐标系。Sub-step 2022, calculate the credibility of the skeleton data of each terminal device according to the skeleton data captured by each terminal device, determine the terminal device with the highest reliability from the terminal devices as the reference terminal device, and determine the reference terminal device The coordinate system of is the reference coordinate system.

在本子步骤中,上述服务器分别计算每个上述终端设备所采集的多帧骨架数据的可信度,这里,根据每个终端设备所获得的骨架数据中所包括的关节点的可信度获得各终端设备的可信度。确定可信度最高的终端设备为参考终端设备,确定参考终端设备的坐标系为参考坐标系。除上述参考终端设备外的其他终端设备指定为非参考终端设备,上述非参考终端设备的坐标系为非参考坐标系。In this sub-step, the above-mentioned server respectively calculates the credibility of the multi-frame skeleton data collected by each of the above-mentioned terminal devices. Trustworthiness of end devices. The terminal device with the highest reliability is determined as the reference terminal device, and the coordinate system of the reference terminal device is determined as the reference coordinate system. Terminal equipment other than the above-mentioned reference terminal equipment is designated as non-reference terminal equipment, and the coordinate system of the above-mentioned non-reference terminal equipment is a non-reference coordinate system.

在本实施例中一些可选的实现方式中,上述计算终端设备的骨架数据的可信度数据,包括:获取各终端设备所采集的多帧骨架数据的各关节点的可信度;计算每个所述终端设备所采集的骨架数据的各关节点的可信度的平均值;加和操作所述终端设备所采集的构成人体骨架的全部关节点的每个关节点的可信度的平均值;确定所述加和操作结果为所述终端设备可信度。或者,在一些示例中,还可以根据上述加和操作结果与人体骨架所包括的关节点数量做除法运算所得结果作为所述终端设备可信度。这里,针对每台终端设备所获取的同一人体骨架的多帧骨架数据,首先确定出人体骨架的每个关节点的可信度的平均值,然后,累加人体骨架全部关节点可信度的平均值,最后,选出累加后的结果最大的终端设备为参考终端设备。可以理解的是,参考终端设备(累加后的结果最大的终端设备)的每个关节点的可信度比其他的终端设备的每个关节点的可信度高,即参考终端设备所获得骨架数据中各个关节点多数为可追踪到的关节点。In some optional implementation manners in this embodiment, the calculation of the credibility data of the skeleton data of the terminal device includes: obtaining the credibility of each joint point of the multi-frame skeleton data collected by each terminal device; The average value of the credibility of each joint point of the skeleton data collected by the terminal device; the average of the credibility of each joint point of all the joint points that constitute the human skeleton collected by the terminal device value; determine the sum operation result as the terminal device credibility. Or, in some examples, the result obtained by dividing the result of the above summation operation by the number of joint points included in the human body skeleton can also be used as the credibility of the terminal device. Here, for the multi-frame skeleton data of the same human skeleton acquired by each terminal device, the average value of the credibility of each joint point of the human skeleton is first determined, and then the average of the credibility of all joint points of the human skeleton is accumulated. value, and finally, select the terminal device with the largest cumulative result as the reference terminal device. It can be understood that the reliability of each joint point of the reference terminal device (the terminal device with the largest cumulative result) is higher than the reliability of each joint point of other terminal devices, that is, the skeleton obtained by the reference terminal device Most of the joint points in the data are traceable joint points.

子步骤2023,根据上述加权平均骨架数据对应的人体骨架在上述参考坐标系下的坐标和在非参考终端设备的坐标系下的坐标之间的差值,计算参考坐标系与各终端设备的坐标系之间的欧拉角和平移变量。Sub-step 2023, according to the difference between the coordinates of the human skeleton corresponding to the above-mentioned weighted average skeleton data in the above-mentioned reference coordinate system and the coordinates in the coordinate system of the non-reference terminal device, calculate the coordinates of the reference coordinate system and each terminal device Euler angles and translation variables between systems.

在本子步骤中,基于子步骤2022中所确定出的参考终端设备和参考坐标系,上述服务器将非参考终端设备所获得的骨架数据的各关节点的坐标数据与上述人体骨架在参考坐标系下的各关节点坐标数据比较,确定出参考坐标系与各终端设备的坐标系之间的欧拉角和平移变量。这里,可以通过确定人体骨架的中心关节点的坐标分别在参考坐标下的第一坐标数据和在非参考终端设备的坐标系下的第二坐标数据,确定出第一坐标数据与第二坐标数据的向量,通过该向量确定出参考坐标系与各终端设备的坐标系之间的欧拉角和平移变量。其中,中心关节点为可以是预先指定的,处于人体骨架中心位置的一个关节点。In this sub-step, based on the reference terminal device and the reference coordinate system determined in sub-step 2022, the above-mentioned server combines the coordinate data of each joint point of the skeleton data obtained by the non-reference terminal device with the above-mentioned human skeleton in the reference coordinate system By comparing the coordinate data of each joint point, the Euler angle and translation variable between the reference coordinate system and the coordinate system of each terminal device are determined. Here, the first coordinate data and the second coordinate data can be determined by determining the coordinates of the central joint point of the human skeleton respectively in the first coordinate data in the reference coordinates and the second coordinate data in the coordinate system of the non-reference terminal device. The vector is used to determine the Euler angle and the translation variable between the reference coordinate system and the coordinate system of each terminal device. Wherein, the central joint point is a joint point which may be pre-designated and located at the center of the human skeleton.

在本实施例的一些可选的实现方式中,上述确定出参考坐标系与各终端设备的坐标系之间的欧拉角和平移变量,包括:比较上述人体骨架在上述非参考终端设备坐标系下的加权平均骨架数据与在上述参考坐标系下的加权平均骨架数据的差值;以上述差值为上述人体骨架的差值骨架数据;计算上述差值骨架数据在上述参考坐标系下的坐标与上述参考坐标系各参考轴夹角为欧拉角;计算上述差值骨架数据在上述参考坐标系下的坐标与上述参考坐标系的各参考轴的距离为平移变量。这里,差值骨架数据是上述人体骨架的加权平均骨架数据在参考坐标系下的数据与在非参考终端设备的坐标系下的数据之差。上述差值骨架数据在上述参考坐标系与各参考轴夹角为欧拉角,与各参考轴的距离为平移变量。In some optional implementations of this embodiment, the determination of the Euler angles and translation variables between the reference coordinate system and the coordinate systems of each terminal device includes: comparing the above-mentioned human skeleton in the above-mentioned non-reference terminal device coordinate system The difference between the weighted average skeleton data below and the weighted average skeleton data under the above-mentioned reference coordinate system; take the above-mentioned difference as the difference skeleton data of the above-mentioned human skeleton; calculate the coordinates of the above-mentioned difference skeleton data under the above-mentioned reference coordinate system The included angle with each reference axis of the above-mentioned reference coordinate system is Euler angle; the distance between the coordinates of the above-mentioned difference skeleton data in the above-mentioned reference coordinate system and each reference axis of the above-mentioned reference coordinate system is a translation variable. Here, the difference skeleton data is the difference between the weighted average skeleton data of the above-mentioned human skeleton in the reference coordinate system and the data in the non-reference terminal device coordinate system. The angles between the difference skeleton data and each reference axis in the above reference coordinate system are Euler angles, and the distances from each reference axis are translation variables.

子步骤2024,根据上述欧拉角和平移变量确定参考坐标系与各上述非参考终端设备的坐标系之间的变换矩阵。In sub-step 2024, a transformation matrix between the reference coordinate system and the coordinate systems of each of the above-mentioned non-reference terminal devices is determined according to the above-mentioned Euler angles and translation variables.

在本实施例中,基于子步骤2023中所确定的欧拉角和平移变量,上述服务器可以通过旋转平移的方式使得上述欧拉角和平移变量最小的方式确定出参考坐标系与各上述非参考终端设备的坐标系之间的变换矩阵。具体地,以上述参考坐标系的坐标轴与上述非参考坐标系的坐标轴之间的欧拉角构成旋转矩阵,以上述参考坐标系的坐标轴与上述非参考坐标系的坐标轴之间的平移变量构成平移矩阵,将上述旋转矩阵和平移矩阵的乘积作为上述参考坐标系与上述非参坐标系之间的变换矩阵。In this embodiment, based on the Euler angles and translation variables determined in sub-step 2023, the above-mentioned server can determine the reference coordinate system and each of the above-mentioned non-reference The transformation matrix between the coordinate systems of the end device. Specifically, the Euler angles between the coordinate axes of the above-mentioned reference coordinate system and the coordinate axes of the above-mentioned non-reference coordinate system constitute a rotation matrix, and the Euler angles between the coordinate axes of the above-mentioned reference coordinate system and the above-mentioned non-reference coordinate system The translation variable constitutes a translation matrix, and the product of the above rotation matrix and the translation matrix is used as a transformation matrix between the above reference coordinate system and the above non-parametric coordinate system.

在本实施例的一些可选的实现方式中,上述根据上述欧拉角和平移变量确定参考坐标系与各非参考终端设备的坐标系之间的变换矩阵,包括:根据上述欧拉角和平移变量分别确定出旋转矩阵和平移矩阵;确定上述旋转变换矩阵和上述平移矩阵的乘积为变换矩阵。这里,上述欧拉角和平移变量可以表述为欧拉角变量θx、θy、θz和平移变量x、y、z,根据上述参考坐标系的三个轴xyz的欧拉角θx、θy、θz,可以得到旋转变换矩阵Rix,θy,θz)=Rizz)·Riyy)·Rixx),由三个平移变量x、y、z,可以得出平移矩阵Ti(x,y,z),则,旋转平移变换矩阵为Mix,θy,θz,x,y,z)=Ti(x,y,z)·Rix,θy,θz)。其中,i为终端设备的数目,Rizz)、Riyy)、Rixx)分别为欧拉角与参考坐标系的坐标轴的旋转矩阵。In some optional implementations of this embodiment, the determination of the transformation matrix between the reference coordinate system and the coordinate system of each non-reference terminal device based on the above Euler angles and translation variables includes: according to the above Euler angles and translation variables The variables determine the rotation matrix and the translation matrix respectively; determine the product of the above rotation transformation matrix and the above translation matrix as the transformation matrix. Here, the above Euler angles and translation variables can be expressed as Euler angle variables θ x , θ y , θ z and translation variables x, y, z, according to the Euler angles θ x , θ y , θ z , the rotation transformation matrix R ix , θ y , θ z )=R izz )·R iyy )·R ixx ) can be obtained, which consists of three translation variables x, y, z, the translation matrix T i (x, y, z) can be obtained, then, the rotation translation transformation matrix is M ix , θ y , θ z , x, y, z)=T i ( x,y,z)·R ixyz ). Wherein, i is the number of terminal devices, and R izz ), R iyy ), and R ixx ) are rotation matrices of Euler angles and coordinate axes of the reference coordinate system, respectively.

在一些具体的示例中,可以对上述旋转平移变换矩阵进行优化,匹配上述变量θx、θy、θz、x、y、z,使得函数最小所得的Mi为优化后的变换矩阵。In some specific examples, the above-mentioned rotation-translation transformation matrix can be optimized to match the above-mentioned variables θ x , θ y , θ z , x, y, z, so that the function The minimum obtained Mi is the optimized transformation matrix.

本申请上述实施例所提供的方法根据各终端设备所获取的骨架数据确定出骨架数据的可信度最高的终端设备为参考终端设备,参考终端设备的坐标系为参考坐标系,确定同一人体骨架的骨架数据在参考坐标系下和在非参考终端的坐标系下的欧拉角和平移变量,根据欧拉角和平移变量确定出坐标系之间的变换矩阵。实现了多Kinect之间数据坐标的自动转换。According to the method provided by the above embodiments of the present application, according to the skeleton data acquired by each terminal device, the terminal device with the highest reliability of the skeleton data is determined as the reference terminal device, and the coordinate system of the reference terminal device is the reference coordinate system, and the same human skeleton is determined Euler angles and translation variables of the skeleton data in the reference coordinate system and the non-reference terminal coordinate system, and determine the transformation matrix between the coordinate systems according to the Euler angles and translation variables. Automatic conversion of data coordinates between multiple Kinects has been realized.

进一步参考图3,其示出了多Kinect人体骨架坐标变换方法中训练坐标转换矩阵的又一个实施例的流程。上述训练坐标转换矩阵的子步骤包括:Further referring to FIG. 3 , it shows the flow of another embodiment of the training coordinate transformation matrix in the multi-Kinect human skeleton coordinate transformation method. The sub-steps of the above training coordinate transformation matrix include:

子步骤3021,接收多个终端设备所发送的同一人体的多帧骨架数据,根据上述骨架数据确定各上述终端设备的骨架数据的加权平均骨架数据。Sub-step 3021, receiving multiple frames of skeleton data of the same human body sent by multiple terminal devices, and determining the weighted average skeleton data of the skeleton data of each of the above-mentioned terminal devices according to the above-mentioned skeleton data.

在本实施例中,多Kinect人体骨架坐标变换方法运行于其上的电子设备(例如图1所示的服务器)可以通过有线连接方式或者无线连接方式从终端设备接收多个终端设备发送的同一人体的骨架数据。其中,终端设备可以通过与其连接的Kinect传感器获得人体的骨架数据,并将所获得骨架数据发送到服务器。上述骨架数据是指Kinect传感器所检测到的人体的图像数据,上述Kinect传感器根据所检测到每帧图像数据映射到该Kinect传感器坐标系下时的数据,通过对数据的加权运算,确定出上述各个终端设备所捕获的人体骨架的骨架数的加权平均值。上述骨架数据可以是所检测到每帧图像数据映射到该Kinect传感器坐标系下时,表述上述人体骨架的躯干和各关节点在该Kinect传感器坐标系下的坐标数据。In this embodiment, the electronic device (such as the server shown in Figure 1) on which the multi-Kinect human body skeleton coordinate transformation method runs can receive the same human body information sent by multiple terminal devices from the terminal device through a wired connection or a wireless connection. skeleton data. Wherein, the terminal device can obtain the skeleton data of the human body through the Kinect sensor connected thereto, and send the obtained skeleton data to the server. The above-mentioned skeleton data refers to the image data of the human body detected by the Kinect sensor, and the above-mentioned Kinect sensor determines the above-mentioned each frame of image data according to the detected data when each frame of image data is mapped to the Kinect sensor coordinate system by weighting the data. The weighted average of the number of skeletons of human skeletons captured by the terminal device. The above-mentioned skeleton data may be coordinate data representing the torso of the above-mentioned human skeleton and each joint point in the Kinect sensor coordinate system when each frame of detected image data is mapped to the Kinect sensor coordinate system.

子步骤3022,判断上述人体骨架为正面或反面,若判断结果为反面时,将上述人体骨架躯干的关节点坐标进行左右互换。Sub-step 3022, judging whether the above-mentioned human skeleton is front or back, and if the judgment result is negative, exchange the joint point coordinates of the torso of the above-mentioned human skeleton between left and right.

在本实施例中,上述服务器可以通过人体骨架姿势判断人体骨架的正反面;还可以通过面部识别的方式判断人体骨架的正反面。对判断为反面的人体骨架的骨架图像进行翻转处理,即对人体骨架的躯干两侧的关节点坐标进行左右变换。这里,可以预先指定一些关节点为躯干关节点。In this embodiment, the above-mentioned server can judge the front and back of the human skeleton through the posture of the human skeleton; it can also judge the front and back of the human skeleton through facial recognition. Flip processing is performed on the skeleton image of the human skeleton judged to be the reverse side, that is, the joint point coordinates on both sides of the torso of the human skeleton are transformed left and right. Here, some joint points can be pre-designated as torso joint points.

具体地,如果规定校准时校准者右手高度要高于左手,那么计算比较骨架的左右手坐标,如果右手高度坐标大于左手高度坐标,那么此骨架为正面,反之则为反面,需要进行左右坐标的互换。Specifically, if it is stipulated that the height of the calibrator’s right hand is higher than that of the left hand during calibration, then calculate the coordinates of the left and right hands of the comparison skeleton. If the height coordinate of the right hand is greater than the height coordinate of the left hand, then the skeleton is the front side, otherwise it is the reverse side, and the left and right coordinates need to be compared. Change.

在一些具体的示例中,上述通过人体骨架姿势判断人体骨架的正反面,可以是规定一种校准时使用的不对称姿势,然后从上述多帧骨架数据中提取出上述人体骨架的各关节点的坐标。In some specific examples, the above-mentioned determination of the front and back of the human skeleton through the posture of the human skeleton may be to specify an asymmetric posture used during calibration, and then extract the joint points of the human skeleton from the above-mentioned multi-frame skeleton data. coordinate.

在一些示例中,还可以根据关节点坐标判断出人体骨架的正面或反面。其中,上述关节点的坐标包括当前帧人体骨架的关节点坐标和上帧合成骨架的关节点坐标;根据上述关节点坐标和上述关节点的权重确定出捕捉参数;根据该上帧合成骨架的捕捉结果和上述捕捉参数确定出上述当前帧骨架的正反面。其中,上述捕捉参数C为:In some examples, it is also possible to determine the front or back of the human skeleton according to the joint point coordinates. Wherein, the coordinates of the above-mentioned joint points include the joint point coordinates of the current frame human skeleton and the joint point coordinates of the synthetic skeleton in the last frame; determine the capture parameters according to the above-mentioned joint point coordinates and the weights of the above-mentioned joint points; The result and the above-mentioned capture parameters determine the front and back of the above-mentioned current frame skeleton. Among them, the above capture parameter C is:

其中,n表示关节点数,vj表示当前帧骨架的第j个关节的坐标,v′j表示上帧合成骨架的第j个关节的坐标,wj表示当前帧骨架的第j个关节的权重,w′j表示上帧合成骨架的第j个关节的权重。Among them, n represents the number of joint points, vj represents the coordinates of the jth joint of the current frame skeleton, v′ j represents the coordinates of the jth joint of the synthetic skeleton in the previous frame, and w j represents the weight of the jth joint of the current frame skeleton , w′ j represents the weight of the jth joint of the synthesized skeleton in the last frame.

分别计算出上述上帧合成骨架为正面时的正面捕捉参数和上述上帧合成骨架为反面时的反面捕捉参数;比较上述正面捕捉参数和上述反面捕捉参数的大小;响应于上述正面捕捉参数与上述反面捕捉参数的差值大于设定阈值,确定上述当前帧骨架为正面;响应于上述反面捕捉参数与上述正面捕捉参数的差值大于设定阈值,确定上述当前帧骨架为反面。Respectively calculate the front capture parameters when the synthetic skeleton of the above frame is the front and the reverse capture parameters when the synthetic skeleton of the above frame is the reverse; compare the size of the above front capture parameters and the above reverse capture parameters; respond to the above positive capture parameters and the above If the difference of the reverse capture parameters is greater than the set threshold, it is determined that the current frame skeleton is the front; in response to the difference between the reverse capture parameters and the front capture parameters is greater than the set threshold, it is determined that the current frame skeleton is the reverse.

具体地,若上帧图像为正面捕捉结果时,,计算得出Cf,若上帧图像为反面捕捉结果时,计算得出Cb;若Cf远小于Cb,则当前帧为正面捕捉结果,反之则为背面捕捉结果。上述Cf远小于Cb是指上述Cb是Cf的多倍,例如,可以是Cb是Cf的10倍及以上。Specifically, if the last frame image is the front capture result, calculate C f , if the last frame image is the reverse capture result, calculate C b ; if C f is much smaller than C b , then the current frame is the front capture result, otherwise it is the result of backside capture. The aforementioned C f being much smaller than C b means that the aforementioned C b is a multiple of C f , for example, C b may be 10 times or more than C f .

子步骤3023计算上述终端设备的骨架数据的可信度,从上述终端设备中确定出可信度最高的终端设备为参考终端设备,确定上述参考终端设备的坐标系为参考坐标系。Sub-step 3023 calculates the reliability of the skeleton data of the above-mentioned terminal devices, determines the terminal device with the highest reliability among the above-mentioned terminal devices as the reference terminal device, and determines the coordinate system of the above-mentioned reference terminal device as the reference coordinate system.

在本子步骤中,上述服务器分别计算每个上述终端设备所采集的多帧骨架数据的可信度,确定出可信度平均值最高的终端设备为参考终端设备,其余的终端设备为非参考终端设备;确定参考终端设备的坐标系为参考坐标系。在上述确定参考终端设备中所采集的多帧骨架数据,确保所追踪环境或校准环境中有且只有一个人体存在,各个终端设备将该人体被不同Kinect传感器识别的骨架数据传递给服务器,服务器从终端设备获取静止不动的人体的多帧骨架数据。例如,每台Kinect传感器可以获取静止不动的人体的20帧骨架数据。In this sub-step, the above-mentioned server separately calculates the credibility of the multi-frame skeleton data collected by each of the above-mentioned terminal devices, and determines that the terminal device with the highest average value of credibility is the reference terminal device, and the rest of the terminal devices are non-reference terminals Equipment; determine the coordinate system of the reference terminal equipment as the reference coordinate system. The multi-frame skeleton data collected in the above-mentioned reference terminal device is determined to ensure that there is one and only one human body in the tracking environment or calibration environment, and each terminal device transmits the skeleton data of the human body recognized by different Kinect sensors to the server, and the server from The terminal device acquires the multi-frame skeleton data of the still human body. For example, each Kinect sensor can acquire 20 frames of skeleton data of a still human body.

子步骤3024,根据平均骨架数据应用最小最优算法,确定各所述非参考终端设备的变换矩阵,其方法为:计算如下公式中F值最小时对应的变换校准矩阵Mi为参考坐标系与各所述非参考终端设备的坐标系之间的坐标变换矩阵:Sub-step 3024, apply the minimum optimal algorithm according to the average skeleton data to determine the transformation matrix of each non-reference terminal device, the method is: calculate the transformation calibration matrix Mi corresponding to the minimum F value in the following formula as the reference coordinate system and The coordinate transformation matrix between the coordinate systems of each of the non-reference terminal devices:

其中,n为人体骨架的关节点数,i为终端设备的数目,是第i个终端设备的骨架数据的第j个关节点在参考坐标下的坐标,是参考设备的骨架数据的第j个关节点在参考坐标系下的坐标,的第j个关节点的权重。Among them, n is the number of joint points of the human skeleton, i is the number of terminal devices, is the coordinates of the j-th joint point of the skeleton data of the i-th terminal device under the reference coordinates, is the coordinate of the jth joint point of the skeleton data of the reference device in the reference coordinate system, yes The weight of the jth joint point of .

在本实施例中,基于步骤303中所确定出的参考终端设备和参考坐标系,上述服务器可以使用粒子群优化算法确定出变换校准矩阵:In this embodiment, based on the reference terminal device and the reference coordinate system determined in step 303, the above-mentioned server can use the particle swarm optimization algorithm to determine the transformation calibration matrix:

上述变换校准矩阵可以简化为3个分别绕x,y,z三个轴的旋转变量,和以x,y,z三个轴为方向的平移变量。粒子i的位置可表示为六维向量Xi=(θx,θy,θz,x,y,z),粒子i的速度可表示为六维空间向量粒子的适应度计算公式为设置粒子群规模为m,初始化所有粒子,包括随机位置和随机速度;通过公式计算每个粒子的适应值,在此n为骨架数据中关节点数值,可取25;将每个粒子的计算出的适应值与该粒子历史最优值pbesti比较,如果计算得出的适应值小于历史最好值,则替换历史最好值;找出粒子群中所有粒子的适应值最小值,与整个粒子群的历史最优值gbesti作比较,如果比历史最优值小则替换历史最优值;根据公式更新每个粒子的速度,其中ω为粒子惯性参数,c1、c2为粒子的“学习”速度权重,r1、r2为介于0与1之间的随机数,根据公式Xi=Xi+Vi更新每个粒子位置;当最大迭代次数达到k次,或全局最优适应值连续φ次稳定在一个值附近时,达到迭代结束条件,否则转跳到更新粒子速度的步骤继续寻找最优位置。通过上述粒子群优化算法迭代确定出各个终端设备与参考终端设备之间坐标系的坐标变换矩阵。The above-mentioned transformation calibration matrix can be simplified into three rotation variables around the three axes of x, y, and z, and translation variables with the three axes of x, y, and z as directions. The position of particle i can be expressed as a six-dimensional vector Xi = (θ x , θ y , θ z , x, y, z), and the velocity of particle i can be expressed as a six-dimensional space vector The fitness calculation formula of particles is Set the size of the particle swarm to m, initialize all particles, including random positions and random velocities; through the formula Calculate the fitness value of each particle, where n is the joint point value in the skeleton data, which can be 25; compare the calculated fitness value of each particle with the particle’s historical optimal value pbest i , if the calculated fitness value If it is less than the historical best value, replace the historical best value; find out the minimum fitness value of all particles in the particle swarm, compare it with the historical optimal value gbest i of the entire particle swarm, and replace the historical value if it is smaller than the historical optimal value optimal value; according to the formula Update the velocity of each particle, where ω is the inertial parameter of the particle, c 1 and c 2 are the "learning" velocity weights of the particle, r 1 and r 2 are random numbers between 0 and 1, according to the formula Xi = X i +V i update the position of each particle; when the maximum number of iterations reaches k times, or when the global optimal fitness value is stable around a value for φ consecutive times, the iteration end condition is reached, otherwise jump to the step of updating the particle velocity and continue Find the best location. The coordinate transformation matrix of the coordinate system between each terminal device and the reference terminal device is determined iteratively through the above particle swarm optimization algorithm.

作为示例,如图4所示,为两个不同终端设备的Kinect所捕捉的同一人物的人体骨架的骨架数据,该骨架数据显示人体的轮廓及组成人体骨架的关节点的数据(可以使用各自Kinect的坐标系表示),对上述两个Kinect所捕获的骨架数据确定平均骨架,进而确定出坐标转换矩阵,图5所示为经转换矩阵转换后参考坐标系下的两个Kinect所捕获的人体骨架数据。As an example, as shown in Figure 4, it is the skeleton data of the human skeleton of the same character captured by the Kinects of two different terminal devices, the skeleton data shows the outline of the human body and the data of the joint points that form the human skeleton (you can use the respective Kinect coordinate system representation), determine the average skeleton of the skeleton data captured by the above two Kinects, and then determine the coordinate transformation matrix. Figure 5 shows the human skeleton captured by the two Kinects captured by the two Kinects in the reference coordinate system after conversion by the transformation matrix data.

本申请上述实施例所提供的方法通过最小最优算法,经过多次地带比较后确定出最优的参考坐标系与非参考终端设备的坐标系之间的转换矩阵。使得各终端设备通过转换矩阵转换参考坐标系下的骨架数据连续、稳定。The methods provided in the above embodiments of the present application use the minimum optimal algorithm to determine the optimal conversion matrix between the reference coordinate system and the coordinate system of the non-reference terminal device after multiple zone comparisons. Make each terminal device convert the skeleton data in the reference coordinate system through the conversion matrix continuously and stably.

作为另一方面,本申请还提供了多Kinect人体骨架坐标变换设备,该设备包括一个或多个处理器;存储装置,用于存储一个或多个程序;当上述一个或多个程序被上一个或多个处理器执行,使得上述一个或多个处理器:获取多个终端设备所捕获的骨架数据;利用训练好的坐标变换矩阵,转换上述骨架数据,其中,训练上述变换矩阵包括:接收多个终端设备所发送的同一人体的多帧骨架数据,根据上述骨架数据确定各上述终端设备的骨架数据的加权平均骨架数据;根据各终端设备所捕获的骨架数据计算各上述终端设备的的可信度,从上述终端设备中确定出可信度最高的终端设备为参考终端设备,确定上述参考终端设备的坐标系为参考坐标系,除上述参考终端设备外的启停指定设备确定费参考终端设备,上述非参考终端设备的坐标系为非参考坐标系;根据上述加权平均骨架数据对应的人体骨架在上述参考坐标系下的坐标和在上述非参考坐标系下的坐标之间的差值计算参考坐标系与上述非参考坐标系之间的欧拉角和平移变量;以上述参考坐标系的坐标轴与上述非参考坐标系的坐标轴之间的上述欧拉角构成旋转矩阵,以上述参考坐标系的坐标轴与上述非参考坐标系的坐标轴之间的上述平移变量构成平移矩阵,将上述旋转矩阵和平移矩阵的乘积作为上述参考坐标系与上述非参坐标系之间的变换矩阵。As another aspect, the application also provides a multi-Kinect human skeleton coordinate transformation device, which includes one or more processors; a storage device for storing one or more programs; when the above-mentioned one or more programs are uploaded by a or a plurality of processors, so that the one or more processors: acquire the skeleton data captured by a plurality of terminal devices; use the trained coordinate transformation matrix to convert the above skeleton data, wherein the training of the transformation matrix includes: receiving multiple The multi-frame skeleton data of the same human body sent by each terminal device, determine the weighted average skeleton data of the skeleton data of each of the above-mentioned terminal devices according to the above-mentioned skeleton data; calculate the credible value of each of the above-mentioned terminal devices according to the skeleton data captured by each terminal device The terminal equipment with the highest reliability is determined from the above-mentioned terminal equipment as the reference terminal equipment, and the coordinate system of the above-mentioned reference terminal equipment is determined as the reference coordinate system. , the coordinate system of the above-mentioned non-reference terminal equipment is a non-reference coordinate system; the reference is calculated according to the difference between the coordinates of the human skeleton corresponding to the above-mentioned weighted average skeleton data in the above-mentioned reference coordinate system and the coordinates in the above-mentioned non-reference coordinate system The Euler angle and translation variable between the coordinate system and the above-mentioned non-reference coordinate system; the above-mentioned Euler angle between the coordinate axis of the above-mentioned reference coordinate system and the coordinate axis of the above-mentioned non-reference coordinate system constitutes a rotation matrix, and the above-mentioned reference coordinate The above-mentioned translation variables between the coordinate axes of the above-mentioned reference coordinate system and the above-mentioned non-reference coordinate system form a translation matrix, and the product of the above-mentioned rotation matrix and the translation matrix is used as the transformation matrix between the above-mentioned reference coordinate system and the above-mentioned non-reference coordinate system.

另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的服务器中所包含的;也可以是单独存在,而未装配入该服务器中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该服务器:获取多个终端设备所捕获的骨架数据;利用训练好的坐标变换矩阵,转换上述骨架数据,其中,训练上述变换矩阵包括:接收多个终端设备所发送的同一人体的多帧骨架数据,根据上述骨架数据确定各上述终端设备的骨架数据的加权平均骨架数据;根据各终端设备所捕获的骨架数据计算各上述终端设备的的可信度,从上述终端设备中确定出可信度最高的终端设备为参考终端设备,确定上述参考终端设备的坐标系为参考坐标系,除上述参考终端设备外的启停指定设备确定费参考终端设备,上述非参考终端设备的坐标系为非参考坐标系;根据上述加权平均骨架数据对应的人体骨架在上述参考坐标系下的坐标和在上述非参考坐标系下的坐标之间的差值计算参考坐标系与上述非参考坐标系之间的欧拉角和平移变量;以上述参考坐标系的坐标轴与上述非参考坐标系的坐标轴之间的上述欧拉角构成旋转矩阵,以上述参考坐标系的坐标轴与上述非参考坐标系的坐标轴之间的上述平移变量构成平移矩阵,将上述旋转矩阵和平移矩阵的乘积作为上述参考坐标系与上述非参坐标系之间的变换矩阵。On the other hand, the present application also provides a computer-readable medium, which may be included in the server described in the above embodiments, or may exist independently without being assembled into the server. The above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the server, the server: acquires the skeleton data captured by multiple terminal devices; uses the trained coordinate transformation matrix to convert The above-mentioned skeleton data, wherein, training the above-mentioned transformation matrix includes: receiving multiple frames of skeleton data of the same human body sent by multiple terminal devices, and determining the weighted average skeleton data of the skeleton data of each of the above-mentioned terminal devices according to the above-mentioned skeleton data; according to each terminal device The captured skeleton data calculates the credibility of each of the above-mentioned terminal devices, determines the terminal device with the highest reliability from the above-mentioned terminal devices as the reference terminal device, and determines the coordinate system of the above-mentioned reference terminal device as the reference coordinate system, except for the above-mentioned Refer to the start-stop designated equipment other than the reference terminal equipment to determine the fee reference terminal equipment, the coordinate system of the above-mentioned non-reference terminal equipment is a non-reference coordinate system; according to the coordinates of the human skeleton corresponding to the above-mentioned weighted average skeleton data in the above-mentioned reference coordinate system and in the above-mentioned The difference between the coordinates in the non-reference coordinate system is used to calculate the Euler angle and translation variable between the reference coordinate system and the above-mentioned non-reference coordinate system; The above-mentioned Euler angles between constitute a rotation matrix, and the above-mentioned translation variables between the coordinate axes of the above-mentioned reference coordinate system and the coordinate axes of the above-mentioned non-reference coordinate system constitute a translation matrix, and the product of the above-mentioned rotation matrix and translation matrix is used as the above-mentioned reference coordinates system and the transformation matrix between the above-mentioned non-parametric coordinate system.

至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。So far, the technical solutions of the present invention have been described in conjunction with the preferred embodiments shown in the accompanying drawings, but those skilled in the art will easily understand that the protection scope of the present invention is obviously not limited to these specific embodiments. Without departing from the principles of the present invention, those skilled in the art can make equivalent changes or substitutions to relevant technical features, and the technical solutions after these changes or substitutions will all fall within the protection scope of the present invention.

Claims (10)

1. a kind of more Kinect human skeletons coordinate transformation methods, it is characterised in that methods described includes:
Obtain the skeleton data that multiple terminal devices are captured;
Using the transformation matrix of coordinates trained, the skeleton data is changed, wherein, train the transformation matrix to include:
Receive multiple terminal devices transmitted by same human body multiframe skeleton data, according to the skeleton data determine it is each described in The weighted average skeleton data for the skeleton data that terminal device is sent;
The skeleton data captured according to each terminal device calculates the confidence level of each terminal device, from the terminal device It is reference terminal equipment to determine confidence level highest terminal device, and the coordinate system for determining the reference terminal equipment is with reference to seat Mark system, the other equipment in addition to the reference terminal equipment are appointed as non-reference terminal device, the non-reference terminal device Coordinate system is non-reference coordinate system;
According to coordinate of the human skeleton corresponding to the weighted average skeleton data under the reference frame and described non- The difference between coordinate under reference frame, calculate the Eulerian angles peace between reference frame and the non-reference coordinate system Move variable;
The Eulerian angles between the reference axis of the reference frame and the reference axis of the non-reference coordinate system are formed rotation Torque battle array, the translation variable structure between the reference axis of the reference frame and the reference axis of the non-reference coordinate system Into translation matrix, using the product of the spin matrix and translation matrix as the reference frame and the non-ginseng coordinate system it Between transformation matrix.
2. more Kinect human skeletons coordinate transformation methods according to claim 1, it is characterised in that the skeleton data Including forming each body joint point coordinate of human skeleton and the confidence level of the body joint point coordinate.
3. more Kinect human skeletons coordinate transformation methods according to claim 2, it is characterised in that described in the basis Skeleton data determines the weighted average skeleton data for the skeleton data that each terminal device is sent, including:
Gather the multiframe skeleton data of human skeleton respectively by multiple terminal devices;
According to the body joint point coordinate of skeleton data described in every frame of acquired each terminal device and the body joint point coordinate can Reliability, the weight using the confidence level of the body joint point coordinate as the body joint point coordinate, calculate what the terminal device was detected The artis weighted average of each artis of human skeleton;
Joint point data using the artis weighted average as the artis, with the whole included by the human skeleton The weighted average skeleton data for the human skeleton that joint point data is detected by terminal device.
4. more Kinect human skeletons coordinate transformation methods according to claim 3, it is characterised in that described according to each end The skeleton data that end equipment is captured, the confidence level of each terminal device is calculated, including:
Obtain the confidence level of each artis for the multiframe skeleton data that each terminal device is gathered;
Calculate the average value of the confidence level of each artis for the skeleton data that each terminal device is gathered;
Add and operate the confidence level of each artis of the whole artis for the composition human skeleton that the terminal device is gathered Average value;
It is determined that it is described plus and operating result be the terminal device confidence level.
5. more Kinect human skeletons coordinate transformation methods according to claim 3, it is characterised in that described in the basis Coordinate of the human skeleton corresponding to weighted average skeleton data under the reference frame and under the non-reference coordinate system Coordinate between difference, calculate the Eulerian angles between reference frame and each non-coordinate system and translate variable, including:
Weighted average skeleton data and the non-reference for calculating the human skeleton that the reference terminal equipment is gathered are whole The difference of the weighted average skeleton data for the human skeleton that end equipment is gathered;
Difference skeleton data using the difference as the human skeleton;
Calculate coordinate of the difference skeleton data under the reference frame and each reference axis angle of the reference frame For Eulerian angles;
Calculate coordinate of the difference skeleton data under the reference frame and each reference axis of the reference frame Distance is translation variable.
6. more Kinect human skeletons coordinate transformation methods according to claim 1, it is characterised in that described in the basis Eulerian angles and translation variable determine the transformation matrix between the coordinate system of reference frame and each non-reference terminal device, bag Include:
Three axle xyz of reference frame Eulerian angles θ is determined according to the Eulerian anglesx、θy、θz, obtain rotation transformation square Battle array is Rix, θy, θz)=Rizz)·Riyy)·Rixx);
The variable x, y, z of three axles of the reference frame is determined according to the translation variable, it can be deduced that translation matrix Ti (x, y, z);
Using the product of the rotational transformation matrix and the translation matrix as transformation matrix Mi
7. more Kinect human skeletons coordinate transformation methods according to claim 6, it is characterised in that methods described is also wrapped Include and minimum optimal algorithm is applied according to average skeleton data, determine the transformation matrix of each non-reference terminal device, its method For:It is calculated as follows corresponding conversion calibration matrix M when F values are minimum in formulai
<mrow> <mi>F</mi> <mo>=</mo> <msubsup> <mi>&amp;Sigma;</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mi>j</mi> <mo>=</mo> <mi>n</mi> </mrow> </msubsup> <msub> <mover> <mi>w</mi> <mo>&amp;OverBar;</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <msub> <mover> <mi>w</mi> <mo>&amp;OverBar;</mo> </mover> <mrow> <mn>1</mn> <mi>j</mi> </mrow> </msub> <mrow> <mo>|</mo> <mrow> <msub> <mover> <mi>v</mi> <mo>&amp;OverBar;</mo> </mover> <mrow> <mn>1</mn> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mover> <mi>v</mi> <mo>&amp;OverBar;</mo> </mover> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <msub> <mi>M</mi> <mi>i</mi> </msub> </mrow> <mo>|</mo> </mrow> </mrow>
Wherein, n is that the joint of human skeleton is counted, and i is the number of terminal device,It is the weighted average of i-th of terminal device Coordinate of j-th of the artis of skeleton data under reference coordinate,It is the jth of the weighted average skeleton data of reference device Coordinate of the individual artis under reference frame,It isJ-th of artis weight.
8. more Kinect human skeletons coordinate transformation methods according to claim 1, it is characterised in that methods described is also wrapped Include:
After weighted average skeleton is calculated, judge the human skeleton for front or back;
If judged result is reverse side, the body joint point coordinate of the human skeleton both sides is subjected to right and left mutually changing.
9. a kind of more Kinect human skeletons coordinate transform processing equipment, including:
One or more processors, it is adapted for carrying out each bar program;And
Storage device, for storing one or more programs,
Characterized in that, described program be suitable to load by processor and is performed with realize in claim 1-8 it is any described in it is more Kinect human skeleton coordinate transformation methods.
10. a kind of computer-readable recording medium, is stored thereon with computer program, it is characterised in that the program is by processor More Kinect human skeletons coordinate transformation methods as described in any in claim 1-8 are realized during execution.
CN201710657342.4A 2017-08-03 2017-08-03 Multi-Kinect human body skeleton coordinate transformation method, processing equipment and readable storage medium Active CN107577451B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710657342.4A CN107577451B (en) 2017-08-03 2017-08-03 Multi-Kinect human body skeleton coordinate transformation method, processing equipment and readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710657342.4A CN107577451B (en) 2017-08-03 2017-08-03 Multi-Kinect human body skeleton coordinate transformation method, processing equipment and readable storage medium

Publications (2)

Publication Number Publication Date
CN107577451A true CN107577451A (en) 2018-01-12
CN107577451B CN107577451B (en) 2020-06-12

Family

ID=61035867

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710657342.4A Active CN107577451B (en) 2017-08-03 2017-08-03 Multi-Kinect human body skeleton coordinate transformation method, processing equipment and readable storage medium

Country Status (1)

Country Link
CN (1) CN107577451B (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108376405A (en) * 2018-02-22 2018-08-07 国家体育总局体育科学研究所 Human movement capture system and method for catching based on binary sense tracing system
CN108564643A (en) * 2018-03-16 2018-09-21 中国科学院自动化研究所 Performance based on UE engines captures system
CN108564642A (en) * 2018-03-16 2018-09-21 中国科学院自动化研究所 Unmarked performance based on UE engines captures system
CN108572731A (en) * 2018-03-16 2018-09-25 中国科学院自动化研究所 Motion capture data presentation method and device based on multiple Kinects and UE4
CN110197461A (en) * 2019-06-06 2019-09-03 上海木木聚枞机器人科技有限公司 A kind of coordinate transformation relation determines method, apparatus, equipment and storage medium
CN111079535A (en) * 2019-11-18 2020-04-28 华中科技大学 Human skeleton action recognition method, device and terminal
CN111582081A (en) * 2020-04-24 2020-08-25 西安交通大学 Multi-Kinect serial gait data space-time combination method and measuring device
CN112183506A (en) * 2020-11-30 2021-01-05 成都市谛视科技有限公司 Human body posture generation method and system
CN115035602A (en) * 2022-06-17 2022-09-09 广东天物新材料科技有限公司 Human gait analysis method and device, computer equipment and readable storage medium
JPWO2023013562A1 (en) * 2021-08-04 2023-02-09

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070160957A1 (en) * 2004-12-14 2007-07-12 Huafeng Wen Image based dentition record digitization
CN103106688A (en) * 2013-02-20 2013-05-15 北京工业大学 Indoor three-dimensional scene rebuilding method based on double-layer rectification method
CN103914873A (en) * 2014-03-13 2014-07-09 南京大学 Method for generating sculpture three-dimensional model driven by human body movements
CN104589356A (en) * 2014-11-27 2015-05-06 北京工业大学 Dexterous hand teleoperation control method based on Kinect human hand motion capturing
CN104933734A (en) * 2015-06-26 2015-09-23 西安理工大学 Multi-Kinect-based human body gesture data fusion method
CN105512621A (en) * 2015-11-30 2016-04-20 华南理工大学 Kinect-based badminton motion guidance system
CN105551059A (en) * 2015-12-08 2016-05-04 国网山西省电力公司技能培训中心 Power transformation simulation human body motion capturing method based on optical and inertial body feeling data fusion
CN105988566A (en) * 2015-02-11 2016-10-05 联想(北京)有限公司 Information processing method and electronic device
CN106340059A (en) * 2016-08-25 2017-01-18 上海工程技术大学 Automatic registration method based on multi-body-feeling-acquisition-device three-dimensional modeling
US20170148175A1 (en) * 2015-11-20 2017-05-25 Vivotek Inc. Object matching method and camera system with an object matching function

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070160957A1 (en) * 2004-12-14 2007-07-12 Huafeng Wen Image based dentition record digitization
CN103106688A (en) * 2013-02-20 2013-05-15 北京工业大学 Indoor three-dimensional scene rebuilding method based on double-layer rectification method
CN103914873A (en) * 2014-03-13 2014-07-09 南京大学 Method for generating sculpture three-dimensional model driven by human body movements
CN104589356A (en) * 2014-11-27 2015-05-06 北京工业大学 Dexterous hand teleoperation control method based on Kinect human hand motion capturing
CN105988566A (en) * 2015-02-11 2016-10-05 联想(北京)有限公司 Information processing method and electronic device
CN104933734A (en) * 2015-06-26 2015-09-23 西安理工大学 Multi-Kinect-based human body gesture data fusion method
US20170148175A1 (en) * 2015-11-20 2017-05-25 Vivotek Inc. Object matching method and camera system with an object matching function
CN105512621A (en) * 2015-11-30 2016-04-20 华南理工大学 Kinect-based badminton motion guidance system
CN105551059A (en) * 2015-12-08 2016-05-04 国网山西省电力公司技能培训中心 Power transformation simulation human body motion capturing method based on optical and inertial body feeling data fusion
CN106340059A (en) * 2016-08-25 2017-01-18 上海工程技术大学 Automatic registration method based on multi-body-feeling-acquisition-device three-dimensional modeling

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MARTIN BÜNGER: ""Evaluation of Skeleton Trackers and Gesture Recognition for Human-robot Interaction"", 《APPLIED CATALYSIS A GENERAL》 *
席小霞: ""基于多台Kinect摄像机的三维重建系统研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108376405A (en) * 2018-02-22 2018-08-07 国家体育总局体育科学研究所 Human movement capture system and method for catching based on binary sense tracing system
CN108376405B (en) * 2018-02-22 2020-11-17 国家体育总局体育科学研究所 Human motion capture system and method based on double-body sensation tracking system
CN108564643A (en) * 2018-03-16 2018-09-21 中国科学院自动化研究所 Performance based on UE engines captures system
CN108564642A (en) * 2018-03-16 2018-09-21 中国科学院自动化研究所 Unmarked performance based on UE engines captures system
CN108572731A (en) * 2018-03-16 2018-09-25 中国科学院自动化研究所 Motion capture data presentation method and device based on multiple Kinects and UE4
CN110197461A (en) * 2019-06-06 2019-09-03 上海木木聚枞机器人科技有限公司 A kind of coordinate transformation relation determines method, apparatus, equipment and storage medium
CN110197461B (en) * 2019-06-06 2022-12-30 上海木木聚枞机器人科技有限公司 Coordinate conversion relation determining method, device, equipment and storage medium
CN111079535B (en) * 2019-11-18 2022-09-16 华中科技大学 Human skeleton action recognition method and device and terminal
CN111079535A (en) * 2019-11-18 2020-04-28 华中科技大学 Human skeleton action recognition method, device and terminal
CN111582081A (en) * 2020-04-24 2020-08-25 西安交通大学 Multi-Kinect serial gait data space-time combination method and measuring device
CN112183506A (en) * 2020-11-30 2021-01-05 成都市谛视科技有限公司 Human body posture generation method and system
JPWO2023013562A1 (en) * 2021-08-04 2023-02-09
WO2023013562A1 (en) * 2021-08-04 2023-02-09 パナソニックIpマネジメント株式会社 Fatigue estimation system, fatigue estimation method, posture estimation device, and program
JP7630118B2 (en) 2021-08-04 2025-02-17 パナソニックIpマネジメント株式会社 Fatigue estimation system, fatigue estimation method, posture estimation device, and program
CN115035602A (en) * 2022-06-17 2022-09-09 广东天物新材料科技有限公司 Human gait analysis method and device, computer equipment and readable storage medium

Also Published As

Publication number Publication date
CN107577451B (en) 2020-06-12

Similar Documents

Publication Publication Date Title
CN107577451A (en) More Kinect human skeletons coordinate transformation methods and processing equipment, readable storage medium storing program for executing
US12469239B2 (en) Data processing method and apparatus, electronic device, and computer-readable storage medium
CN107563295B (en) Multi-Kinect-based all-dimensional human body tracking method and processing equipment
CN106780608B (en) Pose information estimation method and device and movable equipment
CN109255749B (en) Map building optimization in autonomous and non-autonomous platforms
US12062245B2 (en) System and method for real-time creation and execution of a human digital twin
WO2018221614A1 (en) Learning device, learning method, learning model, estimation device, and grip system
JP2018522348A (en) Method and system for estimating the three-dimensional posture of a sensor
TWI427558B (en) System for estimating location of occluded skeleton, method for estimating location of occluded skeleton and method for reconstructing occluded skeleton
US11625838B1 (en) End-to-end multi-person articulated three dimensional pose tracking
JP7051751B2 (en) Learning device, learning method, learning model, detection device and gripping system
CN118721215B (en) Multi-mode teleoperation grabbing method and system for humanoid mechanical arm based on vision
JP2022509731A5 (en)
CN108537214A (en) An automatic construction method of indoor semantic map
JP2021061014A (en) Learning device, learning method, learning model, detector, and gripping system
TW202314593A (en) Positioning method and equipment, computer-readable storage medium
CN109035303A (en) SLAM system camera tracking and device, computer readable storage medium
CN119577499A (en) Motion capture method, device, electronic device and storage medium
CN112070835A (en) Mechanical arm pose prediction method and device, storage medium and electronic equipment
JP2023514021A (en) Center of mass position determination method, device, legged robot and computer program
JP2023082675A (en) Apparatus and method for estimating line of sight
CN119536348B (en) A Multi-Task Fully Autonomous Management Method for Intelligent Robots Supporting Environmental Interaction
CN113847907B (en) Positioning method and device, equipment and storage medium
CN112712545B (en) Human Part Tracking Methods and Systems
Dang et al. Perfc: An efficient 2d and 3d perception software-hardware framework for mobile cobot

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant