Setting up a BeaKon system
The BeaKon system is a UltraWide Band (UWB) localization system, which is composed of a set of anchors and Tags. The anchors are fixed around the tracking zone and the Tags are attached to the persons or object that need to be tracked.
As the UWB localization technology is less precise than the vision technology used in the K SYSTEM, the BeaKon system is to be considered as an add-on to the K SYSTEM that provides a stable and durable identity of the person tracked. Thanks to the BeaKon system, the identity of the persons tracked is persistent even if the persons go out of the field of view of the Kapta, allowing for a fully automated tracking of the performers during a whole show. We recommend to not used the BeaKon system alone, but in addition to the vision-based system, to get a more reliable system.
System functionality overview
The system works like this :
- When setting up the system, you associate each Tag you want to use to a Tracker and a Target.
-
Associating a Tag to a Tracker locks the use of this Tracker to the Tag’s position. This means that the IA will :
- Assign the detected person that is the closest to the Tag's position to the associated Tracker.
- If nobody is detected near the Tag (2 meters circle around the Tag’s position), spawn the associated Tracker to the Tag's position only and not to the position of a detected person.
-
You will still have to manually patch your Targets to the desired Trackers associated to the Tags the first time. The system works like this to allow you to :
- Patch multiple Targets to a single Tag if needed.
- Change the Target associated to the Tag whenever you want, without having to change the config file.
-
If you want to use a Tag to track an object, associate the Tag with the Tracker "0" :
track_uid: 0
. This will prevent the IA to assign a detected person to a Tracker that you can use otherwise. You can then enable the "BeaKon positioning" option of this Target in the Target tab of the Show explorer view. This will allow you to use the Tag's position to determine the position of the object, without relying on vision. -
Associating a Tag to a Target allows you to use the "BeaKon positioning" option for the position of a Target (without relying on vision). This option can be enabled in the Target tab of the Show explorer view. We recommend to use this option for object only, as the vision-based tracking is more precise for people.
Write the config file
At the moment, you have to write a config file and then import it in Kratos to setup the BeaKon system. This file is a .yaml
file and should look like this:
tags:
- serial: 0x001211
color: "#f44336"
kit: "A"
- serial: 0x001056
color: "#9c27b0"
kit: "B"
- serial: 0x0017AC
color: "#4caf50"
kit: "A"
- serial: 0x0010E8
color: "#2196f3"
kit: "B"
- serial: 0x0017AD
kit: ""
targets:
- name: "ARTHUR"
tags: [0x001211, 0x001056]
track_uid: 1
- name: "GEORGES"
tags: [0x0017AC, 0x0010E8]
track_uid: 2
- name : "CAR"
tags: [0x0017AD]
track_uid: 3
The writing of the file is done in two steps:
- Declare every Tag of your system
- Link the Tags to Targets and Trackers.
Declare a Tag
For each Tag, you have to declare :
- The serial number of the Tag, written on the front and back of the Tag.
- Its color that will be used to display its position in the 3D Stage view. This parameter is optional, the Tag will be black by default.
- Its kit : You can have two kits of Tags, A and B. This option can be used if you have two sets of costumes for example and need to switch from one kit to the other quickly between representations. You can select which kit to use in the BeaKon view or in the BeaKon tab of the Show explorer view. You can also not select any kit to make the Tag activated at all time (whether you choose the kit A, B, or no kit in Kratos) by writing
kit: ""
.
A Tag that is not assigned to a kit will be displayed in the two kits windows in the BeaKon view.
In the previous file example, you can see that :
- The Tags
0x001211
and0x0017AC
, are in the kit A. - The Tags
0x001056
and0x0010E8
are in the kit B. - The Tag
0x0017AD
is not in any kit. - the Tag
0x0017AD
has no color property and will be black in the 3D Stage view.
Declare a Target
The "targets" part of the configuration file allows you to link each Tag to a Target and a Tracker.
For each Target, you have to declare :
- The Target's name that have to be the same in Kratos, in the config file and in Eliko dashboard.
- The associated Tag(s) of the Target. You can have one or more Tags associated to a Target, from the same kit or not :
tags: [0x001211, 0x001056]
- The associated Tracker Id, as a Tag will always represent the same person, it must be assigned to a Tracker that will always corresponds to this person.
Associating a Target and a Tag is only useful in the case where you want to use the "BeaKon positioning" option for a Target (use Tag's position only to determine the Target's position). This option can be enabled in the Target tab of the Show explorer view. Even if you don't use this option (which we recommend, it should only be used to track objects), you still need to associate a Target to a Tag for the system to work. The most important step of this declaration is to associate each Tag with a Tracker, that way the Tracker will always keep the identity of the Tag and you can patch the corresponding Target to it in the target patcher view.
It is not possible to associate a Target with multiple Tags of the same kit.
For now, you can only give one Tag to each person you want to preserve the identity.
You can use multiples Tags of the same kit for a object if you use the "BeaKon positioning" option. The position of the Tags will be averaged.
In the previous file example, you can see that :
- The Tracker
1
is associated to the Tags0x001211
and0x001056
that are from different kits (A and B) and to the TargetARTHUR
. In this case it is because Arthur has two costumes, with one Tag in each, one for the first act and one for the second act. In Kratos, the TargetARTHUR
is patched to the Tracker1
. - Same goes for the Tracker
2
with the Tags0x0017AC
and0x0010E8
and the TargetGEORGES
. - The Tracker
3
is associated to the Tag0x0017AD
that is not in any kit and the TargetCAR
. In this case it is because the car is an object so the TargetCAR
uses the only Tag position option and is present in both acts, so its Tag has to be without kit to be activated at all time.
Be careful to have named your Targets in the config file with the same name as in Kratos, otherwise the link between the Targets and the Tags will not work.
Configure the system in Kratos
After writing the config file, you have to setup the system in Kratos. To do so, go to the BeaKon tab of the Show explorer view and check the following parameters :
- Import the config file by clicking on the "IMPORT CONFIG" button and selecting the file you just wrote.
- Enable the connection to the BeKon server by enabling the "Enable BeaKon".
- Enter the IP address of the BeaKon server in the "BeaKon Server Main Address" field.
- Choose a BeaKon kit if needed (let the textfield blank if you don't have multiple BeaKon kit).
- Make also sure that the "BeaKon Tag" toggle is enabled in the Kore tab of the Show explorer view.
- If you have an object to track, go the the corresponding Target in the target tab of the Show explorer view and enable the "BeaKon positioning" option.
Vision based tracking is more precise than the BeaKon system for positioning people.
We recommend to use the BeaKon positioning option for objects only.
Configure the system in Eliko dashboard
For the Tags to be displayed in the BeaKon view, you have to perform a last step in the Eliko dashboard. To do so :
- Go to the Eliko dashboard by searching
127.0.0.1:8080
in a web browser. - Go to the "Tag" page.
- For each Tag, enter the name of the corresponding Target in the "Name" field.
Be careful to have named your Targets in the Eliko dashboard with the same name as in Kratos, otherwise the Tags will not appear on the BeaKon view.
Monitor the system
To monitor the Tags status, you can use the BeaKon view.
you can also monitor the position of the Tags in the 3D Stage view.