This wiki is intended for older versions of Motive. For the latest documentation, please refer to
docs.optitrack.com

Difference between revisions of "Rigid Body Skeleton Markerset"

 
(37 intermediate revisions by the same user not shown)
Line 2: Line 2:
  
 
'''Scope'''
 
'''Scope'''
:This page provides step-by-step instructions for creating the 6 rigid body skeleton markerset.
+
:This page provides step-by-step instructions for creating the rigid body based skeleton markersets in Motive.
 +
 
 +
{{Info|'''Important Note'''
 +
*Please note that ''Motive: Body'' license is required to access and use the rigid body skeleton markersets. This is not supported with ''Motive: Tracker'' license.
 +
* Rigid body skeleton markersets are intended for real-time applications only. Exporting into BVH/FBX file is not supported.}}
  
 
__TOC__
 
__TOC__
  
=6RB skeleton markerset with Active Puck/HMD Clips=
+
=Overview=
 +
----
 +
[[Image:6RB_Overview_21.png|350 px|thumb|6 Rigid Body Skeleton in Motive.]]
 +
The Rigid Body Skeleton markersets allows users to use rigid bodies to establish skeleton tracking. Rigid bodies are attached to head, torso, both hands, and both feet (6 rigid body skeleton only). Then, using the tracking information, Motive solves the entire skeleton through inverse kinematics. There are total three types of rigid body skeleton markersets in Motive:
 +
 
 +
* 6 Rigid Body Skeleton
 +
* 4 Rigid Body Skeleton
 +
* 4 Rigid Body Skeleton + Active Fingers
 +
 
 +
4 Rigid Body Skeleton is used for upper body tracking only, and 6 Rigid Body Skeleton is used for the entire full-body skeleton tracking. For the 6 Rigid Body Skeleton, two additional rigid bodies are attached to both feet, but the basic insturctions for creating the skeleton is the same. You can use either the passive retro-reflective markers or the [http://optitrack.com/products/active-components/#active-puck active pucks] to produce the rigid body skeleton.
 +
 
 +
=RIgid Body Placements=
 
----
 
----
==Active Puck Placements==
 
 
<div class="padded">
 
<div class="padded">
====Step 1. Prepare Total 5 Active Pucks and 1 Active HMD clip. Total 6 rigid bodies.====
+
====Step 1. Prepare the rigid bodies====
 +
<div class="padded">
 +
* For 6 rigid body skeleton, total 6 rigid bodies are needed: head (1), torso (1), both hands (2), and both feet (2)
 +
* For 4 rigid body skeleton, total 4 rigid bodies are needed: head (1), torso (1), both hands (2)
 +
</div>
  
====Step 2. Attach the pucks at the following locations of the actor's body. Make they are attached securely====
+
====Step 2. Attach the rigid bodies onto the actor====
 
{|class="wikitable padded" style="max-width: 600px; margin:auto;"
 
{|class="wikitable padded" style="max-width: 600px; margin:auto;"
 
!Placement
 
!Placement
Line 18: Line 36:
 
|-
 
|-
 
|Right/Left Hand
 
|Right/Left Hand
|Place an active puck on top of each hand. (2)
+
|Place a rigid body on top of each hand. (2)
 
|-
 
|-
 
|Right/Left Foot
 
|Right/Left Foot
|Place an active puck on top of each foot. (2)
+
|Place a rigid body on top of each foot. (2)
  
 
'''This is needed only for the 6 Rigid Body skeleton markerset.'''
 
'''This is needed only for the 6 Rigid Body skeleton markerset.'''
 
|-
 
|-
 
|Chest (or Hip)
 
|Chest (or Hip)
|Attach an active puck at mid-spine on the back. If using a VR backpack PC, this can be attached on top of the backpack PC. This rigid body can also be replaced by a hip rigid body, and in that case, the rigid body needs to be placed slightly above the center of the hip bone. (1)
+
|Attach a rigid body at mid-spine on the back. If using a VR backpack PC, this can be attached on top of the backpack PC. This rigid body can also be replaced by a hip rigid body, and in that case, the rigid body needs to be placed slightly above the center of the hip bone. (1)
 
|-
 
|-
 
|HMD (or Head)
 
|HMD (or Head)
Line 33: Line 51:
  
 
<center><ul>
 
<center><ul>
<li style="display:inline-block; vertical-alignment:text-top;>[[Image:6RB_PlacementPosteriorView.png|thumb|Posterior view of the actor with rigid bodies]]</li>
+
<li style="display:inline-block; vertical-alignment:text-top;>[[Image:6RB_PlacementAnteriorView.jpg|thumb|Anterior view of the actor with rigid bodies]]</li>
<li style="display:inline-block; vertical-alignment:text-top;>[[Image:6RB_PlacementAnteriorView.png|thumb|Posterior view of the actor with rigid bodies]]</li>
+
<li style="display:inline-block; vertical-alignment:text-top;>[[Image:6RB_PlacementPosteriorView.jpg|thumb|Posterior view of the actor with rigid bodies]]</li>
 
</ul></center>
 
</ul></center>
 
</div>
 
</div>
  
==Creating the Skeleton==
+
=Creating the Skeleton=
 +
----
 
<div class="padded">
 
<div class="padded">
====Step 1: Create a rigid body for the puck attached to Chest/Hip ====
+
====Step 1: Create a rigid body asset for the rigid body attached to Chest/Hip ====
 
<div class="padded">
 
<div class="padded">
Let's first start with defining a rigid body for the chest puck. Open up the [[Trackables pane]], make sure the ''Rigid Bodies'' option is selected at the bottom, and access the ''Create'' tab. This will bring up options for defining rigid bodies in Motive.  
+
Let's first start with defining a rigid body for the chest rigid body. Open up the [[Builder pane]], make sure the ''Rigid Bodies'' option is selected at the bottom, and access the ''Create'' tab. This will bring up options for defining rigid bodies in Motive.  
  
In the [[Viewport#Perspective View|3D viewport]], select all of the 8 markers on the chest puck, and you should be able to see the selected markers in the Trackables pane. Name the rigid body as ''Chest'', and click create. If you are attaching the active puck on the lower back, you will name the rigid body ''Hip'' instead.
+
In the [[Viewport#Perspective View|3D viewport]], select all of the markers on the chest rigid body, and you should be able to see the selected markers in the Builder pane. Name the rigid body as ''Chest'', and click create. If you are attaching the rigid body on the lower back, you will name the rigid body ''Hip'' instead.
  
 
''Only either one of the Chest or the Hip rigid body is needed for the 6 rigid body skeleton.''
 
''Only either one of the Chest or the Hip rigid body is needed for the 6 rigid body skeleton.''
  
[[Image:6RB_ChestCreate.png|center]]
+
[[Image:6RB_ChestCreate.png|center|280px]]
 
 
 
</div>
 
</div>
  
Line 79: Line 97:
 
====Step 4: Create the HMDhead/Head rigid body====
 
====Step 4: Create the HMDhead/Head rigid body====
 
<div class="padded">
 
<div class="padded">
Now that the chest, or hip, is set up, next step is to set up the head rigid body. This can be either the HMD (HMDHead) if you are using the active CV1 clip, or simply an active puck attached to the head (Head). Only one of them needs to be created.
+
Now that the chest, or hip, rigid body has been set up, next step is to create a rigid body for the head. This can be either the active CV1 clip or an rigid body attached to the head. Only one of them needs to be created.
  
 
<tabs>
 
<tabs>
 
<tab name="HMDHead" style="padding:2%;">
 
<tab name="HMDHead" style="padding:2%;">
To create the HMD rigid body, you can use the HMD calibration tool in the [[Trackables pane]] to easily create a rigid body for the active CV1 clip. Make sure to choose either the +Z-forward or the +X-forward orientation when creating the rigid body, and it must be named '''HMDHead''' for +Z-forward orientation or '''HMDHeadX''' for +X-forward orientation.  
+
For HMDs using the active CV1 clip, you can use the HMD tool in the [[Builder pane]] to easily create a rigid body. Make sure to choose either the +Z-forward or the +X-forward orientation, and the rigid body must be named '''HMDHead''' for +Z-forward orientation or '''HMDHeadX''' for +X-forward orientation.  
{{#lst:Trackables pane|HMDSteps}}
+
 
 +
# Open the [[Builder pane]] under [[Command_Bar#View|View tab]] and click ''Rigid Bodies''.
 +
# Under the ''Type'' drop-down menu, select HMD. This will bring up the options for defining an HMD rigid body.
 +
# Under the ''Orientation'' drop-down menu, select the desired orientation of the HMD.
 +
# Hold the HMD at the center of the tracking volume where all of the active markers are tracked well.
 +
# Select the 8 active markers in the [[Viewport#Perspective View|3D viewport]].
 +
# Name the rigid body as ''HMDHead'' for +Z-forward orientation or ''HMDHeadX'' for +X-forward orientation.
 +
# Click ''Create''. An HMD rigid body will be created from the selected markers and it will initiate the calibration process.
 +
# During calibration, slowly rotate the HMD to collect data samples in different orientations.
 +
# Once all necessary samples are collected, the calibrated HMD rigid body will be created.
  
 
[[Image:6RB CalibratedPivots.png|center|350px]]
 
[[Image:6RB CalibratedPivots.png|center|350px]]
 
</tab>
 
</tab>
 
<tab name="Head" style="padding:2%;">
 
<tab name="Head" style="padding:2%;">
The process of creating a head rigid body from an active puck is similar to the steps for creating the Chest rigid body. You can use the [[Trackables pane]] to define a rigid body named ''Head''.
+
The process of creating a head rigid body is similar to the steps for creating the Chest rigid body. You can use the [[Builder pane]] to define a rigid body named ''Head''.
  
 
Once the rigid body is defined, use the [[Gizmo_Tool:_Translate,_Rotate,_and_Scale|Gizmo tool]] to translate the pivot point to at the center of the actor's head near the neck joint. Then,  likewise, orient the rigid body so that +z axis is directing towards the front.
 
Once the rigid body is defined, use the [[Gizmo_Tool:_Translate,_Rotate,_and_Scale|Gizmo tool]] to translate the pivot point to at the center of the actor's head near the neck joint. Then,  likewise, orient the rigid body so that +z axis is directing towards the front.
Line 103: Line 130:
 
====Step 5: Set skeleton name.====
 
====Step 5: Set skeleton name.====
 
<div class="padded">
 
<div class="padded">
Now that the head and torso rigid body has been prepared, we can start defining the skeleton. Open the [[Trackables pane]] and select desired Rigid Body Skeleton from the marker set drop-down menu, and assign a name for the skeleton that will be created.
+
Now that the head and torso rigid body has been prepared, we can start defining the skeleton. Open the [[Builder pane]] and select desired Rigid Body Skeleton from the marker set drop-down menu, and assign a name for the skeleton that will be created.
  
 
[[Image:TrackablesPane_6RB.png|center|thumb|600 px|Creating 6RB skeleton with skeleton name ''Actor'']]
 
[[Image:TrackablesPane_6RB.png|center|thumb|600 px|Creating 6RB skeleton with skeleton name ''Actor'']]
Line 111: Line 138:
 
====Step 6: Create Rigid Body Skeleton.====
 
====Step 6: Create Rigid Body Skeleton.====
 
<div class="padded">
 
<div class="padded">
Ask the subject to strike a calibration pose (e.g. [[Skeleton Tracking#Calibration Poses|T-Pose]]). Then select the two rigid bodies and press ''Create'' on the Skeleton pane. This action will automatically define rigid bodies for the remaining active pucks on the hand/foot, and also place the pivot points at the proper location automatically. All of the rigid bodies will have the prefix with the name given to the skeleton (see screenshot below), and the skeleton will be created and tracked.
+
Ask the subject to strike a calibration pose (e.g. [[Skeleton Tracking#Calibration Poses|T-Pose]]). Then select the two rigid bodies and press ''Create'' on the Builder pane. This action will automatically define rigid bodies for the remaining rigid bodies on the hand/foot, and also place the pivot points at the proper location automatically. All of the rigid bodies will have the prefix with the name given to the skeleton (see screenshot below), and the skeleton will be created and tracked.
  
 
{{Info|'''Rigid Body Names:
 
{{Info|'''Rigid Body Names:
 
:In order for the rigid body skeleton to work, it is important that all of the rigid bodies have name prefix that matches the skeleton name. If one of the rigid body doesn't seem to be contributing to the skeleton solve, please check these names.}}
 
:In order for the rigid body skeleton to work, it is important that all of the rigid bodies have name prefix that matches the skeleton name. If one of the rigid body doesn't seem to be contributing to the skeleton solve, please check these names.}}
  
[[Image:6RB_Skeleton.png|center|500px]]
+
<center><ul>
 +
<li style="display:inline-block; vertical-align:text-top;">[[Image:6RB_Skeleton.png|center|500px]]</li>
 +
<li style="display:inline-block; vertical-align:text-top;">[[Image:6RB_PivotLocations.png|center|thumb|300px|'''Pivot Point Locations:
 +
'''<span style="color:#FF0000">Pivot:</span> Head (when HMD is not used).
 +
<span style="color:#00FF1E">Pivot:</span> Left and Right Hand,
 +
<span style="color:#0C00FF">Pivot:</span> Left and Right Foot,
 +
<span style="color:#FFA300">Pivot:</span> Hip (or replaced by Chest rigid body).]]</li>
 +
</ul></center>
 
</div>
 
</div>
 +
 +
====Step 7: Double-check the created skeleton====
 +
<div class="padded">
 +
After the skeleton has been created, confirm tracking of the skeleton. If any of the skeleton segment seems to be misaligned, double-check the position of the attached rigid bodies and corresponding pivot points.
 +
 +
* '''Chest RB Pivot:''' When using the Chest rigid body for the torso-tracking. The length of the abdomen segment gets solved by referencing the location of the chest rigid body pivot point. If the created skeleton has an abnormally long or short abdomen segment, double-check and adjust the height of the chest pivot point.
 +
 +
* '''Neck:''' If the pivot orientation of the Chest rigid body doesn't align with the head rigid body, the neck of the created skeleton is may appear to be bent. Make sure the chest rigid body's y-axis is pointed directly up towards the Head/HMD rigid body pivot.
 +
 +
[[Image:6RB_ReferenceOverlay.png|center]]
 
</div>
 
</div>
 +
</div>
 +
 +
=Troubleshooting=
 +
----
 +
 +
{{QnA|Skeleton is not tracking|
 +
If the skeleton, or certain parts of the skeleton, appears to be not being tracked at all, make sure the rigid bodies are named properly. The rigid body must be named with the following syntax:
 +
 +
*'''Head:''' ''(Skeleton Name)Head'' OR ''(Skeleton Name)HMDHead'' OR ''(Skeleton Name)HMDHeadX''
 +
*'''Torso:''' ''(Skeleton Name)Hip'' OR ''(Skeleton Name)Chest''
 +
*'''Left hand:''' ''(Skeleton Name)LHand''
 +
*'''Right hand:''' ''(Skeleton Name)RHand''
 +
*'''Left foot:''' ''(Skeleton Name)LFoot''
 +
*'''Right foot:''' ''(Skeleton Name)RFoot''
 +
}}
 +
 +
{{QnA|HMD head is facing backward/sideways |
 +
If the head or HMD is facing backward or sideways, it indicates that it's orientation is not properly set. Please double check the position/orientation of the rigid body head to make sure they are set properly.
 +
}}
 +
 +
{{QnA|Skeleton bones are flipped|
 +
When this happens, double check the orientation of each rigid body. All rigid body must be named properly and their z-axis must be facing the forward direction.
 +
}}
 +
 +
{{QnA|Shoulder/hip bone is too high up|
 +
When this happens, it indicates that the position of the HMD (or head) and the Chest (or hip) rigid body is not accurately placed. The 6 rigid body skeleton gets calculated from pivot points of these two rigid bodies, so if there is an obvious misalignment of the created skeleton bones, double-check and make sure these two pivot points are set up properly.}}

Latest revision as of 20:50, 27 September 2019

Main PageSkeleton Tracking6 RigidBody Skeleton Markerset

Scope

This page provides step-by-step instructions for creating the rigid body based skeleton markersets in Motive.

Info2.png

Important Note

  • Please note that Motive: Body license is required to access and use the rigid body skeleton markersets. This is not supported with Motive: Tracker license.
  • Rigid body skeleton markersets are intended for real-time applications only. Exporting into BVH/FBX file is not supported.

Overview


6 Rigid Body Skeleton in Motive.

The Rigid Body Skeleton markersets allows users to use rigid bodies to establish skeleton tracking. Rigid bodies are attached to head, torso, both hands, and both feet (6 rigid body skeleton only). Then, using the tracking information, Motive solves the entire skeleton through inverse kinematics. There are total three types of rigid body skeleton markersets in Motive:

  • 6 Rigid Body Skeleton
  • 4 Rigid Body Skeleton
  • 4 Rigid Body Skeleton + Active Fingers

4 Rigid Body Skeleton is used for upper body tracking only, and 6 Rigid Body Skeleton is used for the entire full-body skeleton tracking. For the 6 Rigid Body Skeleton, two additional rigid bodies are attached to both feet, but the basic insturctions for creating the skeleton is the same. You can use either the passive retro-reflective markers or the active pucks to produce the rigid body skeleton.

RIgid Body Placements


Step 1. Prepare the rigid bodies

  • For 6 rigid body skeleton, total 6 rigid bodies are needed: head (1), torso (1), both hands (2), and both feet (2)
  • For 4 rigid body skeleton, total 4 rigid bodies are needed: head (1), torso (1), both hands (2)

Step 2. Attach the rigid bodies onto the actor

Placement Description
Right/Left Hand Place a rigid body on top of each hand. (2)
Right/Left Foot Place a rigid body on top of each foot. (2)

This is needed only for the 6 Rigid Body skeleton markerset.

Chest (or Hip) Attach a rigid body at mid-spine on the back. If using a VR backpack PC, this can be attached on top of the backpack PC. This rigid body can also be replaced by a hip rigid body, and in that case, the rigid body needs to be placed slightly above the center of the hip bone. (1)
HMD (or Head) Use the active CV1 HMD clip to attach active markers onto the HMD. If not using an CV1 clip, you will need to manually placed the markers on the HMD. If not using an HMD, place the rigid body on the back of the head. (1)
  • Anterior view of the actor with rigid bodies
  • Posterior view of the actor with rigid bodies

Creating the Skeleton


Step 1: Create a rigid body asset for the rigid body attached to Chest/Hip

Let's first start with defining a rigid body for the chest rigid body. Open up the Builder pane, make sure the Rigid Bodies option is selected at the bottom, and access the Create tab. This will bring up options for defining rigid bodies in Motive.

In the 3D viewport, select all of the markers on the chest rigid body, and you should be able to see the selected markers in the Builder pane. Name the rigid body as Chest, and click create. If you are attaching the rigid body on the lower back, you will name the rigid body Hip instead.

Only either one of the Chest or the Hip rigid body is needed for the 6 rigid body skeleton.

6RB ChestCreate.png

Step 2: Position the pivot point of the Chest/Hip rigid body

Once the chest or hip rigid body has been created, the next step is to position and orient its pivot point at the appropriate location. You can use the Gizmo tool to easily translate the rigid body pivot points.

For the chest rigid body, the pivot point must be placed at the center of the torso, approximately at the heart center; which is in between the spine and the bottom end of the sternum. For the hip rigid body, the pivot point must be placed at the center of the hip bone.

Info2.png

  • This is easier to set up by switching one of the cameras to a grayscale video mode and using the Reference View pane to monitor where the pivot point is placed within the actor's body.

6RB ChestRBPivot.png 6RB HipRBPivot.png

Step 3: Orient the pivot point of the Chest/Hip rigid body

After positioning the pivot point, adjust the orientation of the rigid body pivot also by using the rotate Gizmo tool. For creating 6 Rigid Body skeleton, the +z axis must direct towards the front of the actor.

Info2.png

Enabling the Orientation setting under the rigid body properties will reveal the orientation of the selected rigid body.

6RB ChestRBOriented.png

Step 4: Create the HMDhead/Head rigid body

Now that the chest, or hip, rigid body has been set up, next step is to create a rigid body for the head. This can be either the active CV1 clip or an rigid body attached to the head. Only one of them needs to be created.

For HMDs using the active CV1 clip, you can use the HMD tool in the Builder pane to easily create a rigid body. Make sure to choose either the +Z-forward or the +X-forward orientation, and the rigid body must be named HMDHead for +Z-forward orientation or HMDHeadX for +X-forward orientation.

  1. Open the Builder pane under View tab and click Rigid Bodies.
  2. Under the Type drop-down menu, select HMD. This will bring up the options for defining an HMD rigid body.
  3. Under the Orientation drop-down menu, select the desired orientation of the HMD.
  4. Hold the HMD at the center of the tracking volume where all of the active markers are tracked well.
  5. Select the 8 active markers in the 3D viewport.
  6. Name the rigid body as HMDHead for +Z-forward orientation or HMDHeadX for +X-forward orientation.
  7. Click Create. An HMD rigid body will be created from the selected markers and it will initiate the calibration process.
  8. During calibration, slowly rotate the HMD to collect data samples in different orientations.
  9. Once all necessary samples are collected, the calibrated HMD rigid body will be created.
6RB CalibratedPivots.png

The process of creating a head rigid body is similar to the steps for creating the Chest rigid body. You can use the Builder pane to define a rigid body named Head.

Once the rigid body is defined, use the Gizmo tool to translate the pivot point to at the center of the actor's head near the neck joint. Then, likewise, orient the rigid body so that +z axis is directing towards the front.

6RB HeadPivot.png 6RB HeadPivot2.png

Step 5: Set skeleton name.

Now that the head and torso rigid body has been prepared, we can start defining the skeleton. Open the Builder pane and select desired Rigid Body Skeleton from the marker set drop-down menu, and assign a name for the skeleton that will be created.

Creating 6RB skeleton with skeleton name Actor

Step 6: Create Rigid Body Skeleton.

Ask the subject to strike a calibration pose (e.g. T-Pose). Then select the two rigid bodies and press Create on the Builder pane. This action will automatically define rigid bodies for the remaining rigid bodies on the hand/foot, and also place the pivot points at the proper location automatically. All of the rigid bodies will have the prefix with the name given to the skeleton (see screenshot below), and the skeleton will be created and tracked.

Info2.png

Rigid Body Names:

In order for the rigid body skeleton to work, it is important that all of the rigid bodies have name prefix that matches the skeleton name. If one of the rigid body doesn't seem to be contributing to the skeleton solve, please check these names.
  • 6RB Skeleton.png
  • Pivot Point Locations: Pivot: Head (when HMD is not used). Pivot: Left and Right Hand, Pivot: Left and Right Foot, Pivot: Hip (or replaced by Chest rigid body).

Step 7: Double-check the created skeleton

After the skeleton has been created, confirm tracking of the skeleton. If any of the skeleton segment seems to be misaligned, double-check the position of the attached rigid bodies and corresponding pivot points.

  • Chest RB Pivot: When using the Chest rigid body for the torso-tracking. The length of the abdomen segment gets solved by referencing the location of the chest rigid body pivot point. If the created skeleton has an abnormally long or short abdomen segment, double-check and adjust the height of the chest pivot point.
  • Neck: If the pivot orientation of the Chest rigid body doesn't align with the head rigid body, the neck of the created skeleton is may appear to be bent. Make sure the chest rigid body's y-axis is pointed directly up towards the Head/HMD rigid body pivot.
6RB ReferenceOverlay.png

Troubleshooting


› Q : Skeleton is not tracking

A: If the skeleton, or certain parts of the skeleton, appears to be not being tracked at all, make sure the rigid bodies are named properly. The rigid body must be named with the following syntax:

  • Head: (Skeleton Name)Head OR (Skeleton Name)HMDHead OR (Skeleton Name)HMDHeadX
  • Torso: (Skeleton Name)Hip OR (Skeleton Name)Chest
  • Left hand: (Skeleton Name)LHand
  • Right hand: (Skeleton Name)RHand
  • Left foot: (Skeleton Name)LFoot
  • Right foot: (Skeleton Name)RFoot

› Q : HMD head is facing backward/sideways

A: If the head or HMD is facing backward or sideways, it indicates that it's orientation is not properly set. Please double check the position/orientation of the rigid body head to make sure they are set properly.

› Q : Skeleton bones are flipped

A: When this happens, double check the orientation of each rigid body. All rigid body must be named properly and their z-axis must be facing the forward direction.

› Q : Shoulder/hip bone is too high up

A: When this happens, it indicates that the position of the HMD (or head) and the Chest (or hip) rigid body is not accurately placed. The 6 rigid body skeleton gets calculated from pivot points of these two rigid bodies, so if there is an obvious misalignment of the created skeleton bones, double-check and make sure these two pivot points are set up properly.