.. _package-rst-tracking:
======================
Package rst.tracking
======================
Tracking refers to the process of maintaining an estimate of some
property, such as the position, of a tracked subject over time.
Messages
========
.. container:: mess4ge-multi
.. container:: mess4ge-graph
.. digraph:: message_graph
fontname="Arial";
fontsize=11;
stylesheet="../_static/graphs.css";
node [fontsize=11,fontname="Arial"]
edge [fontsize=11,fontname="Arial"]
"22" [label=<
| TrackedPolygonalPatches3D |
|
TrackedPolygonalPatch3D | patch |
>,shape=box,style=filled,fillcolor="white"];
"23" [label=< | TrackedPolygonalPatch3D |
|
TrackingInfo | info |
PolygonalPatch3D | patch |
>,shape=box,style=filled,fillcolor="white"];
"24" [label=< | PolygonalPatch3D |
|
Pose | base |
Vec2DFloat | border |
>,shape=box,style=filled,fillcolor="white"];
"25" [label=< | Vec2DFloat |
|
FLOAT32 | x |
FLOAT32 | y |
>,shape=box,style=filled,fillcolor="white"];
"16" [label=< | TrackedClassifiedRegions3D |
|
TrackedClassifiedRegion3D | region |
>,shape=box,style=filled,fillcolor="white"];
"17" [label=< | TrackedClassifiedRegion3D |
|
TrackingInfo | info |
ClassifiedRegion3D | region |
>,shape=box,style=filled,fillcolor="white"];
"18" [label=< | ClassifiedRegion3D |
|
BoundingBox3DFloat | region |
ClassificationResult | result |
>,shape=box,style=filled,fillcolor="white"];
"20" [label=< | ClassificationResult |
|
OCTET-VECTOR | decided_class |
ClassWithProbability | classes |
>,shape=box,style=filled,fillcolor="white"];
"21" [label=< | ClassWithProbability |
|
OCTET-VECTOR | name |
FLOAT32 | confidence |
>,shape=box,style=filled,fillcolor="white"];
"19" [label=< | BoundingBox3DFloat |
|
Pose | transformation |
FLOAT32 | width |
FLOAT32 | depth |
FLOAT32 | height |
>,shape=box,style=filled,fillcolor="white"];
"13" [label=< | States |
|
State | state |
>,shape=box,style=filled,fillcolor="white"];
"14" [label=< | State |
|
TrackingInfo | info |
Aspect | aspect |
>,shape=box,style=filled,fillcolor="white"];
"15" [label=< | Aspect |
|
ASPECT_POSITION_2D | 0 |
ASPECT_POSITION_3D | 1 |
ASPECT_AXIS_ALIGNED_BOUNDING_BOX_2D | 2 |
ASPECT_AXIS_ALIGNED_BOUNDING_BOX_3D | 3 |
ASPECT_BOUNDING_BOX_2D | 4 |
ASPECT_BOUNDING_BOX_3D | 5 |
ASPECT_CONTOUR | 6 |
ASPECT_POSTURE_2D | 7 |
ASPECT_POSTURE_3D | 8 |
>,shape=box,style=filled,fillcolor="white"];
"10" [label=< | TrackedPostures3DFloat |
|
TrackedPosture3DFloat | posture |
>,shape=box,style=filled,fillcolor="white"];
"11" [label=< | TrackedPosture3DFloat |
|
TrackingInfo | info |
Posture3DFloat | posture |
FLOAT32 | confidence |
>,shape=box,style=filled,fillcolor="white"];
"12" [label=< | Posture3DFloat |
|
Translation | position |
Rotation | rotation |
OCTET-VECTOR | name |
>,shape=box,style=filled,fillcolor="white"];
"8" [label=< | TrackedPositions3DFloat |
|
TrackedPosition3DFloat | position |
>,shape=box,style=filled,fillcolor="white"];
"9" [label=< | TrackedPosition3DFloat |
|
TrackingInfo | info |
Translation | position |
FLOAT32 | confidence |
>,shape=box,style=filled,fillcolor="white"];
"3" [label=< | TrackedPoseCollection |
|
TrackedPose | element |
>,shape=box,style=filled,fillcolor="white"];
"4" [label=< | TrackedPose |
|
TrackingInfo | info |
Pose | pose |
FLOAT32 | translation_confidence |
FLOAT32 | rotation_confidence |
>,shape=box,style=filled,fillcolor="white"];
"5" [label=< | Pose |
|
Translation | translation |
Rotation | rotation |
>,shape=box,style=filled,fillcolor="white"];
"7" [label=< | Rotation |
|
FLOAT64 | qw |
FLOAT64 | qx |
FLOAT64 | qy |
FLOAT64 | qz |
ASCII-STRING | frame_id |
>,shape=box,style=filled,fillcolor="white"];
"6" [label=< | Translation |
|
FLOAT64 | x |
FLOAT64 | y |
FLOAT64 | z |
ASCII-STRING | frame_id |
>,shape=box,style=filled,fillcolor="white"];
"1" [label=< | TrackingInfoCollection |
|
TrackingInfo | element |
>,shape=box,style=filled,fillcolor="white"];
"2" [label=< | TrackingInfo |
|
UINT32 | id |
OCTET-VECTOR | persistent_id |
>,shape=box,style=filled,fillcolor="white"];
"22":patch -> "23"[];
"23":patch -> "24"[];
"23":info -> "2"[];
"24":border -> "25"[];
"24":base -> "5"[];
"16":region -> "17"[];
"17":region -> "18"[];
"17":info -> "2"[];
"18":result -> "20"[];
"18":region -> "19"[];
"20" -> "21"[dir=both,arrowtail=odiamond];
"20":classes -> "21"[];
"19":transformation -> "5"[];
"13":state -> "14"[];
"14" -> "15"[dir=both,arrowtail=odiamond];
"14":aspect -> "15"[];
"14":info -> "2"[];
"10":posture -> "11"[];
"11":posture -> "12"[];
"11":info -> "2"[];
"12":rotation -> "7"[];
"12":position -> "6"[];
"8":position -> "9"[];
"9":position -> "6"[];
"9":info -> "2"[];
"3":element -> "4"[];
"4":pose -> "5"[];
"4":info -> "2"[];
"5":rotation -> "7"[];
"5":translation -> "6"[];
"1":element -> "2"[];
.. container:: mess4ge-list
.. container:: messages
* :ref:`TrackingInfoCollection `
* :ref:`TrackedPoseCollection `
* :ref:`TrackedPositions3DFloat `
* :ref:`TrackedPostures3DFloat `
* :ref:`TrackedPosture3DFloat `
* :ref:`States `
* :ref:`State `
* :ref:`TrackedClassifiedRegions3D `
* :ref:`TrackedClassifiedRegion3D `
* :ref:`TrackedPosition3DFloat `
* :ref:`TrackedPose `
* :ref:`TrackedPolygonalPatches3D `
* :ref:`TrackedPolygonalPatch3D `
* :ref:`TrackingInfo `
.. container:: clearer
clearer: should be made invisible via css
.. _message-rst-tracking-trackinginfocollection:
Message TrackingInfoCollection
------------------------------
.. container:: message-rst-tracking-trackinginfocollection-multi
.. container:: message-rst-tracking-trackinginfocollection-documentation
.. py:class:: rst.tracking.TrackingInfoCollection
Collection of :py:class:`TrackingInfo ` instances.
Auto-generated.
.. py:attribute:: element
:type: array of :py:class:`rst.tracking.TrackingInfo`
The individual elements of the collection.
Constraints regarding the empty collection, sorting, duplicated
entries etc. are use case specific.
.. container:: message-rst-tracking-trackinginfocollection-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackingInfoCollection.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackingInfoCollection.proto
:lines: 14-24
:language: protobuf
:emphasize-lines: 9-9
.. _message-rst-tracking-trackedposecollection:
Message TrackedPoseCollection
-----------------------------
.. container:: message-rst-tracking-trackedposecollection-multi
.. container:: message-rst-tracking-trackedposecollection-documentation
.. py:class:: rst.tracking.TrackedPoseCollection
Collection of :py:class:`TrackedPose ` instances.
Auto-generated.
.. py:attribute:: element
:type: array of :py:class:`rst.tracking.TrackedPose`
The individual elements of the collection.
Constraints regarding the empty collection, sorting, duplicated
entries etc. are use case specific.
.. container:: message-rst-tracking-trackedposecollection-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPoseCollection.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPoseCollection.proto
:lines: 14-24
:language: protobuf
:emphasize-lines: 9-9
.. _message-rst-tracking-trackedpositions3dfloat:
Message TrackedPositions3DFloat
-------------------------------
.. container:: message-rst-tracking-trackedpositions3dfloat-multi
.. container:: message-rst-tracking-trackedpositions3dfloat-documentation
.. py:class:: rst.tracking.TrackedPositions3DFloat
A collection of :py:class:`TrackedPosition3DFloat ` objects.
Collecting multiple :py:class:`TrackedPosition3DFloat ` objects in a
single data structure is an easy way to express the fact that they
have been recorded at the same point in time.
.. codeauthor:: Jan Moringen
.. py:attribute:: position
:type: array of :py:class:`rst.tracking.TrackedPosition3DFloat`
Empty collections of tracked positions are allowed but should
rarely be necessary.
Order of positions is not significant since association of
tracked positions to tracked subjects is done via .
.. container:: message-rst-tracking-trackedpositions3dfloat-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPositions3DFloat.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPositions3DFloat.proto
:lines: 18-30
:language: protobuf
:emphasize-lines: 11-11
.. _message-rst-tracking-trackedpostures3dfloat:
Message TrackedPostures3DFloat
------------------------------
.. container:: message-rst-tracking-trackedpostures3dfloat-multi
.. container:: message-rst-tracking-trackedpostures3dfloat-documentation
.. py:class:: rst.tracking.TrackedPostures3DFloat
A collection of :py:class:`TrackedPosture3DFloat ` objects.
Collecting multiple :py:class:`TrackedPosture3DFloat ` objects in a single
data structure is an easy way to express the fact that they have
been recorded at the same point in time.
.. codeauthor:: Jan Moringen
.. py:attribute:: posture
:type: array of :py:class:`rst.tracking.TrackedPosture3DFloat`
Empty collections of tracked postures are allowed but should
rarely be necessary.
Order of postures is not significant since association of
tracked postures to tracked subjects is done via .
.. container:: message-rst-tracking-trackedpostures3dfloat-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPostures3DFloat.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPostures3DFloat.proto
:lines: 18-30
:language: protobuf
:emphasize-lines: 11-11
.. _message-rst-tracking-trackedposture3dfloat:
Message TrackedPosture3DFloat
-----------------------------
.. container:: message-rst-tracking-trackedposture3dfloat-multi
.. container:: message-rst-tracking-trackedposture3dfloat-documentation
.. py:class:: rst.tracking.TrackedPosture3DFloat
**Constraint**: ``len(.posture) == len(.confidence)``
Posture of an articulated tracked subject.
.. codeauthor:: Jan Moringen
.. py:attribute:: info
:type: :py:class:`rst.tracking.TrackingInfo`
Tracking information such as identity of the subject being
tracked.
.. py:attribute:: posture
:type: :py:class:`rst.kinematics.Posture3DFloat`
Posture of the tracked subject identified by :py:attr:`info `.
.. py:attribute:: confidence
:type: array of :py:class:`FLOAT32`
**Constraint**: ``0 <= value <= 1``
Confidence values for the individual positions stored in :py:attr:`posture `.
.. container:: message-rst-tracking-trackedposture3dfloat-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPosture3DFloat.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPosture3DFloat.proto
:lines: 16-36
:language: protobuf
:emphasize-lines: 7-7,12-12,19-19
.. _message-rst-tracking-states:
Message States
--------------
.. container:: message-rst-tracking-states-multi
.. container:: message-rst-tracking-states-documentation
.. py:class:: rst.tracking.States
A collection of :py:class:`State ` objects.
Collecting multiple :py:class:`State ` objects in a single data structure
is an easy way to express the fact that they have been recorded at
the same point in time.
.. codeauthor:: Jan Moringen
.. py:attribute:: state
:type: array of :py:class:`rst.tracking.State`
Empty collections of states are allowed.
Order of states is not significant since association of states
to tracked subjects is done via .
.. container:: message-rst-tracking-states-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/States.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/States.proto
:lines: 18-28
:language: protobuf
:emphasize-lines: 9-9
.. _message-rst-tracking-state:
Message State
-------------
.. container:: message-rst-tracking-state-multi
.. container:: message-rst-tracking-state-documentation
.. py:class:: rst.tracking.State
Describes the available tracking information (via :py:attr:`aspect `) for
a given tracked subject (identified by :py:attr:`info `).
Possible applications include answering queries regarding the
tracking state of certain subjects or broadcasting updated tracking
state information when changes occur.
.. codeauthor:: Jan Moringen
.. py:attribute:: info
:type: :py:class:`rst.tracking.TrackingInfo`
Identifies the subject for which the tracking state is
reported.
.. py:attribute:: aspect
:type: array of :py:class:`rst.tracking.State.Aspect`
Lists of the available tracking aspects for the subject
identified by :py:attr:`info `.
An empty collection of aspects is allowed and corresponds to
the fact that a subject has been lost.
The order of aspects is not significant.
.. container:: message-rst-tracking-state-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/State.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/State.proto
:lines: 19-118
:language: protobuf
:emphasize-lines: 87-87,98-98
.. _message-rst-tracking-state-aspect:
Message Aspect
--------------
.. container:: message-rst-tracking-state-aspect-multi
.. container:: message-rst-tracking-state-aspect-documentation
.. py:class:: rst.tracking.State.Aspect
Aspects of tracking information which are available in the
reported tracking state.
.. py:attribute:: ASPECT_POSITION_2D
= 0
A rough description of the position of the tracked subject
in two-dimensional space (e.g. in a camera image) is
available.
See :py:class:`Vec2DInt `, :py:class:`Vec2DFloat `.
.. py:attribute:: ASPECT_POSITION_3D
= 1
A rough description of the position of the tracked subject
in three-dimensional space is available.
See :py:class:`Translation `.
.. py:attribute:: ASPECT_AXIS_ALIGNED_BOUNDING_BOX_2D
= 2
An axis-aligned box bounding the area in which the tracked
subject is contained is available.
See :py:class:`BoundingBox `.
.. py:attribute:: ASPECT_AXIS_ALIGNED_BOUNDING_BOX_3D
= 3
An axis-aligned box bounding the volume in which the
tracked subject is contained is available.
See :py:class:`AxisAlignedBoundingBox3DFloat `.
.. py:attribute:: ASPECT_BOUNDING_BOX_2D
= 4
A box in general position and orientation (i.e. not
necessarily axis-aligned) bounding the area in which the
tracked subject is contained is available.
.. py:attribute:: ASPECT_BOUNDING_BOX_3D
= 5
A box in general position and orientation (i.e. not
necessarily axis-aligned) bounding the volume in which the
tracked subject is contained is available.
See :py:class:`BoundingBox3DFloat `.
.. py:attribute:: ASPECT_CONTOUR
= 6
A contour bounding the area in which the tracked subject is
contained is available.
.. py:attribute:: ASPECT_POSTURE_2D
= 7
For an articulated tracked subject (such as a human or a
humanoid robot), individual estimations of the positions of
certain points on/in the body of the subject in
two-dimensional space are available.
.. py:attribute:: ASPECT_POSTURE_3D
= 8
For an articulated tracked subject (such as a human or a
humanoid robot), individual estimations of the positions of
certain points on/in the body of the subject in
three-dimensional space are available.
See :py:class:`Posture3DFloat `.
.. container:: message-rst-tracking-state-aspect-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/State.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/State.proto
:lines: 25-99
:language: protobuf
:emphasize-lines: 10-10,18-18,26-26,34-34,41-41,50-50,56-56,64-64,74-74
.. _message-rst-tracking-trackedclassifiedregions3d:
Message TrackedClassifiedRegions3D
----------------------------------
.. container:: message-rst-tracking-trackedclassifiedregions3d-multi
.. container:: message-rst-tracking-trackedclassifiedregions3d-documentation
.. py:class:: rst.tracking.TrackedClassifiedRegions3D
A collection of :py:class:`TrackedClassifiedRegion3D ` objects.
Collecting multiple :py:class:`TrackedClassifiedRegion3D ` objects in a
single data structure is an easy way to express the fact that they
have been recorded at the same point in time.
.. codeauthor:: Leon Ziegler
.. py:attribute:: region
:type: array of :py:class:`rst.tracking.TrackedClassifiedRegion3D`
Empty collections of tracked regions are allowed but should
rarely be necessary.
Order of regions is not significant since association of
tracked regions to tracked subjects is done via .
.. container:: message-rst-tracking-trackedclassifiedregions3d-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedClassifiedRegions3D.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedClassifiedRegions3D.proto
:lines: 18-30
:language: protobuf
:emphasize-lines: 11-11
.. _message-rst-tracking-trackedclassifiedregion3d:
Message TrackedClassifiedRegion3D
---------------------------------
.. container:: message-rst-tracking-trackedclassifiedregion3d-multi
.. container:: message-rst-tracking-trackedclassifiedregion3d-documentation
.. py:class:: rst.tracking.TrackedClassifiedRegion3D
A region in 3D space with tracking information and classification results.
.. codeauthor:: Leon Ziegler
.. py:attribute:: info
:type: :py:class:`rst.tracking.TrackingInfo`
Tracking information such as identity of the subject being tracked.
.. py:attribute:: region
:type: :py:class:`rst.classification.ClassifiedRegion3D`
Region and class of the tracked subject identified by :py:attr:`info ` in
three-dimensional space.
.. container:: message-rst-tracking-trackedclassifiedregion3d-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedClassifiedRegion3D.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedClassifiedRegion3D.proto
:lines: 15-28
:language: protobuf
:emphasize-lines: 6-6,12-12
.. _message-rst-tracking-trackedposition3dfloat:
Message TrackedPosition3DFloat
------------------------------
.. container:: message-rst-tracking-trackedposition3dfloat-multi
.. container:: message-rst-tracking-trackedposition3dfloat-documentation
.. py:class:: rst.tracking.TrackedPosition3DFloat
Position of a tracked subject in three-dimensional space.
.. codeauthor:: Jan Moringen
.. py:attribute:: info
:type: :py:class:`rst.tracking.TrackingInfo`
Tracking information such as identity of the subject being
tracked.
.. py:attribute:: position
:type: :py:class:`rst.geometry.Translation`
Position of the tracked subject identified by :py:attr:`info ` in
three-dimensional space.
.. py:attribute:: confidence
:type: :py:class:`FLOAT32`
**Constraint**: ``0 <= value <= 1``
Confidence in the correctness of the value stored in :py:attr:`position `.
.. container:: message-rst-tracking-trackedposition3dfloat-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPosition3DFloat.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPosition3DFloat.proto
:lines: 15-36
:language: protobuf
:emphasize-lines: 7-7,13-13,20-20
.. _message-rst-tracking-trackedpose:
Message TrackedPose
-------------------
.. container:: message-rst-tracking-trackedpose-multi
.. container:: message-rst-tracking-trackedpose-documentation
.. py:class:: rst.tracking.TrackedPose
Pose of a tracked subject in three-dimensional space.
.. codeauthor:: Phillip Luecking
@create_collection
.. py:attribute:: info
:type: :py:class:`rst.tracking.TrackingInfo`
Tracking information such as identity of the subject being
tracked.
.. py:attribute:: pose
:type: :py:class:`rst.geometry.Pose`
Pose of the tracked subject identified by :py:attr:`info ` in
three-dimensional space.
.. py:attribute:: translation_confidence
:type: :py:class:`FLOAT32`
**Constraint**: ``0 <= value <= 1``
Confidence in the correctness of the translation stored in :py:attr:`pose `.
.. py:attribute:: rotation_confidence
:type: :py:class:`FLOAT32`
**Constraint**: ``0 <= value <= 1``
Confidence in the correctness of the rotation stored in :py:attr:`pose `.
.. container:: message-rst-tracking-trackedpose-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPose.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPose.proto
:lines: 16-44
:language: protobuf
:emphasize-lines: 7-7,13-13,20-20,27-27
.. _message-rst-tracking-trackedpolygonalpatches3d:
Message TrackedPolygonalPatches3D
---------------------------------
.. container:: message-rst-tracking-trackedpolygonalpatches3d-multi
.. container:: message-rst-tracking-trackedpolygonalpatches3d-documentation
.. py:class:: rst.tracking.TrackedPolygonalPatches3D
A collection of :py:class:`TrackedPolygonalPatch3D ` objects.
Collecting multiple :py:class:`TrackedPolygonalPatch3D ` objects in a single
data structure is an easy way to express the fact that they have been
recorded at the same point in time.
.. codeauthor:: Leon Ziegler
.. py:attribute:: patch
:type: array of :py:class:`rst.tracking.TrackedPolygonalPatch3D`
Empty collections of tracked patches are allowed but should
rarely be necessary.
Order of patches is not significant since association of
tracked patches to tracked subjects is done via .
.. container:: message-rst-tracking-trackedpolygonalpatches3d-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPolygonalPatches3D.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPolygonalPatches3D.proto
:lines: 18-29
:language: protobuf
:emphasize-lines: 10-10
.. _message-rst-tracking-trackedpolygonalpatch3d:
Message TrackedPolygonalPatch3D
-------------------------------
.. container:: message-rst-tracking-trackedpolygonalpatch3d-multi
.. container:: message-rst-tracking-trackedpolygonalpatch3d-documentation
.. py:class:: rst.tracking.TrackedPolygonalPatch3D
A planar polygon in 3D space with tracking information.
.. codeauthor:: Leon Ziegler
.. py:attribute:: info
:type: :py:class:`rst.tracking.TrackingInfo`
Tracking information such as identity of the subject being
tracked.
.. py:attribute:: patch
:type: :py:class:`rst.geometry.PolygonalPatch3D`
Geometric properties of the tracked subject identified by
:py:attr:`info ` in three-dimensional space.
.. container:: message-rst-tracking-trackedpolygonalpatch3d-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPolygonalPatch3D.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackedPolygonalPatch3D.proto
:lines: 15-29
:language: protobuf
:emphasize-lines: 7-7,13-13
.. _message-rst-tracking-trackinginfo:
Message TrackingInfo
--------------------
.. container:: message-rst-tracking-trackinginfo-multi
.. container:: message-rst-tracking-trackinginfo-documentation
.. py:class:: rst.tracking.TrackingInfo
Identifier for tracked objects.
.. codeauthor:: Johannes Wienke
@create_collection
.. py:attribute:: id
:type: :py:class:`UINT32`
A (locally) unique id for the track.
Repeated values can occur due to component restarts or integer
overflows.
.. py:attribute:: persistent_id
:type: :py:class:`OCTET-VECTOR`
**Constraint**: ``len(value) = 16``
A unique id for the track.
Except in case of hash collisions, two different tracks should
not be assigned the same id, even across component restarts.
For this encoding, the encoded UUID is 16 bytes long.
.. container:: message-rst-tracking-trackinginfo-source
:download:`Download this file /home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackingInfo.proto>`
.. literalinclude:: //home/jenkins/workspace/rst-manual-trunk/upstream/RST-0.19.0-Linux/share/rst0.19/proto/stable/rst/tracking/TrackingInfo.proto
:lines: 13-34
:language: protobuf
:emphasize-lines: 9-9,20-20